mysql中的元資料

2022-08-12 14:00:18 字數 2196 閱讀 6257

一:什麼是元資料?

所謂元資料,就是表示資料的資料,這些資料五花八門,總之,只要不是我們儲存到資料庫裡的資料,大多都可以理解為元資料。描述資料庫的任何資料—作為資料庫內容的對立面—是元資料。因此,列名、資料庫名、使用者名稱、版本名以及從show語句得到的結果中的大部分字串是元資料。還包括information_schema資料庫中的表中的內容,因為定義的那些表儲存關於資料庫物件的資訊。

二:如何來獲取這些元資料呢?

總的來說,有三種思路,第一種,各種show,第二種,各種select,第三種,是mysql的命令列下的命令,不是sql語句。

1:show

[sql]

show databases;  --列出所有資料庫  

show create database db_name;  --檢視資料庫的ddl  

show tables; --列出預設資料庫的所有表  

show tables from db_name;  --列出指定資料庫的所有表  

show table status;  --檢視表的描述性資訊  

show table status from db_name;  

show create table tbl_name;  --檢視表的ddl  

show columns from tbl_name;  --檢視列資訊  

show index from tbl_name;  --檢視索引資訊

有幾種show語句還可以帶有一條like 'pattern'字句,用來限制語句的輸出範圍,其中'pattern'允許包含'%'和'_'萬用字元,比如下面這條語句返回domaininfo表中以s開頭的所有列:

show columnsfromdomaininfolike's%';

2:select

像上面這張支援like字句的所有show都可以改寫成一條where字句,如:

show columnsfromdomaininfowherefield='sysdomain';

注:desc tbl_name和explain tbl_name的效果和show columns from tbl_name一致。

從information_schema資料庫裡查詢相關表

information_schema是mysql自帶的乙個系統資料庫,它裡面儲存了所有的元資料,通過select裡面的相關表就可以獲取你想要的元資料。和show語句相比,它比較麻煩,但它的好處是標準的sql語句,更具有可移植性,且更靈活,可以通過各種表示式獲取你真正需要的資訊。

3:從命令列獲取元資料

前面兩種方法都必須得在mysql命令列裡執行,而mysqlshow和mysqldump提供了從os命令列獲取元資料庫的方法,如:

mysqlshow--列出所有資料庫

mysqlshow db_name--列出給定資料庫的所有表

mysqlshow db_name tbl_name--列出給定資料庫表的所有列

mysqlshow--keys db_name tbl_name  --列出索引資訊

mysqlshow--status db_name  --列出資料庫的描述性資訊

mysqldump可以讓你看到createtable語句(就想showcreatetable語句一樣),如:

[sql]

mysqldump--no-data db_name [tbl_name] ...

注意:在用mysqldump檢視表結構時,一定要加上--no-data,否則你看到的將是資料庫表裡的資料

mysql元資料同步 mysql中的元資料

一 什麼是元資料?所謂元資料,就是表示資料的資料,這些資料五花八門,總之,只要不是我們儲存到資料庫裡的資料,大多都可以理解為元資料。描述資料庫的任何資料 作為資料庫內容的對立面 是元資料。因此,列名 資料庫名 使用者名稱 版本名以及從show語句得到的結果中的大部分字串是元資料。還包括informa...

mysql 元資料 MySQL 元資料

mysql 元資料 你可能想知道mysql以下三種資訊 查詢結果資訊 select,update 或 delete語句影響的記錄數。資料庫和資料表的資訊 包含了資料庫及資料表的結構資訊。mysql伺服器資訊 包含了資料庫伺服器的當前狀態,版本號等。在mysql的命令提示符中,我們可以很容易的獲取以上...

mysql 元 MySQL 元資料

你可能想知道mysql以下三種資訊 查詢結果資訊 select,update 或 delete語句影響的記錄數。資料庫和資料表的資訊 包含了資料庫及資料表的結構資訊。mysql伺服器資訊 包含了資料庫伺服器的當前狀態,版本號等。在mysql的命令提示符中,我們可以很容易的獲取以上伺服器資訊。但如果使...