概述javascript
本篇文章雖大部份內容爲參考原文做者的相關內容,但對原文對於文章的邏輯與排版上進行了大範圍修改,方便閱讀與理解。原文連接在底部java
庫名mysql |
表數量sql |
視圖數量數據庫 |
---|---|---|
information_schema安全 |
61服務器 |
0markdown |
mysqlapp |
32函數 |
0 |
performance_schema |
87 |
0 |
sys |
1 |
100 |
Information_schema數據庫是MySQL自帶的,它提供了訪問數據庫元數據的方式。
元數據是關於數據的數據,如數據庫名或表名,列的數據類型,或訪問權限等。有些時候用於表述該信息的其餘術語包括「數據詞典」和「系統目錄」。
在MySQL中,把 information_schema 看做是一個數據庫,確切說是信息數據庫。其中保存着關於MySQL服務器所維護的全部其餘數據庫的信息。如數據庫名,數據庫的表,表欄的數據類型與訪問權限等。在INFORMATION_SCHEMA中,有數個只讀表。它們其實是視圖,而不是基本表,所以,你將沒法看到與之相關的任何文件
表名 |
註釋 |
---|---|
SCHEMATA |
提供了當前mysql實例中全部數據庫的信息。是show databases的結果取之此表 |
TABLES |
提供了關於數據庫中的表的信息(包括視圖)。詳細表述了某個表屬於哪一個schema、表類型、表引擎、建立時間等信息。是show tables from schemaname的結果取之此表 |
COLUMNS |
提供了表中的列信息。詳細表述了某張表的全部列以及每一個列的信息。是show columns from schemaname.tablename的結果取之此表 |
STATISTICS |
提供了關於表索引的信息。是show index from schemaname.tablename的結果取之此表 |
USER_PRIVILEGES |
用戶權限表:給出了關於全程權限的信息。該信息源自mysql.user受權表。是非標準表 |
SCHEMA_PRIVILEGES |
方案權限表:給出了關於方案(數據庫)權限的信息。該信息來自mysql.db受權表。是非標準表 |
TABLE_PRIVILEGES |
表權限表:給出了關於表權限的信息。該信息源自mysql.tables_priv受權表。是非標準表 |
COLUMN_PRIVILEGES |
列權限表:給出了關於列權限的信息。該信息源自mysql.columns_priv受權表。是非標準表 |
CHARACTER_SETS |
字符集表:提供了mysql實例可用字符集的信息。是SHOW CHARACTER SET結果集取之此表 |
COLLATIONS |
提供了關於各字符集的對照信息 |
COLLATION_CHARACTER_SET_APPLICABILITY |
指明瞭可用於校對的字符集。這些列等效於SHOW COLLATION的前兩個顯示字段。 |
TABLE_CONSTRAINTS |
描述了存在約束的表。以及表的約束類型 |
KEY_COLUMN_USAGE |
描述了具備約束的鍵列 |
ROUTINES |
提供了關於存儲子程序(存儲程序和函數)的信息。此時,ROUTINES表不包含自定義函數(UDF)。名爲「mysql.proc name」的列指明瞭對應於INFORMATION_SCHEMA.ROUTINES表的mysql.proc表列 |
VIEWS |
給出了關於數據庫中的視圖的信息。須要有show views權限,不然沒法查看視圖信息 |
TRIGGERS |
提供了關於觸發程序的信息。必須有super權限才能查看該表 |
PERFORMANCE_SCHEMA這個功能默認是關閉的。須要設置參數: performance_schema 才能夠啓動該功能,這個參數是靜態參數,只能寫在my.cnf 中 不能動態修改。
表名 |
註釋 |
---|---|
setup_table |
設置表,配置監控選項 |
current_events_table |
記錄當前那些thread 正在發生什麼事情 |
history_table |
發生的各類事件的歷史記錄表 |
summary_table |
對各類事件的統計表 |
setup_consumers\setup_instruments |
描述各類事件, 設置哪些事件可以被收集 |
setup_instruments |
描述這個數據庫下的表名以及是否開啓監控 |
setup_timers |
描述監控選項已經採樣頻率的時間間隔 |
threads |
監控服務器全部鏈接 |
performance_timers |
設置一些監控信息, 指定mysql服務可用的監控週期,CYCLE表示按每秒檢測2603393034次, 目前 performance-schema 只支持’wait’時間的監控,代碼樹上 wait/ 下的函數均可以監控到 |
在mysql數據庫中,有mysql_install_db腳本初始化權限表,存儲權限的表
表名 |
註釋 |
---|---|
user |
用戶列、權限列、安全列、資源控制列 |
db |
用戶列、權限列 |
host |
|
table_priv |
|
columns_priv |
|
proc_priv |
sys_config : 這是在這個系統庫上存在的惟一一個表
CREATE TABLE `sys_config` ( `variable` varchar(128) NOT NULL, `value` varchar(128) DEFAULT NULL, `set_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `set_by` varchar(128) DEFAULT NULL, PRIMARY KEY (`variable`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8
以上值的會話變量爲@sys.
+表中variable字段,如:
@sys.statement_truncate_len
能夠
set @sys.statement_truncate_len = 32
臨時改變值,在會話中會一直使用這個值,若是想要恢復使用表的默認值,只須要將這個會話值設置爲null
set @sys.statement_truncate_len = null;
默認爲OFF ,若是開啓表示容許diagnostics() 存儲過程執行掃描information_schema.tables 表,若是表不少,那麼可能會很耗性能
默認爲OFF,開啓將會從metrics 視圖輸出未加工處理的數據
視圖在沒有加limit限制時,返回的最大行數
經過format_statement()函數返回值的最大長度
這個表非默認選項還有一個@sys.debug參數,能夠手動加入
INSERT INTO sys_config (variable, value) VALUES('debug', 'ON'); UPDATE sys_config SET value = 'OFF' WHERE variable = 'debug'; SET @sys.debug = NULL;
若是加入新行經過insert語句,那麼這個觸發器會把set_by列設置爲當前操做者
若是加入新行經過update語句,那麼這個觸發器會把set_by列設置爲當前操做者
命令 |
註釋 |
---|---|
desc [table_name] |
表信息 |
show columns from [table_name] |
表字段 |
describe [table_name] |
表信息 |
show create table [table_name] |
表建立語句 |
show create database [database_name] |
顯示數據庫信息 |
show table status from [database_name] |
數據庫狀態 |
show tables |
顯示當前數據庫中全部表的名稱 |
show tables from [database_name] |
顯示當前數據庫中全部表的名稱(同上) |
show databases |
顯示mysql中全部數據庫的名稱 |
show processlist |
顯示系統中正在運行的全部進程,也就是當前正在執行的查詢。 |
show table status |
顯示當前使用或者指定的database中的每一個表的信息。信息包括表類型和表的最新更新時間 |
show columns from [table_name] from [database_name] |
顯示錶中列名稱 |
show grants for user_name@localhost |
顯示一個用戶的權限,顯示結果相似於grant 命令 |
show index from [table_name] |
顯示錶的索引 |
show status |
顯示一些系統特定資源的信息,例如,正在運行的線程數量 |
show variables |
顯示系統變量的名稱和值 |
show privileges |
顯示服務器所支持的不一樣權限 |
show create database [database_name] |
顯示create database 語句是否可以建立指定的數據庫 |
show create table [table_name] |
顯示create database 語句是否可以建立指定的數據庫 |
show engies |
顯示安裝之後可用的存儲引擎和默認引擎 |
show innodb status |
顯示innoDB存儲引擎的狀態 |
show logs |
顯示BDB存儲引擎的日誌 |
show warnings |
顯示最後一個執行的語句所產生的錯誤、警告和通知 |
show errors |
只顯示最後一個執行語句所產生的錯誤 |
整理轉載自: https://blog.csdn.net/xlxxcc/article/details/51754524
感謝你看完這篇文章,做者原文的知識點歸納的很全面,可是文章的排版與表達比較凌亂,不適宜新手來查閱,因此我就作了重構文章的一件事。但願能夠幫到你。