O mysqladmin é uma ferramenta que vem junto com a instalação do servidor MySQL e é usada por administradores de bancos de dados para realizar algumas operações básicas, tais como, configurar a conta do administrador (root), mudar sua senha, monitorar processos, lidar com privilégios, verificar as condições do servidor, criar rapidamente novos bancos de dados etc — tudo na linha de comando.
Aqui vamos ver alguns dos comandos mysqladmin
e situações em que são úteis, através de exemplos.
LEIA MAIS
Como atribuir uma senha ao administrador MySQL – (MySQL root)
mysqladmin -u root password minhanovasenha
Como alterar a senha, já atribuída, do administrador
Um administrador responsável sabe que senhas precisam ser alteradas periodicamente. O mysqladmin, permite fazer isto rapidamente, diretamente no terminal. No exemplo que segue, tenha em mente que senhaantiga e senhanova são o que seus nomes dizem e você deve usar os seus próprios valores. Use as aspas, onde tiver que usar:
mysqladmin -u root -psenhaantiga password 'senhanova'
Como verificar se o servidor está em execução
A ideia é determinar se o servidor está “vivo”. A frase «mysqld is alive» responde a esta questão. Use o seguinte comando:
mysqladmin -u root -p ping
Como determinar o status do seu servidor MySQL
Vocẽ já sabe que ele “está vivo”. Agora, deseja obter mais informações sobre como ele está funcionando, entre as quais, o tempo em que ele está ‘no ar’, a quantidade de tabelas abertas por usuários, o tempo de resposta médio das queries etc.
mysqladmin -u root -pminhasenha status
Informação | Descrição |
---|---|
Uptime | Tempo (em segundos) em que o servidor está funcionando, desde a última vez em que foi carregado. |
Threads | O número total de clientes conectados ao servidor. |
Questions | O número total de requisições a que o servidor atendeu desde que foi carregado. |
Slow queries | Total de queries cujo tempo de execução ultrapassou o valor definido pela variável long_query_time (veja o arquivo de configuração). |
Opens | Número total de tabelas abertas pelo servidor. |
Flush tables | A quantidade de vezes em que tabela foi atualizada. |
Open tables | O número total de tabelas abertas no momento. |
Como verificar o status de todas as variáveis e valores do servidor MySQL
O comando,
mysqladmin -u root -p extended-status
dará um resultado parecido com este:
Como ver todas as variáveis e valores do servidor MySQL
mysqladmin -u root -p variables
Como saber a versão instalada do MySQL
O comando, a seguir, mostra aversão do seu servidor MySQL, entre outros detalhes:
mysqladmin -u root -p version
O resultado vai ser parecido com este:
Fique atento para a linha Server version. No caso, aqui, trata-se da versão 5.5.32-0ubuntu0.13.04.1.
Como ver todos os processos em execução no servidor MySQL
Este comando mostrará uma (possivelmente) longa relação de processos em execução no seu sistema.
mysqladmin -u root -p processlist
Como criar um banco de dados no servidor MySQL
Esta tarefa é relativamente simples e, com o mysqladmin
, pode ser realizada com uma única linha de comando. Ou seja, você não precisa “entrar” no MySQL para criar um banco de dados.
No exemplo abaixo, vamos criar um banco de dados chamado o_condado_db
(eu sei, estou exagerando na leitura de Tolkien); depois de criado o banco, vamos entrar no MySQL e vamos pedir para mostrar os bancos de dados existentes. Acompanhe:
mysqladmin -u root -p create o_condado_db mysql -u root -p show databases
O resultado do comando show databases
, executado dentro do cliente MySQL, deve ser parecido com o que segue:
Para sair do MySQL, rode os comandos exit
ou quit
.
Como excluir um banco de dados
Vamos aprender a usar o drop
para remover um banco de dados já criado:
mysqladmin -u root -p drop o_condado_db
O sistema pedirá para que a ação seja confirmada, antes de executar a remoção.
Como recarregar e atualizar os privilégios MySQL
Aqui temos basicamente 2 comandos: reload
e refresh
. O primeiro pede ao servidor que recarregue as tabelas dos privilégios; o segundo atualiza todas as tabelas e reabre os arquivos de log. Veja como fazer:
mysqladmin -u root -psuasenha reload mysqladmin -u root -psuasenha refresh
Como iniciar e desligar o servidor MySQL de maneira segura
Normalmente, o servidor MySQL já “sobe” junto com o sistema. Ou seja, não precisa ser iniciado. Mas, no caso de você precisar, use o seguinte comando para dar início à sua execução:
/etc/init.d/mysql start
Para desligar:
/etc/init.d/mysql stop
Tenha em mente que há variações na maneira de executar este comando entre as distros. Em algumas, o comando mysql
vai estar em /etc/rc.d/init.d/
Enfim, você pode desligar o servidor MySQL da seguinte forma também:
mysqladmin -u root -p shutdown
Como terminar um processo que esteja dormindo/hibernando (sleeping) no cliente MySQL Client
Você vai precisar saber o ID do processo a ser terminado, para fazer isto. Portanto, vai precisar executar um comando que liste os processos em execução no seu servidor. De posse do ID, basta informá-lo ao comando de interrupção de processos. Veja como:
mysqladmin -u root -p processlist
O MySQL vai te devolver uma lista. Localize a ID do processo que você deseja terminar, na primeira coluna. Para interrompê-lo, use o seguinte comando (substituindo a variável num_processo pelo número do processo que você deseja terminar):
mysqladmin -u root kill num_processo
Feito isto, peça novamente a lista de processos para ver se tudo deu certo.
É possível apagar vários processo com um só comando. Informe todas as IDs de processos que você deseja terminar, separadas por vírgulas:
mysqladmin -u root kill num_processo1, num_processo2, num_processo3
Fácil, né?
Como organizar, fazer a faxina, com o mysqladmin e flush
A instrução flush
tem uma série de variantes que limpam, recarregam, atualizam os caches internos e as tabelas. Veja quais são e o que fazem:
Comando | Descrição |
---|---|
flush-hosts | Limpa todas as informações relativas ao host do host cache. |
flush-tables | Atualiza todas as tabelas. |
flush-threads | Atualiza o cache das threads. |
flush-logs | Atualiza todas as informações nos logs. |
flush-privileges | Recarrega as tabelas de privilégios. |
flush-status | Limpa as variáveis de status do sistema. |
Como usar:
mysqladmin -u root -p flush-hosts mysqladmin -u root -p flush-tables mysqladmin -u root -p flush-threads mysqladmin -u root -p flush-logs mysqladmin -u root -p flush-privileges mysqladmin -u root -p flush-status
Como executar múltiplos comandos em uma só linha mysqladmin
Sim. Você pode executar várias tarefas com apenas uma linha de comando mysqladmin
. Veja como criar 3 bancos de dados (databases) em uma tacada só:
mysqladmin -u root -p create primeiro create segundo create terceiro
Dê a sua senha e entre no cliente MySQL, para ver o trabalho feito:
mysql -u root -p
Dentro do MySQL, liste as tabelas:
show databases
Agora, vamos excluir os bancos de dados com o mysqladmin
. Portanto digite exit;
, para sair do MySQL.
Da linha de comando, do shell, exclua os bancos com drop
:
mysqladmin -u root -p drop primeiro drop segundo drop terceiro
Como se conectar a um servidor remoto
Vamos usar o seu próprio servidor MySQL, aqui, para exemplificar. Muita gente se conecta a um servidor remoto MySQL via SSH.
Com o mysqladmin, você pode se conectar remotamente e executar um comando (ou vários) e voltar pro seu terminal:
mysqladmin -h 127.0.0.1 -u root -p version
Como obter ajuda para o mysqladmin
Enfim, vamos ver como obter ajuda para usar o mysqladmin
. Use o manual do sistema:
man mysqladmin
ou a ajuda do próprio comando:
mysqladmin -?
Divirta-se!
LEIA MAIS:
One reply on “MySQL – 17 exemplos práticos de aplicação do comando mysqladmin”
Sensacional este tutorial, dicas excelentes para quem esta iniciando em Mysql e de forma bem objetiva.
Obrigado por compartilhar estas informações….