MySQL 常用show 語句
1. show tables或show tables from database_name; -- 顯示當前資料庫中所有表的名稱。
2. show databases; -- 顯示mysql中所有資料庫的名稱。
3. show columns from table_name from database_name; 或show columns from database_name.table_name; -- 顯示錶中列名稱。
4. show grants for user_name; -- 顯示一個使用者的許可權,顯示結果類似於grant 命令。
5. show index from table_name; -- 顯示錶的索引。
6. show status; -- 顯示一些系統特定資源的資訊,例如,正在執行的執行緒數量。
7. show variables; -- 顯示系統變數的名稱和值。
8. show processlist; -- 顯示系統中正在執行的所有程序,也就是當前正在執行的查詢。大多數使用者可以檢視他們自己的程序,但是如果他們擁有process許可權,就可以檢視所有人的程序,包括密碼。
9. show table status; -- 顯示當前使用或者指定的database中的每個表的資訊。資訊包括表型別和表的最新更新時間。
10. show privileges; -- 顯示伺服器所支援的不同許可權。
11. show create database database_name; -- 顯示create database 語句是否能夠建立指定的資料庫。
12. show create table table_name; -- 顯示create database 語句是否能夠建立指定的資料庫。
13. show engines; -- 顯示安裝以後可用的儲存引擎和預設引擎。
14. show innodb status; -- 顯示innoDB儲存引擎的狀態。
15. show logs; -- 顯示BDB儲存引擎的日誌。
16. show warnings; -- 顯示最後一個執行的語句所產生的錯誤、警告和通知。
17. show errors; -- 只顯示最後一個執行語句所產生的錯誤。
18. show [storage] engines; --顯示安裝後的可用儲存引擎和預設引擎。
mysql show命令
show databases;
show tables from db_name;
show columns from table_name from db_name;
show index from talbe_name [from db_name];
show status;
show variables;
show [full] processlist;
show table status [from db_name];
show grants for user;
除了status,processlist和grants外,其它的都可以帶有like wild選項,它可以使用SQL的'%'和'_'字元;
show databases like '%t';
將會列出所有資料庫名字末尾為't'字元的資料庫
當然了,在這些sql中,你也可以用db_name.table_name來代替 table_name from db_name這樣寫會更簡便些!
如果一個使用者沒有一個表的任何許可權,表將不在SHOW TABLES或mysqlshow db_name中的輸出中顯示
大家可能還記得describe table_name ,它實現的是與show columns from db_name.table_name一樣的效果
show status將可以用mysqlshow --status 來得到同樣的效果
- 列 含義
- Name 表名
- Type 表的型別 (ISAM,MyISAM或HEAP)
- Row_format 行儲存格式 (固定, 動態, 或壓縮)
- Rows 行數量
- Avg_row_length 平均行長度
- Data_length 資料檔案的長度
- Max_data_length 資料檔案的最大長度
- Index_length 索引檔案的長度
- Data_free 已分配但未使用了位元組數
- Auto_increment 下一個 autoincrement(自動加1)值
- Create_time 表被創造的時間
- Update_time 資料檔案最後更新的時間
- Check_time 最後對錶執行一個檢查的時間
- Create_options 與CREATE TABLE一起使用的額外選項
- Comment 當創造表時,使用的註釋 (或為什麼MySQL不能存取表資訊的一些資訊)。
SHOW FIELDS是SHOW COLUMNS一個同義詞,SHOW KEYS是SHOW INDEX一個同義詞。你也可以用mysqlshow db_name tbl_name或mysqlshow -k db_name tbl_name 列出一張表的列或索引。
SHOW INDEX以非常相似於ODBC的SQLStatistics呼叫的格式返回索引資訊。下面的列被返回:
列 含義
Table 表名
Non_unique 0,如果索引不能包含重複。
Key_name 索引名
Seq_in_index 索引中的列順序號, 從 1 開始。
Column_name 列名。
Collation 列怎樣在索引中被排序。在MySQL中,這可以有值A(升序) 或NULL(不排序)。
Cardinality 索引中唯一值的數量。這可通過執行isamchk -a更改.
Sub_part 如果列只是部分被索引,索引字元的數量。NULL,如果整個鍵被索引。
SHOW STATUS提供伺服器的狀態資訊(象mysqladmin extended-status一樣)。輸出類似於下面的顯示,儘管格式和數字可以有點不同:
+--------------------------+--------+
| Variable_name | Value |
+--------------------------+--------+
| Aborted_clients | 0 |
| Aborted_connects | 0 |
| Connections | 17 |
| Created_tmp_tables | 0 |
| Delayed_insert_threads | 0 |
| Delayed_writes | 0 |
| Delayed_errors | 0 |
| Flush_commands | 2 |
| Handler_delete | 2 |
| Handler_read_first | 0 |
| Handler_read_key | 1 |
| Handler_read_next | 0 |
| Handler_read_rnd | 35 |
| Handler_update | 0 |
| Handler_write | 2 |
| Key_blocks_used | 0 |
| Key_read_requests | 0 |
| Key_reads | 0 |
| Key_write_requests | 0 |
| Key_writes | 0 |
| Max_used_connections | 1 |
| Not_flushed_key_blocks | 0 |
| Not_flushed_delayed_rows | 0 |
| Open_tables | 1 |
| Open_files | 2 |
| Open_streams | 0 |
| Opened_tables | 11 |
| Questions | 14 |
| Slow_queries | 0 |
| Threads_connected | 1 |
| Threads_running | 1 |
| Uptime | 149111 |
+--------------------------+--------+
上面列出的狀態變數有下列含義:
- Aborted_clients 由於客戶沒有正確關閉連線已經死掉,已經放棄的連線數量。
- Aborted_connects 嘗試已經失敗的MySQL伺服器的連線的次數。
- Connections 試圖連線MySQL伺服器的次數。
- Created_tmp_tables 當執行語句時,已經被創造了的隱含臨時表的數量。
- Delayed_insert_threads 正在使用的延遲插入處理器執行緒的數量。
- Delayed_writes 用INSERT DELAYED寫入的行數。
- Delayed_errors 用INSERT DELAYED寫入的發生某些錯誤(可能重複鍵值)的行數。
- Flush_commands 執行FLUSH命令的次數。
- Handler_delete 請求從一張表中刪除行的次數。
- Handler_read_first 請求讀入表中第一行的次數。
- Handler_read_key 請求數字基於鍵讀行。
- Handler_read_next 請求讀入基於一個鍵的一行的次數。
- Handler_read_rnd 請求讀入基於一個固定位置的一行的次數。
- Handler_update 請求更新表中一行的次數。
- Handler_write 請求向表中插入一行的次數。
- Key_blocks_used 用於關鍵字快取的塊的數量。
- Key_read_requests 請求從快取讀入一個鍵值的次數。
- Key_reads 從磁碟物理讀入一個鍵值的次數。
- Key_write_requests 請求將一個關鍵字塊寫入快取次數。
- Key_writes 將一個鍵值塊物理寫入磁碟的次數。
- Max_used_connections 同時使用的連線的最大數目。
- Not_flushed_key_blocks 在鍵快取中已經改變但是還沒被清空到磁碟上的鍵塊。
- Not_flushed_delayed_rows 在INSERT DELAY佇列中等待寫入的行的數量。
- Open_tables 開啟表的數量。
- Open_files 開啟檔案的數量。
- Open_streams 開啟流的數量(主要用於日誌記載)
- Opened_tables 已經開啟的表的數量。
- Questions 發往伺服器的查詢的數量。
- Slow_queries 要花超過long_query_time時間的查詢數量。
- Threads_connected 當前開啟的連線的數量。
- Threads_running 不在睡眠的執行緒數量。
- Uptime 伺服器工作了多少秒。
- 轉載: https://www.cnblogs.com/SQL888/p/5750161.html