Um guia prático para mysql_config_editor para gerenciamento de senhas

Resumo : neste tutorial, você aprenderá como usar o mysql_config_editorutilitário para gerenciar e armazenar credenciais MySQL com segurança.

Introdução ao utilitário mysql_config_editor

Sempre que quiser se conectar ao servidor MySQL usando o mysqlcliente, você precisará fornecer a senha.

Por exemplo, o comando a seguir usa o mysqlcliente para fazer login no servidor MySQL usando a rootconta com uma senha:

mysql -u root -pLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Ele solicitará a senha.

Para evitar inserir a senha toda vez que você se conectar ao servidor MySQL, você pode usar o mysql_config_editorprograma utilitário.

O mysql_config_editorprograma utilitário criptografa e armazena credenciais do MySQL em um arquivo nomeado .mylogin.cnfem um diretório, dependendo do sistema operacional:

Plataforma Localização de arquivo
janelas C:\Users\<username>\AppData\Roaming\MySQL\.mylogin.cnf
macOS e Linux ~/.mylogin.cnf

Cada conjunto de credenciais é chamado de caminho de login , que inclui informações como nome de usuário, senha, nome do host e porta para conexão com um servidor MySQL.

O mysqlcliente usa automaticamente as informações armazenadas no arquivo . mylogin.cnfarquivo para facilitar logins.

Para especificar qual caminho de login usar, você pode usar o --login-pathparâmetro do mysqlcliente. Se você não fornecer nenhum caminho de login, o cliente MySQL usará o clientcaminho de login por padrão.

Definir credenciais criando um novo caminho de login

Para criar um novo caminho de login, use a seguinte sintaxe:

mysql_config_editor set [options]Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Inclui options:

  • --login-path=: o rótulo das credenciais.
  • --user=: o nome de usuário da conta.
  • --password: sinalizador para solicitar uma senha com segurança.
  • --host=: o nome do host ou endereço IP do servidor MySQL.
  • --port=: O número da porta onde o servidor MySQL está escutando.
  • --socket=: o caminho para o arquivo de soquete local se estiver conectado a um servidor local por meio de soquetes Unix.

Por exemplo, o comando a seguir cria um caminho de login para a conta root no servidor MySQL local:

mysql_config_editor set --user=root --passwordLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Ele solicitará que você insira a senha do usuário root. Depois de fornecer a senha, o comando criará o .mylogin.cnfarquivo.

Observe que para invocar o mysql_config_editorprograma, você digita-o no prompt de comando no Windows ou no Terminal no macOS e Linux.

Como não especificamos o --login-path, o comando criará um caminho de login do cliente.

Para fazer login no servidor MySQL local usando o mysqlcliente, você precisa inserir mysqlapenas o comando sem inserir o -u root -pe a senha:

mysqlLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

E você estará logado.

O exemplo a seguir salva as informações de conexão de um usuário remoto nomeado bobem um servidor MySQL na dev.tutorials.acervolima.comporta 8888:

mysql_config_editor set --login-path=testing --user=bob --password --host=dev.tutorials.acervolima.com --port=5555Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Ele solicitará que você insira uma senha para a bobconta do usuário.

Exibindo caminhos de login disponíveis

Para mostrar todos os caminhos de login configurados, use o seguinte comando:

mysql_config_editor print --allLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Ele retorna dois caminhos de login que criamos:

[client]
user = "root"
password = *****
[testing]
user = "bob"
password = *****
host = "dev.tutorials.acervolima.com"
port = 5555Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Para mostrar as informações de login padrão, você usa o mysql_config_editorcomando print:

mysql_config_editor printLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Ele retorna o caminho de login do cliente:

[client]
user = "root"
password = *****Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Para mostrar um caminho de login específico, você pode usar o --login-pathparâmetro:

mysql_config_editor print --login-path=<login_path>Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Por exemplo:

[testing]
user = "bob"
password = *****
host = "dev.tutorials.acervolima.com"
port = 5555Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Removendo informações de conexão

O mysql_config_editorprograma utilitário permite remover um parâmetro específico de um caminho de login, um caminho de login e todos os caminhos de login.

1) Removendo um parâmetro específico de um caminho de login

Para remover um parâmetro específico (por exemplo, porta) de um caminho de login, você usa o mysql_config_editorcomando remove:

mysql_config_editor remove --login-path=<loging_path> --portLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Por exemplo, o comando a seguir remove a porta do testinglogin:

mysql_config_editor remove --login-path=testing --portLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Para confirmar a ação de remoção, você pode imprimir o testingcaminho de login:

 mysql_config_editor print --login-path=testingLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Saída:

[testing]
user = "bob"
password = *****
host = "dev.tutorials.acervolima.com"Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

A saída indica que a porta foi removida do caminho de login de teste.

2) Removendo um caminho de login

Para remover informações de conexão associadas a um caminho de login, use o comando remove:

mysql_config_editor remove --login-path=<login_path>Linguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Por exemplo, o comando a seguir remove o teste do caminho de login:

mysql_config_editor remove --login-path=testingLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

3) Removendo todos os caminhos de login

Para remover todos os caminhos de login, você usa o mysql_config_editorcomando reset:

mysql_config_editor resetLinguagem de código:  SQL (linguagem de consulta estruturada)  ( sql )

Resumo

  • Use o mysql_config_editorutilitário para armazenar e gerenciar credenciais MySQL com segurança.
  • Use o mysql_config_editorcomando set para definir um novo caminho de login.
  • Use o mysql_config_editorcomando print para mostrar os caminhos de login.
  • Use a mysql_config_editorremoção para excluir um parâmetro específico de um caminho de login ou de um caminho de login.
  • Use o mysql_config_editorcomando reset para remover todos os caminhos de login.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *