亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL判別InnoDB表是獨立表空間還是共享表空間的方法詳解

2024-07-25 19:08:56
字體:
來源:轉載
供稿:網(wǎng)友

前言

InnoDB采用按表空間(tablespace)的方式進行存儲數(shù)據(jù), 默認配置情況下會有一個初始大小為10MB, 名字為ibdata1的文件, 該文件就是默認的表空間文件(tablespce file),用戶可以通過參數(shù)innodb_data_file_path對其進行設置,可以有多個數(shù)據(jù)文件,如果沒有設置innodb_file_per_table的話, 那些Innodb存儲類型的表的數(shù)據(jù)都放在這個共享表空間中,而系統(tǒng)變量innodb_file_per_table=1的話,那么InnoDB存儲引擎類型的表就會產(chǎn)生一個獨立表空間,獨立表空間的命名規(guī)則為:表名.idb. 這些單獨的表空間文件僅存儲該表的數(shù)據(jù)、索引和插入緩沖BITMAP等信息,其它信息還是存放在共享表空間中,那么如何判別數(shù)據(jù)庫中哪些表是獨立表空間,哪些表是共享表空間呢?

InnoDB邏輯存儲結構

MySQL,InnoDB,獨立表空間,共享表空間

方法1:通過ibd文件判別

如果表的存儲引擎是InnoDB,而且表空間(tablespace)是共享表空間的話,那么數(shù)據(jù)庫對應目錄下面是沒有"表名.ibd"文件的。獨立表空間的表的話,則有"表名.ibd"文件。只是這個方法很笨,對于生產(chǎn)環(huán)境,大量的表通過這種方式判別,確實不是一個好方法。

mysql> show variables like 'innodb_file_per_table';+-----------------------+-------+| Variable_name  | Value |+-----------------------+-------+| innodb_file_per_table | ON |+-----------------------+-------+1 row in set (0.01 sec) mysql> use MyDB;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A Database changedmysql> create table Independent_tablespace(name varchar(64));Query OK, 0 rows affected (0.03 sec) mysql> exit [root@DB-Server ~]# cd /data/mysql/MyDB/[root@DB-Server MyDB]# ls -lrt Independent_tablespace*-rw-rw---- 1 mysql mysql 8560 Aug 21 22:05 Independent_tablespace.frm-rw-rw---- 1 mysql mysql 98304 Aug 21 22:05 Independent_tablespace.ibd[root@DB-Server MyDB]# 

在配置文件my.cnf里面設置innodb_file_per_table=0,重啟MySQL服務,創(chuàng)建表common_tablespace,你會在數(shù)據(jù)目錄看到只有common_tablespace.frm文件。

mysql> show variables like 'innodb_file_per_table';+-----------------------+-------+| Variable_name  | Value |+-----------------------+-------+| innodb_file_per_table | OFF |+-----------------------+-------+1 row in set (0.00 sec) mysql> use MyDB;Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A Database changedmysql> create table common_tablespace(name varchar(64));Query OK, 0 rows affected (0.02 sec) mysql> exitBye[root@DB-Server MyDB]# ls -lrt common_tablespace*-rw-rw---- 1 mysql mysql 8560 Aug 21 22:08 common_tablespace.frm[root@DB-Server MyDB]# 

方法2:使用INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES來判別。

MySQL 5.6

MySQL 5.6 INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES 關于這個系統(tǒng)表提供了有關表格的格式和存儲特性,包括行格式,壓縮頁面大小位級別的信息(如適用),INNODB的表空間信息。

The INNODB_SYS_TABLESPACES table provides metadata about InnoDB tablespaces, equivalent to the information in the SYS_TABLESPACES table in the InnoDB data dictionary.

花了點時間了解了一下INFORMATION_SCHEMA數(shù)據(jù)庫下面的INNODB_SYS_TABLESPACES這個表,遂寫了一個SQL來判斷那些InnoDB引擎表是獨立表空還是共享表空間

共享表空間:

SELECT TABLE_SCHEMA ,TABLE_NAME ,TABLE_TYPE ,N'共享表空間' AS TABLE_SPACE ,ENGINE ,VERSION ,TABLE_ROWS ,AVG_ROW_LENGTH ,CREATE_TIME ,UPDATE_TIMEFROM INFORMATION_SCHEMA.TABLES TLEFT JOIN INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES I ON CONCAT(T.TABLE_SCHEMA, '/',T.TABLE_NAME)=I.NAMEWHERE I.NAME IS NULL AND T.TABLE_SCHEMA='MyDB' AND T.ENGINE='InnoDB';

MySQL,InnoDB,獨立表空間,共享表空間

不過這個腳本有個小小的bug,對于包含特殊字符的表名,有可能出現(xiàn)錯誤情況,這個是因為如果表名包含特殊字符,那么文件名或INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES中的NAME做了轉義處理,如下所示

MySQL,InnoDB,獨立表空間,共享表空間

獨立表空間

SELECT TABLE_SCHEMA ,TABLE_NAME ,TABLE_TYPE ,N'獨立表空間' AS TABLE_SPACE ,ENGINE ,VERSION ,TABLE_ROWS ,AVG_ROW_LENGTH ,CREATE_TIME ,UPDATE_TIMEFROM INFORMATION_SCHEMA.TABLES TINNER JOIN INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES I ON CONCAT(T.TABLE_SCHEMA, '/',T.TABLE_NAME)=I.NAMEWHERE T.TABLE_SCHEMA='MyDB' AND T.ENGINE='InnoDB';

MySQL,InnoDB,獨立表空間,共享表空間

方法3 :INFORMATION_SCHEMA.INNODB_SYS_TABLES判別

MySQL 5.7

如果是MySQL 5.7的話, 比MySQL 5.6有多了一種方法,MySQL 5.7 的INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES中多了SPACE_TYPE字段,不過其值全部為Single,而INFORMATION_SCHEMA.INNODB_SYS_TABLES中也多了字段SPACE_TYPE, 其值有Single與System 分別表示單獨表空間和共享表空間。

#單獨表空間

SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESWHERE SPACE_TYPE='Single';   SELECT TABLE_SCHEMA ,TABLE_NAME ,TABLE_TYPE ,N'獨立表空間' AS TABLE_SPACE ,ENGINE ,VERSION ,TABLE_ROWS ,AVG_ROW_LENGTH ,CREATE_TIME ,UPDATE_TIMEFROM INFORMATION_SCHEMA.TABLES TINNER JOIN INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES I ON CONCAT(T.TABLE_SCHEMA, '/',T.TABLE_NAME)=I.NAMEWHERE T.TABLE_SCHEMA='YourDatabase' AND T.ENGINE='InnoDB';

#共享表空間

SELECT * FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESWHERE SPACE_TYPE='System';   SELECT TABLE_SCHEMA ,TABLE_NAME ,TABLE_TYPE ,N'共享表空間' AS TABLE_SPACE ,ENGINE ,VERSION ,TABLE_ROWS ,AVG_ROW_LENGTH ,CREATE_TIME ,UPDATE_TIMEFROM INFORMATION_SCHEMA.TABLES TLEFT JOIN INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES I ON CONCAT(T.TABLE_SCHEMA, '/',T.TABLE_NAME)=I.NAMEWHERE I.NAME IS NULL AND T.TABLE_SCHEMA='YourDatabase' AND T.ENGINE='InnoDB'

方法4: INFORMATION_SCHEMA.INNODB_TABLES判別

MySQL 8.0

如果是MySLQ 8.0的話,還多了一種方法, 那就是通過INFORMATION_SCHEMA.INNODB_TABLES來判斷,這個新增的系統(tǒng)表可以通過SPACE_TYPE字段來區(qū)分共享表空間與獨立表空間

SELECT * FROM INFORMATION_SCHEMA.INNODB_TABLES WHERE SPACE_TYPE='Single';

參考資料:

https://dev.mysql.com/doc/refman/8.0/en/innodb-tables-table.html

https://dev.mysql.com/doc/refman/5.6/en/innodb-i_s-tables.html

https://dev.mysql.com/doc/refman/5.6/en/innodb-sys-tablespaces-table.html#innodb-sys-tablespaces-table-flag-column

https://dev.mysql.com/doc/refman/5.6/en/innodb-sys-tablespaces-table.html

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網(wǎng)的支持。


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
久久久水蜜桃av免费网站| 日韩欧美亚洲一区二区| 美女大黄三级视频在线观看| 91蝌蚪国产九色| 黄色亚洲网站| 亚洲综合一二三区| 欧美精品在欧美一区二区| 久久久久久久久一| 国产91精品久久久久久久| 免费精品一区| 久久天天做天天爱综合色| 国产成人精品免费视频网站| 精品久久人人做人人爽| 狠狠综合久久av一区二区蜜桃| 99久久亚洲| 一区二区三区黄色片| 亚洲最大成人综合| 虎白女粉嫩尤物福利视频| 色吊丝在线永久观看最新版本| aaaaa级少妇高潮大片免费看| 亚洲一区激情| 成视频在线观看免费观看| 不卡av电影在线播放| 欧美精品乱码久久久久久| 日本不卡三区| 国内精品一区二区三区| 亚洲欧美国产不卡| 亚洲va久久久噜噜噜无码久久| 91久热免费在线视频| 日本泡妞xxxx免费视频软件| 欧美日韩18| 91av视频在线播放| 在线免费黄色av| 日韩视频一区二区| av中文字幕不卡| 成人影院网站ww555久久精品| 在线观看欧美激情| bdsmchinese医疗折磨| 国产又粗又黄又爽视频| 1卡2卡3卡精品视频| 国产免费一级视频| 欧美freesextv| 中文字幕一区二区人妻视频| 国产美女福利视频| 欧美视频一区在线观看| 久久综合一区二区三区| 精品少妇人妻一区二区黑料社区| 久久天堂影院| 久久精品一区二区免费播放| 黄色免费在线网站| 亚洲熟女乱综合一区二区三区| 日本免费观看视| 成午夜精品一区二区三区软件| fc2ppv完全颜出在线播放| 亚洲天堂av电影| 亚洲福利视频免费观看| 亚洲专区国产精品| 欧美精品制服第一页| 最新中文字幕在线观看视频| sese久久| 国产精品国产三级国产| 欧美一区二区视频| 9l视频白拍9色9l视频| 国产无套内射又大又猛又粗又爽| 久久久久久久免费| 亚洲free性xxxx护士hd| 自拍偷拍电影| 中文视频在线| 成人亚洲欧美日韩在线观看| 色播五月综合| 91在线播放国产| 精品国产区一区| 国产伦精品一区二区三区视频痴汉| 精品日韩视频在线观看| 午夜视频在线观看韩国| 无套内谢的新婚少妇国语播放| 91在线视频免费| 日韩电影天堂视频一区二区| 欧美精品入口| 91免费精品国偷自产在线在线| 风间由美性色一区二区三区四区| 日本a级c片免费看三区| 高h放荡受浪受bl| 国产欧美综合在线观看第十页| 伊甸园精品99久久久久久| 四虎永久在线精品免费一区二区| 日韩在线视频网址| 精品一区二区三区的国产在线观看| 小视频在线播放| 天天干天天草天天射| 欧美成人黄色网址| 麻豆视频观看网址久久| 亚洲成人av中文字幕| 直接在线观看的三级网址| 亚洲免费一在线| 99热这里只有精品在线| 精品视频全国免费看| 美女把尿口扒开让男人桶在线观看| 一区二区三区伦理| 欧美一级成年大片在线观看| 天堂√中文最新版在线| 欧美一区二区三区思思人| 亚洲一区精品电影| 久久美女视频| 精品免费一区二区| ed2k情侣啪啪91av| 91激情五月电影| 色yeye免费人成网站在线观看| yy111111少妇影院日韩夜片| 日本激情一区| 久久人人爽av| 成人h精品动漫一区二区三区| 国产精品久久久久影视| 精品久久久影院| 久久亚洲一区二区三区明星换脸| 另类小说欧美激情| 粉嫩tv在线播放| 色偷偷综合网| 亚洲a在线观看| 成人vr资源| 欧美午夜电影网| 91传媒视频在线播放| 国产乱色精品成人免费视频| 成人性做爰片免费视频| 天天综合永久入口| 在线观看精品自拍视频| 国产精品无码永久免费不卡| 草莓视频成人appios| 国产精品极品美女在线观看| 国产一区二区三区91| 激情五月婷婷基地| 在线看片不卡| 国产高潮国产高潮久久久91| 欧美一级大片在线免费观看| 伦理欧美一区| 欧美男女交配视频| 77导航福利在线| 国产乱码精品一区二区三区四区| 欧洲第一无人区观看| 国产精品啪视频| 狠狠综合久久av一区二区老牛| 亚洲视频在线播放| 国产精品偷伦免费视频观看的| 台湾色综合娱乐中文网| 国产视频精品免费播放| 天天躁日日躁aaaxxⅹ| 久久久久久亚洲精品杨幂换脸| 岛国视频免费在线观看| 欧美精品在欧美一区二区少妇| 国产精品视频看| 欧美综合在线播放| 夜夜嗨av一区二区三区中文字幕| 91免费网站视频| 成人免费视频app| 亚洲电影av在线| 成人爽a毛片免费啪啪动漫| 免费观看成人性生生活片| 日本一区二区免费高清| 日本一区二区三区久久久久久久久不| 欧美日韩一区二区三区在线播放| 99av国产精品欲麻豆| 欧美日韩大尺度| 日韩精品免费一区二区| 一卡二卡三卡四卡| 日韩精品久久理论片| 青青草国产在线观看| 日本人妻丰满熟妇久久久久久| 在线观看毛片网站| 欧美精品在线第一页| 亚洲精品日韩成人| 四虎影院成人在线观看| 欧美日韩精品在线一区二区| 国产内射老熟女aaaa∵| 精品国产乱码久久久久久闺蜜| 成人免费观看cn| 日本免费黄网站| 国产精品户外野外| 不卡一二三区| 国产中年熟女高潮大集合| 免费人成在线观看播放视频| 一区二区三区高清在线视频| 黄色激情在线视频| 热久久久久久久| 欧美一区二区三区综合| 女人天堂亚洲aⅴ在线观看| 日本黄色片在线观看| 欧美精选视频一区二区| 主播福利视频一区| av资源中文在线天堂| 国产自产一区二区| 亚洲午夜久久久久久久久久久| 婷婷开心激情网| 青青草国产在线观看| 日本泡妞xxxx免费视频软件| 成人国产精品| 精品久久久久久久久久久久久| 精品国产91久久久| 国产精品久久久久久久免费软件| 欧美日韩一卡| 一区二区三区在线播放欧美| 亚洲国产中文字幕在线视频综合| 熟妇女人妻丰满少妇中文字幕| 成人妇女免费播放久久久| 中文字幕电影一区| 国产波霸爆乳一区二区| 日韩成人在线免费视频| 牛牛精品一区二区| 激情视频网站在线播放色| 日本在线丨区| 男女啪啪网站视频| 亚洲国产毛片aaaaa无费看| 国产精选久久久久久| 欧美视频免费看| 久久成人国产精品| 久久午夜无码鲁丝片午夜精品| 91在线国产观看| 青青九九免费视频在线| 国产一区二区三区直播精品电影| 国产亚洲精品久久久久久777| av免费观看国产| 97婷婷涩涩精品一区| 国产在线精品一区二区中文| 日韩精品看片| 啊啊啊好爽视频| 亚洲激情视频一区| 国产精品一区二区在线观看不卡| 一区二区传媒有限公司| 亚洲天堂第一页| 青青草观看免费视频在线| 妖精视频一区二区三区免费观看| 久草.com| 五十路熟女丰满大屁股| 国产在线小视频| 国产又粗又黄又爽的视频| 欧美乱人伦中文字幕在线| 久久mv成人精品亚洲动漫| 国产精品特级毛片一区二区三区| 成人动漫视频在线观看| 欧美日本国产在线| 中文字幕日韩欧美| 无码国模国产在线观看| 国产亚洲一区二区三区啪| 国产成人麻豆免费观看| 欧美人与性动交α欧美精品| 999福利视频| 国产亚洲人成网站在线观看| 18成人免费观看视频| 久久精品第一页| 蜜桃视频污在线观看| 欧美在线免费看| 国产剧情日韩欧美| 在线观看亚洲欧美| 欧美成人免费观看| 成人黄色激情网| 性感小视频在线看免费| 18黄暴禁片在线观看| 99国产精品久久久| 少妇高潮一区二区三区69| 在线电影欧美日韩一区二区私密| 亚洲永久av| 免费无遮挡无码永久在线观看视频| 51午夜精品国产| 男人的天堂av高清在线| 亚洲国产精品嫩草影院久久av| 蜜芽一区二区三区| 亚洲免费观看在线观看| 青青草成人激情在线| 亚洲欧美日韩国产手机在线| 麻豆影院在线观看| 久久人人爽人人爽人人片av高清| 欧美乱xxxxxxxxx| 神马久久一区二区三区| 成年人免费观看视频网站| 芒果视频成人app| 亚洲第一视频网站| gai在线观看免费高清| 国产偷激情在线| 一级日韩一区在线观看| 老司机精品在线| 精品激情国产视频| 国产精品国产高清国产| 国产精品自拍电影| 国产精品乡下勾搭老头1| 一级女性全黄久久生活片免费| 华人av在线| 一色屋成人免费精品网| 成人在线免费观看av| 亚洲 欧美 另类人妖| 热re99久久精品国产66热| 精品久久久久久久| 精品肉丝脚一区二区三区| 中文字幕在线看视频国产欧美| 8x8x拔插拔插影库永久免费| 91亚洲一区| 一级视频在线观看| 95影院理论片在线观看| 亚洲国产成人私人影院| 疯狂撞击丝袜人妻| 欧产日产国产精品98| 中文字幕日韩国产| 欧美国产日韩另类| 国产日韩在线观看一区| 韩国成人福利片在线播放| 毛片av免费观看| 高清不卡一区| 国产精品一区二区三区四区五区| 青青青爽久久午夜综合久久午夜| 2018av在线| 国产人妻精品一区二区三区不卡| 香蕉久久夜色精品国产| 青青在线免费观看视频| 成人在线啊v| 另类av一区二区| 国产综合精品视频| 亚洲第一网站| 亚洲国产精品久久久久婷婷软件| 作爱视频免费观看视频在线播放激情网| 国产在线视频在线观看| 永久av在线| 色影院视频在线| 一级黄色片网址| ady日本映画久久精品一区二区| 97在线精品| 精品在线观看入口| 欧美午夜电影一区| 欧美国产日韩在线观看成人| 日韩毛片中文字幕| 麻豆免费在线|