mysqladmin是一個執行管理操作的客戶程序。可以用它來檢查服務器的配置和當前的狀態,創建并刪除數據庫等等。
這樣調用mysqladmin:
shell> mysqladmin [options] command [command-options] [command [command-options]] ...
mysqladmin支持下面的命令:
· create db_name
創建一個名為db_name的新數據庫。
· debug
告訴服務器向錯誤日志寫入調試信息。
· drop db_name
刪除名為db_nam的數據庫和所有表。
· extended-status
顯示服務器狀態變量及其值。
· flush-hosts
刷新主機緩存中的所有信息。
· flush-logs
刷新所有日志。
· flush-privileges
重載授權表(類似reload)。
· flush-status
清除狀態變量。
· flush-tables
刷新所有表。
· flush-threads
刷新線程緩存。
· kill id,id,...
殺掉服務器線程。
· old-password new-password
類似password但使用舊的(pre-4.1)密碼哈希格式保存 密碼。(參見5.7.9節,“MySQL 4.1中的密碼哈希處理”)。
· password new-password
設置一個新密碼。將用mysqladmin連接服務器使用的 賬戶的密碼更改為new-password。
如果new-password包含空格或其它命令解釋符的特殊字符,需要用引號將它引起來。在Windows中,一定要使用雙引號而不要用單引號;單引號不會從 密碼中剝離出來,而是解釋為密碼的一部分。例如:
shell> mysqladmin password "my new password"
· ping
檢查服務器是否仍活動。如果服務器在運行mysqladmin返回狀態0,如果不運行返回1。即使出現錯誤例如Access denied也為0,因為這說明服務器在運行但拒絕了連接,與服務器不在運行不同。
· processlist
顯示活動服務器線程的列表。類似SHOW PROCESSLIST語句的輸出。如果給出了--verbose選項,輸出類似SHOW FULL PROCESSLIST。(參見13.5.4.16節,“SHOW PROCESSLIST語法”)。
· reload
重載授權表。
· refresh
刷新所有表并關閉和打開日志文件。
· shutdown
停止服務器。
· start-slave
開始從服務器上的復制。
· status
顯示短服務器狀態消息。
· stop-slave
停止從服務器上的復制。
· variables
顯示服務器系統變量及其值。
· version
顯示服務器的版本信息。
所有命令可以簡化為任何唯一的前綴。例如:
shell> mysqladmin proc stat
+----+-------+-----------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----+-------+-----------+----+---------+------+-------+------------------+
| 51 | monty | localhost | | Query | 0 | | show processlist |
+----+-------+-----------+----+---------+------+-------+------------------+
Uptime: 1473624 Threads: 1 Questions: 39487
Slow queries: 0 Opens: 541 Flush tables: 1
Open tables: 19 Queries per second avg: 0.0268
mysqladmin status命令的結果顯示下面的值:
· Uptime
MySQL服務器已經運行的秒數。
· Threads
活動線程(客戶)的數目。
· Questions
服務器啟動以來客戶的問題(查詢)數目。
· Slow queries
執行時間超過long_query_time秒的查詢的數量。參見5.11.4節,“慢速查詢日志”。
· Opens
服務器已經打開的數據庫表的數量。
· Flush tables
服務器已經執行的flush ...、refresh和reload命令的數量。
· Open tables
目前打開的表的數量。
· Memory in use
mysqld代碼直接分配的內存數量。只有用--with--debug=full編譯了MySQL該值才顯示。
· Maximum memory used
mysqld代碼直接分配的最大內存數量。只有用--with--debug=full編譯了MySQL該值才顯示。
如果當使用Unix套接字文件連接本地服務器時執行mysqladmin shutdown,mysqladmin將等待直到服務器的進程ID文件被刪除,以確保服務器正確停止。
mysqladmin支持下面的選項:
· ---help,-?
顯示幫助消息并退出。
· --character-sets-dir=path
字符集的安裝目錄。參見5.10.1節,“數據和排序用字符集”。
· --compress,-C
壓縮客戶和服務器之間發送的所有信息(如果二者均支持壓縮)。
· --count=num,-c num
迭代數目。該選項只有結合--sleep (-i)才能工作。
· ---debug[=debug_options],-# [debug_options]
寫調試日志。debug_options字符串通常為'd:t:o,file_name'。 默認為'd:t:o,/tmp/mysqladmin.trace'。
· --default-character-set=charset
使用charsetas作為默認字符集。參見5.10.1節,“數據和排序用字符集”。
· --force,-f
不再為drop database命令進行確認。對于多個命令,即使出現錯誤也繼續。
· --host=host_name,-h host_name
連接給定主機上的MySQL服務器。
· --password[=password],-p[password]
連接服務器使用的密碼。如果使用短選項形式(-p),該選項和 密碼之間不能有空格。如果你在命令行中在--password或-p選項后面省略 密碼值,將提示你輸入密碼。
· --port=port_num,-P port_num
用于連接的TCP/IP端口號。
· --protocol={TCP | SOCKET | PIPE | MEMORY}
使用的連接協議。
· --relative,-r
當帶-I使用時顯示當前和前面值的差別。目前,該選項只用于extended-status命令。
· --silent,-s
如果不能建立與服務器的連接則以沉默方式退出。
· --sleep=delay,-i delay
每睡眠delay秒后執行一次命令。
· --socket=path,-S path
用于連接的套接字文件。
· --user=user_name,-u user_name
當連接服務器時使用的MySQL用戶名。
· --verbose,-v
冗長模式。打印出程序操作的詳細信息。
· --version,-V
顯示版本信息并退出。
· --vertical,-E
垂直打印輸出。類似于--relative,但垂直打印輸出。
· --wait[=count],-w[count]
如果連接不能建立,等待并重試而不是放棄。如果給出一個選項值,則指示重試的次數。默認是一次。
也可以使用--var_name=value選項設置下面的變量:
· connect_timeout
連接超時之前的最大秒數。默認值為43200(12小時)。
· shutdown_timeout
等候關閉的最大秒數。默認值為3600(1小時)。
也可以使用--set-variable=var_name=value或-O var_name=value語法來設置變量。然而,現在不贊成該語法,并且不再使用。