20 MySQL (Mysqladmin) komandas datu bāzes administrēšanai Linux


mysqladmin ir komandrindas lietderība, kas nāk ar MySQL serveri, un datu bāzes administratori to izmanto, lai viegli veiktu dažus pamata MySQL uzdevumus, piemēram, root paroles iestatīšanu, root paroles maiņu, mysql procesu uzraudzību, privilēģiju pārlādēšanu, servera statusa pārbaudi utt.

Šajā rakstā mēs esam apkopojuši dažas ļoti noderīgas komandas “mysqladmin”, kuras sistēmas/datu bāzes administratori izmanto ikdienas darbā. Lai veiktu šos uzdevumus, sistēmā jābūt instalētam MySQL serverim.

Ja jums nav instalēts MySQL serveris vai jūs izmantojat vecāku MySQL servera versiju, iesakām jums visiem instalēt vai atjaunināt savu versiju, ievērojot mūsu zemāk esošo rakstu.

  1. MySQL 5.5.28 servera instalēšana RHEL/CentOS/Fedora vietnē

1. Kā iestatīt MySQL Root paroli?

Ja jums ir jauna MySQL servera instalēšana, tam nav nepieciešama parole, lai to savienotu kā root lietotāju. Lai root lietotājam iestatītu MySQL paroli, izmantojiet šo komandu.

# mysqladmin -u root password YOURNEWPASSWORD

2. Kā nomainīt MySQL saknes paroli?

Ja vēlaties mainīt vai atjaunināt MySQL saknes paroli, jums jāievada šāda komanda. Piemēram, sakiet, ka jūsu vecā parole ir 123456, un vēlaties to nomainīt ar jaunu paroli, sakot xyz123.

mysqladmin -u root -p123456 password 'xyz123'

3. Kā pārbaudīt, vai MySQL Server darbojas?

Lai uzzinātu, vai MySQL serveris darbojas un darbojas, izmantojiet šo komandu.

# mysqladmin -u root -p ping

Enter password:
mysqld is alive

4. Kā pārbaudīt, kuru MySQL versiju es izmantoju?

Šī komanda parāda MySQL versiju kopā ar pašreizējo darbības statusu.

# mysqladmin -u root -p version

Enter password:
mysqladmin  Ver 8.42 Distrib 5.5.28, for Linux on i686
Copyright (c) 2000, 2012, 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.28
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/lib/mysql/mysql.sock
Uptime:                 7 days 14 min 45 sec

Threads: 2  Questions: 36002  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.059

5. Kā uzzināt MySQL servera pašreizējo statusu?

Lai uzzinātu MySQL servera pašreizējo statusu, izmantojiet šo komandu. Komanda mysqladmin parāda darbības laika statusu, darbojoties pavedieniem un vaicājumiem.

# mysqladmin -u root -ptmppassword status

Enter password:
Uptime: 606704  Threads: 2  Questions: 36003  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.059

6. Kā pārbaudīt visu MySQL servera mainīgo statusu un vērtību?

Lai pārbaudītu visu MySQL servera mainīgo un vērtību darbības statusu, ierakstiet šādu komandu. Rezultāts būtu līdzīgs zemāk redzamajam.

# mysqladmin -u root -p extended-status

Enter password:
+------------------------------------------+-------------+
| Variable_name                            | Value       |
+------------------------------------------+-------------+
| Aborted_clients                          | 3           |
| Aborted_connects                         | 3           |
| Binlog_cache_disk_use                    | 0           |
| Binlog_cache_use                         | 0           |
| Binlog_stmt_cache_disk_use               | 0           |
| Binlog_stmt_cache_use                    | 0           |
| Bytes_received                           | 6400357     |
| Bytes_sent                               | 2610105     |
| Com_admin_commands                       | 3           |
| Com_assign_to_keycache                   | 0           |
| Com_alter_db                             | 0           |
| Com_alter_db_upgrade                     | 0           |
| Com_alter_event                          | 0           |
| Com_alter_function                       | 0           |
| Com_alter_procedure                      | 0           |
| Com_alter_server                         | 0           |
| Com_alter_table                          | 0           |
| Com_alter_tablespace                     | 0           |
+------------------------------------------+-------------+

7. Kā apskatīt visus MySQL servera mainīgos un vērtības?

Lai redzētu visus MySQL servera darbojamos mainīgos un vērtības, izmantojiet komandu šādi.

# mysqladmin  -u root -p variables

Enter password:
+---------------------------------------------------+----------------------------------------------+
| Variable_name                                     | Value                                        |
+---------------------------------------------------+----------------------------------------------+
| auto_increment_increment                          | 1                                            |
| auto_increment_offset                             | 1                                            |
| autocommit                                        | ON                                           |
| automatic_sp_privileges                           | ON                                           |
| back_log                                          | 50                                           |
| basedir                                           | /usr                                         |
| big_tables                                        | OFF                                          |
| binlog_cache_size                                 | 32768                                        |
| binlog_direct_non_transactional_updates           | OFF                                          |
| binlog_format                                     | STATEMENT                                    |
| binlog_stmt_cache_size                            | 32768                                        |
| bulk_insert_buffer_size                           | 8388608                                      |
| character_set_client                              | latin1                                       |
| character_set_connection                          | latin1                                       |
| character_set_database                            | latin1                                       |
| character_set_filesystem                          | binary                                       |
| character_set_results                             | latin1                                       |
| character_set_server                              | latin1                                       |
| character_set_system                              | utf8                                         |
| character_sets_dir                                | /usr/share/mysql/charsets/                   |
| collation_connection                              | latin1_swedish_ci                            |
+---------------------------------------------------+----------------------------------------------+

8. Kā pārbaudīt visu notiekošo MySQL servera procesu?

Šī komanda parādīs visu MySQL datu bāzes vaicājumu darbību.

# mysqladmin -u root -p processlist

Enter password:
+-------+---------+-----------------+---------+---------+------+-------+------------------+
| Id    | User    | Host            | db      | Command | Time | State | Info             |
+-------+---------+-----------------+---------+---------+------+-------+------------------+
| 18001 | rsyslog | localhost:38307 | rsyslog | Sleep   | 5590 |       |                  |
| 18020 | root    | localhost       |         | Query   | 0    |       | show processlist |
+-------+---------+-----------------+---------+---------+------+-------+------------------+

9. Kā izveidot datu bāzi MySQL serverī?

Lai izveidotu jaunu datu bāzi MySQL serverī, izmantojiet komandu, kā parādīts zemāk.

# mysqladmin -u root -p create databasename

Enter password:
# mysql -u root -p

Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 18027
Server version: 5.5.28 MySQL Community Server (GPL) by Remi

Copyright (c) 2000, 2012, 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.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| databasename       |
| mysql              |
| test               |
+--------------------+
8 rows in set (0.01 sec)

mysql>

10. Kā nomest datu bāzi MySQL serverī?

Lai nomestu datu bāzi MySQL serverī, izmantojiet šo komandu. Jums tiks lūgts apstiprināt, nospiediet ‘y’.

# mysqladmin -u root -p drop databasename

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 'databasename' database [y/N] y
Database "databasename" dropped

11. Kā pārlādēt/atsvaidzināt MySQL privilēģijas?

Komanda pārlādēt liek serverim atkārtoti ielādēt dotāciju tabulas. Atsvaidzināšanas komanda izdzēš visas tabulas un no jauna atver žurnāla failus.

# mysqladmin -u root -p reload;
# mysqladmin -u root -p refresh

12. Kā droši izslēgt MySQL serveri?

Lai droši izslēgtu MySQL serveri, ierakstiet šādu komandu.

mysqladmin -u root -p shutdown

Enter password:

Lai palaistu/apturētu MySQL serveri, varat izmantot arī šādas komandas.

# /etc/init.d/mysqld stop
# /etc/init.d/mysqld start

13. Dažas noderīgas MySQL Flush komandas

Tālāk ir sniegtas dažas noderīgas skalošanas komandas ar to aprakstu.

  1. flush-hosts: Notīriet visu resursdatora informāciju no resursdatora kešatmiņas.
  2. galdiņi ar skalošanu: izskalojiet visus galdus.
  3. flush-threads: izskalojiet visu pavedienu kešatmiņu.
  4. skalošanas žurnāli: izskalojiet visus informācijas žurnālus.
  5. flush-privilēģijas: atkārtoti ielādējiet piešķīrumu tabulas (tas pats, kas pārlādēt).
  6. flush-status: notīriet statusa mainīgos.

# 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

14. Kā nogalināt miega MySQL klienta procesu?

Izmantojiet šo komandu, lai identificētu miega MySQL klienta procesu.

# mysqladmin -u root -p processlist

Enter password:
+----+------+-----------+----+---------+------+-------+------------------+
| Id | User | Host      | db | Command | Time | State | Info             |
+----+------+-----------+----+---------+------+-------+------------------+
| 5  | root | localhost |    | Sleep   | 14   |       |					 |
| 8  | root | localhost |    | Query   | 0    |       | show processlist |
+----+------+-----------+----+---------+------+-------+------------------+

Tagad palaidiet šo komandu ar kill un process ID, kā parādīts zemāk.

# mysqladmin -u root -p kill 5

Enter password:
+----+------+-----------+----+---------+------+-------+------------------+
| Id | User | Host      | db | Command | Time | State | Info             |
+----+------+-----------+----+---------+------+-------+------------------+
| 12 | root | localhost |    | Query   | 0    |       | show processlist |
+----+------+-----------+----+---------+------+-------+------------------+

Ja vēlaties nogalināt vairākus procesus, nododiet procesa ID, atdalot tos ar komatu, kā parādīts zemāk.

# mysqladmin -u root -p kill 5,10

15. Kā kopā darbināt vairākas mysqladmin komandas?

Ja vēlaties kopā izpildīt vairākas ‘mysqladmin’ komandas, komanda būtu šāda.

# mysqladmin  -u root -p processlist status version

Enter password:
+----+------+-----------+----+---------+------+-------+------------------+
| Id | User | Host      | db | Command | Time | State | Info             |
+----+------+-----------+----+---------+------+-------+------------------+
| 8  | root | localhost |    | Query   | 0    |       | show processlist |
+----+------+-----------+----+---------+------+-------+------------------+
Uptime: 3801  Threads: 1  Questions: 15  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.003
mysqladmin  Ver 8.42 Distrib 5.5.28, for Linux on i686
Copyright (c) 2000, 2012, 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.28
Protocol version        10
Connection              Localhost via UNIX socket
UNIX socket             /var/lib/mysql/mysql.sock
Uptime:                 1 hour 3 min 21 sec

Threads: 1  Questions: 15  Slow queries: 0  Opens: 15  Flush tables: 1  Open tables: 8  Queries per second avg: 0.003

16. Kā savienot attālo mysql serveri

Lai izveidotu savienojumu ar attālo MySQL serveri, izmantojiet -h (resursdators) ar attālās mašīnas IP adresi.

# mysqladmin  -h 172.16.25.126 -u root -p

17. Kā izpildīt komandu attālajā MySQL serverī

Pieņemsim, ka vēlaties redzēt attālā MySQL servera statusu, tad komanda būtu.

# mysqladmin  -h 172.16.25.126 -u root -p status

18. Kā sākt/apturēt MySQL replikāciju vergu serverī?

Lai sāktu/apturētu MySQL replikāciju salve serverī, izmantojiet šādas komandas.

# mysqladmin  -u root -p start-slave
# mysqladmin  -u root -p stop-slave

19. Kā glabāt MySQL servera atkļūdošanas informāciju žurnālos?

Tas liek serverim rakstīt atkļūdošanas informāciju par izmantotajām slēdzenēm, izmantoto atmiņu un vaicājumu lietošanu MySQL žurnāla failā, ieskaitot informāciju par notikumu plānotāju.

# mysqladmin  -u root -p debug

Enter password:

20. Kā apskatīt mysqladmin iespējas un lietojumu

Lai uzzinātu vairāk par myslqadmin komandas iespējām un lietošanu, izmantojiet palīdzības komandu, kā parādīts zemāk. Tajā tiks parādīts pieejamo opciju saraksts.

# mysqladmin --help

Mēs esam darījuši visu iespējamo, lai šajā rakstā iekļautu gandrīz visas “mysqladmin” komandas ar saviem piemēriem. Ja tomēr kaut ko esam palaiduši garām, lūdzu, dariet mums to zināmu, izmantojot komentārus, un neaizmirstiet padalīties ar draugiem.