20 MySQL (Mysqladmin) Kommandoen fir Datebankverwaltung am Linux
mysqladmin ass e Kommandozeilen Utility deen mat MySQL Server kënnt an et gëtt vun Datebank Administrateuren benotzt fir e puer grondleeënd MySQL Aufgaben einfach auszeféieren, sou wéi Root Passwuert astellen, Root Passwuert änneren, MySQL Prozesser iwwerwaachen, Privilegien nei lueden, Serverstatus kontrolléieren etc.
An dësem Artikel hu mir e puer ganz nëtzlech 'mysqladmin' Kommandoen zesummegesat, déi vu System-/Datebankadministratoren an hirer alldeeglecher Aarbecht benotzt ginn. Dir musst MySQL Server op Ärem System installéiert hunn fir dës Aufgaben auszeféieren.
Wann Dir de MySQL Server net installéiert hutt oder Dir benotzt méi al Versioun vum MySQL Server, da empfeelen mir Iech all Är Versioun z'installéieren oder ze aktualiséieren andeems Dir eisen Artikel hei ënnen befollegt.
- Installatioun vum MySQL 5.5.28 Server op RHEL/CentOS/Fedora
1. Wéi setzen ech MySQL Root Passwuert?
Wann Dir frësch Installatioun vum MySQL Server hutt, da brauch et kee Passwuert fir et als Root Benotzer ze verbannen. Fir MySQL Passwuert fir Root Benotzer ze setzen, benotzt de folgende Kommando.
# mysqladmin -u root password YOURNEWPASSWORD
2. Wéi änneren ech MySQL Root Passwuert?
Wann Dir wëllt MySQL Root Passwuert änneren oder aktualiséieren, da musst Dir de folgende Kommando tippen. Zum Beispill, sot Äert aalt Passwuert ass 123456 an Dir wëllt et mam neie Passwuert änneren, sot xyz123.
mysqladmin -u root -p123456 password 'xyz123'
3. Wéi kontrolléieren MySQL Server leeft?
Fir erauszefannen ob MySQL Server op a leeft, benotzt de folgende Kommando.
# mysqladmin -u root -p ping Enter password: mysqld is alive
4. Wéi kontrolléiert ech wéi eng MySQL Versioun ech lafen?
De folgende Kommando weist d'MySQL Versioun zesumme mam aktuellen lafende Status.
# 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. Wéi fannt Dir den aktuelle Status vum MySQL Server?
Fir den aktuelle Status vum MySQL Server erauszefannen, benotzt de folgende Kommando. De mysqladmin Kommando weist de Status vun der Uptime mat Lafen Threads an Ufroen.
# 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. Wéi kontrolléiert de Status vun all MySQL Server Variablen a Wäerter?
Fir all de lafende Status vu MySQL Server Variablen a Wäerter ze kontrolléieren, gitt de folgende Kommando. D'Ausgab wier ähnlech wéi hei drënner.
# 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. Wéi all MySQL Server Variablen a Wäerter ze gesinn?
Fir all déi lafend Variabelen a Wäerter vum MySQL Server ze gesinn, benotzt de Kommando wéi follegt.
# 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. Wéi all Lafen Prozess vun MySQL Server ze kontrolléieren?
De folgende Kommando weist all de lafende Prozess vu MySQL Datebank Ufroen.
# 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. Wéi eng Datebank am MySQL Server erstellen?
Fir eng nei Datebank am MySQL Server ze kreéieren, benotzt de Kommando wéi hei ënnendrënner.
# 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. Wéi falen ech eng Datebank am MySQL Server?
Fir eng Datebank am MySQL Server ze falen, benotzt de folgende Kommando. Dir wäert gefrot ginn ze bestätegen Press '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. Wéi nei lueden/erfrëschen MySQL Privilegien?
De Reload Kommando seet dem Server fir d'Bewëllegungstabellen nei ze lueden. De Refresh Kommando spült all Dëscher a mécht d'Logdateien nei op.
# mysqladmin -u root -p reload; # mysqladmin -u root -p refresh
12. Wéi de MySQL Server Sécher auszeschalten?
Fir de MySQL Server sécher auszeschalten, gitt de folgende Kommando.
mysqladmin -u root -p shutdown Enter password:
Dir kënnt och déi folgend Kommandoen benotzen fir MySQL Server ze starten/ze stoppen.
# /etc/init.d/mysqld stop # /etc/init.d/mysqld start
13. Puer nëtzlech MySQL Flush Kommandoen
Folgend sinn e puer nëtzlech Spullbefehle mat hirer Beschreiwung.
- flush-hosts: Spull all Hostinformatioun vum Host-Cache.
- Flush-Tables: Spull all Dëscher.
- Flush-Threads: Spull all Threads Cache.
- Flush-Logbicher: Spull all Informatiounsprotokoller.
- Flush-Privilegien: Lued d'Grondtabellen nei (selwecht wéi d'Reload).
- flush-status: Statusvariablen läschen.
# 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. Wéi Killing MySQL Client Prozess ëmzebréngen?
Benotzt de folgende Kommando fir de schlofen MySQL Client Prozess z'identifizéieren.
# 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 | +----+------+-----------+----+---------+------+-------+------------------+
Elo lafen de folgende Kommando mat Kill a Prozess ID wéi hei ënnendrënner.
# mysqladmin -u root -p kill 5 Enter password: +----+------+-----------+----+---------+------+-------+------------------+ | Id | User | Host | db | Command | Time | State | Info | +----+------+-----------+----+---------+------+-------+------------------+ | 12 | root | localhost | | Query | 0 | | show processlist | +----+------+-----------+----+---------+------+-------+------------------+
Wann Dir gären e puer Prozesser ëmbréngen, da passéiert d'Prozess ID's mat Komma getrennt wéi hei ënnendrënner.
# mysqladmin -u root -p kill 5,10
15. Wéi lafe verschidde mysqladmin Kommandoen zesummen?
Wann Dir e puer 'mysqladmin'Kommandoen zesummen ausféiere wëllt, da wier de Kommando esou.
# 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. Wéi Connect Remote mysql Server
Fir Remote MySQL Server ze verbannen, benotzt den -h (Host) mat IP Adress vun der Remote Maschinn.
# mysqladmin -h 172.16.25.126 -u root -p
17. Wéi Dir Kommando op Remote MySQL Server ausféiert
Loosst eis soen datt Dir de Status vum Remote MySQL Server wëllt gesinn, da wier de Kommando.
# mysqladmin -h 172.16.25.126 -u root -p status
18. Wéi starten/stoppen MySQL Replikatioun op engem Sklave Server?
Fir MySQL Replikatioun op Salve Server ze starten/stoppen, benotzt déi folgend Kommandoen.
# mysqladmin -u root -p start-slave
# mysqladmin -u root -p stop-slave
19. Wéi Buttek MySQL Server Debug Informatiounen zu Logbicher?
Et seet dem Server fir Debug-Informatioun iwwer Spären am Gebrauch ze schreiwen, benotzt Erënnerung an Ufroverbrauch op d'MySQL Logdatei inklusiv Informatioun iwwer Eventplaner.
# mysqladmin -u root -p debug Enter password:
20. Wéi gesinn ech mysqladmin Optiounen a Gebrauch
Fir méi Optiounen a Gebrauch vum myslqadmin Kommando erauszefannen, benotzt den Hëllefskommando wéi hei ënnendrënner. Et wäert eng Lëscht vun verfügbaren Optiounen weisen.
# mysqladmin --help
Mir hunn eist Bescht probéiert fir bal all 'mysqladmin'Befehle mat hiren Beispiller an dësem Artikel opzehuelen, Wa mir nach ëmmer eppes verpasst hunn, loosst eis w.e.g. iwwer Kommentaren wëssen a vergiesst net mat Äre Frënn ze deelen.