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.
- 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.
- flush-hosts: Notīriet visu resursdatora informāciju no resursdatora kešatmiņas.
- galdiņi ar skalošanu: izskalojiet visus galdus.
- flush-threads: izskalojiet visu pavedienu kešatmiņu.
- skalošanas žurnāli: izskalojiet visus informācijas žurnālus.
- flush-privilēģijas: atkārtoti ielādējiet piešķīrumu tabulas (tas pats, kas pārlādēt).
- 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.