10 полезных команд mysqladmin для администрирования баз данных

В этой статье блога мы покажем вам десять полезных команд mysqladmin для администрирования баз данных.

Mysqladmin – это клиент для выполнения административных операций. Мы можем использовать его для проверки конфигурации сервера, создания и удаления баз данных, пользователей, таблиц, строк и многого другого в MySQL. MySQL – это реляционная система управления базами данных, используемая во всем мире, где информация хранится в таблицах. MySQL предлагает множество типов баз данных, таких как int, bigint, float, tinyint, smallint, mediumint и многие другие.

Проверяем запущен ли Mysql:

sudo systemctl status mysql.service
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-10-13 02:50:00 CDT; 8min ago
   Main PID: 239318 (mysqld)
     Status: "Server is operational"
      Tasks: 38 (limit: 4575)
     Memory: 361.4M
        CPU: 4.761s
     CGroup: /system.slice/mysql.service
             └─239318 /usr/sbin/mysqld
Oct 13 02:49:58 host.test.vps systemd[1]: Starting MySQL Community Server...
Oct 13 02:50:00 host.test.vps systemd[1]: Started MySQL Community Server.

Полезные команды mysqladmin

Синтаксис команды mysqladmin следующий:

mysqladmin [options] command [command-arg] [command [command-arg]] ...

Для входа в командную строку MySQL используйте следующую команду:

mysql

При свежей установке MySQL пароль не требуется, поэтому вы получите следующий результат:

root@host:~# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.30-0ubuntu0.22.04.1 (Ubuntu)
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

В следующих разделах мы покажем вам 10 наиболее используемых команд mysqladmin для администрирования баз данных.

1. Установка корневого пароля MySQL

Как мы уже говорили, свежая установка MySQL не требует пароля. Чтобы установить корневой пароль MySQL с помощью команды mysqladmin, выполните следующее:

mysqladmin -u root password MyNewPassword

После выполнения этой команды вы должны получить следующее предупреждение:

root@host:~# mysqladmin -u root password MyNewPassword
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

Это означает, что установка нового пароля MySQL с помощью mysqladmin должна считаться уязвимой, и она может быть просмотрена в истории команд сервера. Поэтому нужно быть осторожным и не сообщать пароль root вашего сервера.

2. Создание базы данных

Чтобы создать пустую базу данных, выполните следующую команду:

mysqladmin -u root -p create testdb

Вас попросят ввести пароль MySQL root, и после его введения база данных будет успешно создана.

root@host:~# mysqladmin -u root -p create testdb
Enter password:
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| testdb             |
+--------------------+

3. Сброс базы данных

Чтобы удалить базу данных с помощью команды mysqladmin, выполните следующее:

mysqladmin -u root -p drop testdb

Вас попросят ввести пароль root

root@host:~# mysqladmin -u root -p drop testdb
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 'testdb' database [y/N] y
Database "testdb" dropped

4. Проверка активных процессов

Чтобы проверить активные потоки, выполните следующую команду:

mysqladmin -u root -p processlist

Вы получите таблицу с выводом, подобным этому:

root@host:~# mysqladmin -u root -p processlist
Enter password:
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+
| Id | User            | Host      | db | Command | Time  | State                  | Info             |
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+
| 5  | event_scheduler | localhost |    | Daemon  | 19834 | Waiting on empty queue |                  |
| 14 | root            | localhost |    | Query   | 0     | init                   | show processlist |
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+

5. Проверка состояния сервера MySQL

Чтобы проверить состояние сервера MySQL, выполните следующую команду:

mysqladmin -u root -p status

Вы должны получить результат, подобный этому:

root@host:~# mysqladmin -u root -p status
Enter password:
Uptime: 19978  Threads: 2  Questions: 18  Slow queries: 0  Opens: 167  Flush tables: 3  Open tables: 86  Queries per second avg: 0.000

6. Проверка переменных состояния MySQL

Чтобы проверить состояние переменных состояния MySQL и их значения, выполните следующую команду:

mysqladmin -u root -p extended-status

Вы получите огромную таблицу с большим количеством информации.

7. Перезагрузка привилегий MySQL

Чтобы перезагрузить привилегии MySQL, выполните следующую команду:

mysqladmin -u root -p reload

8. Подключение удаленного сервера MySQL

Для подключения к удаленному хосту MySQL выполните следующую команду

mysqladmin -h 192.168.0.1 -u root -p

9. Запуск нескольких команд mysqladmin

Чтобы запустить несколько команд mysqladmin, просто введите их одну за другой в одной строке:

mysqladmin -u root -p processlist status reload

Если для каждой команды доступен какой-либо вывод, вы получите его соответственно, как показано ниже:

root@host:~# mysqladmin  -u root -p processlist status reload
Enter password:
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+
| Id | User            | Host      | db | Command | Time  | State                  | Info             |
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+
| 5  | event_scheduler | localhost |    | Daemon  | 20915 | Waiting on empty queue |                  |
| 18 | root            | localhost |    | Query   | 0     | init                   | show processlist |
+----+-----------------+-----------+----+---------+-------+------------------------+------------------+
Uptime: 20916  Threads: 2  Questions: 25  Slow queries: 0  Opens: 170  Flush tables: 3  Open tables: 89  Queries per second avg: 0.001

10. Выключение сервера MySQL

После последней команды mysqladmin сервер MySQL будет благополучно выключен:

mysqladmin -u root -p shutdown

Если вы проверите статус с помощью команды systemcl status mysql, то получите следующее:

root@host:~# systemctl status mysql
○ mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: inactive (dead) since Thu 2022-10-13 08:42:56 CDT; 12s ago
    Process: 239318 ExecStart=/usr/sbin/mysqld (code=exited, status=0/SUCCESS)
   Main PID: 239318 (code=exited, status=0/SUCCESS)
     Status: "Server shutdown complete"
        CPU: 2min 15.480s

Служба MySQL успешно остановлена командой mysqladmin. Вот и все. Мы только что показали вам десять наиболее используемых команд mysqladmin на Ubuntu 22.10, использующей последнюю версию MySQL.

Комментарии (0)