O essencial do comando
mysqladmin, através de 18
exemplos
Elias Praciano
O essencial do mysqladmin, através de 18 exemplos
O mysqladmin é uma ferramenta de linha de comando 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.
Aqui vamos ver alguns dos comandos mysqladmin e situações em que são
úteis, através de exemplos.
1. Como atribuir uma senha ao administrador MySQL
(MySQL root)
# mysqladmin -u root password minhanovasenha
2. Como alterar a senha, já atribuída, do administrador
Um administrador responsável sabe que senhas precisam ser alteradas
periodicamente. No MySQL, a alteração pode ser feita da seguinte forma:
# mysqladmin -u root -psenhaantiga password 'senhanova'
3. Como verificar se o seu servidor está funcionando
A frase « mysqld is alive » quer dizer que o seu servidor está 'vivo', em
funcionamento.
# mysqladmin -u root -p ping
Enter password :
mysqld is alive
4. Como determinar o status do seu servidor MySQL
Com este comando você vai obter uma série de informações sobre o estado
atual do servidor, 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
Uptime: 91381 Threads: 1 Questions: 620 Slow queries: 0
tables: 1 Open tables: 41 Queries per second avg: 0.006
Opens: 433
Flush
A tabela, abaixo, mostra o significado de cada informação disponibilizada :
Elias Praciano
1
O essencial do mysqladmin, através de 18 exemplos
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
5. Como verificar o status de todas as variáveis e valores do
servidor MySQL
# mysqladmin -u root -p extended-status
Enter password :
+------------------------------------------+-------------+
| Variable_name
| Value
|
+------------------------------------------+-------------+
| Aborted_clients
| 0
|
| Aborted_connects
| 5
|
| Binlog_cache_disk_use
| 0
|
| Binlog_cache_use
| 0
|
| Threads_cached
| 0
|
| Threads_connected
| 1
|
| Threads_created
| 1
|
| Threads_running
| 1
|
| Uptime
| 93149
|
| Uptime_since_flush_status
| 93149
|
+------------------------------------------+-------------+
6. Como ver toda as variáveis e valores do servidor MySQL
mysqladmin -u root -p variables
Elias Praciano
2
O essencial do mysqladmin, através de 18 exemplos
7. Como saber a versão instalada do MySQL
O comando, a seguir, mostra a versão do servidor e mais alguns outros detalhes :
# mysqladmin -u root -p version
Enter password:
mysqladmin Ver 8.42 Distrib 5.5.32, for debian-linux-gnu on i686
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Server version
5.5.32-0ubuntu0.13.04.1
Protocol version
10
Connection
Localhost via UNIX socket
UNIX socket
/var/run/mysqld/mysqld.sock
Uptime:
1 day 2 hours 2 min 54 sec
Threads: 1
tables: 41
Questions: 623 Slow queries: 0
Queries per second avg: 0.006
Opens: 433
Flush tables: 1
Open
8. Como ver todos os processos em execução no servidor
MySQL
# mysqladmin -u root -p processlist
9. Como criar um banco de dados no servidor MySQL
Criar bancos de dados é uma tarefa simples e que pode ser feita na linha de
comando de um terminal sem, necessariamente, 'entrar' no MySQL. No
exemplo, abaixo, vamos criar um com o nome 'meubancodedados' :
# mysqladmin -u root -p create meubancodedados
Enter password :
Feito isto, vamos entrar no MySQL e verificar o que foi feito :
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 67
Server version: 5.5.32-0ubuntu0.13.04.1 (Ubuntu)
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
Elias Praciano
3
O essencial do mysqladmin, através de 18 exemplos
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database
|
+--------------------+
| information_schema |
| meubancodedados
|
| mysql
|
| performance_schema |
| phpmyadmin
|
| test
|
+--------------------+
6 rows in set (0.07 sec)
mysql>
10. Como excluir um banco de dados
Criou? Agora exclua... veja como
# mysqladmin -u root -p drop meubancodedados
Enter password:
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the 'meubancodedados' database [y/N] y
Database "databasename" dropped
Note que o sistema irá pedir a confirmação, tão logo você tenha
autenticado – depois disto, ele exclui a tabela, conforme o pedido.
11. Como recarregar e atualizar os privilégios MySQL
Aqui são basicamente 2 comandos: reload e refresh. O primeiro pede ao
servidor que recarregue as tabelas dos privilégios; o segundo comando
'refresca' todas as tabelas e reabre o os arquivos de log. Veja como usar :
# mysqladmin -u root -psuasenha reload;
# mysqladmin -u root -psuasenha refresh
12. Como desligar o servidor MySQL de maneira segura
O comando Linux para iniciar o servidor MySQL – que normalmente já sobe
junto com o sistema – é o seguinte :
Elias Praciano
4
O essencial do mysqladmin, através de 18 exemplos
# /et c/init.d/mysql start
Para desligar :
# /et c/init.d/mysql stop
Note que pode haver variações neste comando, de acordo com a distro que
você estiver usando. Em algumas distros, a localização do comando é
/etc/rc.d/init.d/mysql
Por sorte, é possível desligar o servidor usando apenas os comandos do
próprio servidor. Assim, para pará-lo
# mysqladmin -u root -psuasenha shutdown
13. Como terminar um processo dormindo/hibernando
(sleeping) no MySQL Client
Primeiro, liste os processos (vamos nos lembrar do item 8) :
# mysqladmin -u root -p processlist
+--------+------+-----------+--------+---------+-------+-------+--------------------+
| Id
| User | Host
| db
| Command | Time | State | Info
|
+--------+------+-----------+-------+---------+-------+-------+---------------------+
| 411665 | root | localhost | somedb | Sleep
| 11388 |
| NULL
|
| 412109 | root | localhost | somedb | Query
|
0 | NULL | show full processlist|
+--------+------+-----------+-------+---------+-------+-------+---------------------+
Note a coluna Command mostrando que um dos processos está em Sleep.
Nesta mesma linha, na primeira coluna, você tem a Id 411665 deste processo –
que é tudo que você precisa para executar o comando que segue :
# mysqladmin -u root kill 411665
# mysqladmin -u root -p processlist
+--------+------+-----------+--------+---------+-------+-------+--------------------+
| Id
| User | Host
| db
| Command | Time | State | Info
|
+--------+------+-----------+-------+---------+-------+-------+---------------------+
| 412109 | root | localhost | somedb | Query
|
0 | NULL | show full processlist|
Apagar vários processos em um só comando é fácil. Basta informar todos Ids separados por
vírgulas.
14. Flush – alguns comandos úteis e como usar
A instrução flush tem algumas variantes que, em geral, limpam, recarregam
ou atualizam vários caches internos e tabelas. Veja quais são :
Elias Praciano
5
O essencial do mysqladmin, através de 18 exemplos
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
mysqladmin
mysqladmin
mysqladmin
mysqladmin
mysqladmin
-u
-u
-u
-u
-u
-u
root
root
root
root
root
root
-p
-p
-p
-p
-p
-p
flush-hosts
flush-tables
flush-threads
flush-logs
flush-privileges
flush-status
15. Como rodar múltiplos comandos mysqladmin de uma vez
Sim. Você pode enviar ao servidor, em uma só linha, mais de um comando.
Pode ser usado para criar várias tabelas de uma vez só. Veja como :
# mysqladmin -u root -p create primeiro create segundo create terceiro
Enter password:
# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 60
Server version: 5.5.32-0ubuntu0.13.04.1 (Ubuntu)
mysql> show databases;
+--------------------+
| Database
|
+--------------------+
| information_schema |
| meubancodedados
|
| mysql
|
| performance_schema |
| phpmyadmin
|
Elias Praciano
6
O essencial do mysqladmin, através de 18 exemplos
| primeiro
|
| segundo
|
| terceiro
|
| test
|
+--------------------+
9 rows in set (0.01 sec)
mysql> quit
Agora, para exercitar, limpe a 'bagunça' :
# mysqladmin -u root -p drop primeiro drop segundo drop terceiro
16. Como se conectar a um servidor remoto – vamos usar o
seu próprio servidor como exemplo aqui :
# mysqladmin -h 123.123.12.123 -u root -p
17. Como rodar um comando no servidor remoto MySQL
Por exemplo, para ver a versão do servidor MySQL, use o seguinte
comando :
# mysqladmin -h 231.321.12.3 -u root -p version
18. Como ver as opções do comando mysqladmin e como
usá-las
Para satisfazer suas dúvidas, use o sistema de ajuda que já vem com o
software :
# mysqladmin –help
ou
# man mysqladmin
Divirta-se !
Elias Praciano
7
Download

MySQL - O comando mysqladmin através de 18