亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

收縮Mysql的ibdata1文件大小方法

系統(tǒng) 1847 0
ibdata1是mysql數(shù)據(jù)庫中一個(gè)數(shù)據(jù)文件了,你會(huì)發(fā)現(xiàn)它來越大了,下面我來介紹收縮Mysql的ibdata1文件大小方法


如果你有使用InnoDB來存儲(chǔ)你的Mysql表,使用默認(rèn)設(shè)置應(yīng)該會(huì)碰到個(gè)非常頭疼的問題,在Mysql的數(shù)據(jù)目錄里有個(gè)默認(rèn)只有10MB叫ibdata1的文件沒日沒夜的增長(zhǎng)讓你煩透了吧?里面包含了InnoDB引擎存儲(chǔ)的所有索引和數(shù)據(jù)信息,很可惜Mysql在設(shè)計(jì)的時(shí)候就沒有收縮InnoDB表的功能,這就是為什么你在delete,truncate,drop這些表的時(shí)候這個(gè)文件大小沒有絲毫要減少的原因,而且你還沒辦法直觀的看到哪個(gè) 數(shù)據(jù)庫 占用了大量的ibdata1,這個(gè)坑爹的問題在新版的Mysql中已經(jīng)通過innodb_file_per_table這個(gè)選項(xiàng)來解決了,開啟該選項(xiàng)后,每個(gè)InnoDB表的索引和數(shù)據(jù)都會(huì)按*.ibd命名存儲(chǔ)到各個(gè) 數(shù)據(jù)庫 中,但是這個(gè)選項(xiàng)默認(rèn)是不開啟的。

如上所說,你沒法去收縮InnoDB數(shù)據(jù)文件,你也沒辦法在一臺(tái)沒有打開innodb_file_per_table選項(xiàng)的機(jī)器上直接加上該選項(xiàng)讓他工作,你必須在安裝完Mysql就加上這個(gè)選項(xiàng),或者按照本文介紹的三種方式來操作,無論你做任何操作,請(qǐng)確保你已經(jīng)備份了整個(gè)數(shù)據(jù)庫目錄,也別忘了停掉Mysql相關(guān)的一些服務(wù)。

前兩個(gè)方法需要獲取到Mysql數(shù)據(jù)庫實(shí)例中所有InnoDB的清單,如果你使用的是5.0以上的版本,這一切都很容易:SELECT TABLE_SCHEMA,TABLE_NAME FROM TABLES WHERE ENGINE = ‘InnoDB’;

修改表引擎
1.對(duì)每個(gè)InnoDB表執(zhí)行 ALTER TABLE table_name ENGINE=MyISAM;
2.停止Mysql服務(wù);
3.移除InnoDB相關(guān)文件ibdata1等;
4.修改my.cnf中的參數(shù),添加innodb_file_per_table;
5.啟動(dòng)Mysql服務(wù);
6.將剛才修改后的那些表改回InnoDB:ALTER TABLE table_name ENGINE=InnoDB;
導(dǎo)出InnoDB表
1.使用 mysqldump 命令導(dǎo)出所有的InnoDB表,例如: mysqldump –add-drop-table –extended-insert –disable-keys –quick ‘db_name’ –tables ‘tbl_name’ > ‘db_name.tbl_name.sql’
2.刪掉這些表:?
?SET FOREIGN_KEY_CHECKS=0;
?DROP TABLE db_name.tbl_name;
?DROP TABLE db_name1.tbl_name1;
?–– DROP other tables here…
?SET FOREIGN_KEY_CHECKS=1;
3.停止Mysql服務(wù);
4.移除InnoDB相關(guān)文件ibdata1等;
5.修改my.cnf中的參數(shù),添加innodb_file_per_table;
6.啟動(dòng)Mysql服務(wù);
7.在Mysql Console下導(dǎo)入表:?
?SET FOREIGN_KEY_CHECKS=0;
?SOURCE db_name.tbl_name.sql;
?SOURCE db_name1.tbl_name1.sql;
?–– SOURCE other files here…
?SET FOREIGN_KEY_CHECKS=1;
導(dǎo)出整個(gè)數(shù)據(jù)庫
這個(gè)是我常用的,雖然他和耗磁盤和時(shí)間,但是確實(shí)是最簡(jiǎn)便的:

1.導(dǎo)出所有的數(shù)據(jù): /usr/bin/mysqldump ––extended-insert ––all-databases ––add-drop-database ––disable-keys ––flush-privileges ––quick ––routines ––triggers > all-databases.sql
2.停止Mysql服務(wù);
3.重命名mysql數(shù)據(jù)文件夾;
4.修改my.cnf中的參數(shù),添加innodb_file_per_table;
5.mysql_install_db重新初始化mysqld;
6.開啟Mysql服務(wù);
7.進(jìn)入Mysql Console執(zhí)行:?
?SET FOREIGN_KEY_CHECKS=0;
?SOURCE all-databases.sql;
?SET FOREIGN_KEY_CHECKS=1;
8.重啟數(shù)據(jù)庫測(cè)試OK就領(lǐng)賞去吧。

收縮Mysql的ibdata1文件大小方法


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 亚洲偷自拍另类图片二区 | 四虎最新紧急入口4hu | 国产系列欧美系列日韩系列在线 | 欧美日韩有码 | 国产精品9999 | 国产成人久久精品二区三区牛 | 青青青国产 | 婷婷综合社区 | 色艺网 | 免费国产一区二区三区四区 | 色尼玛亚洲综合 | 十级毛片 | 亚洲欧美日韩成人一区在线 | 深夜在线观看 | 亚洲人成网站在线观看青青 | 欧美一级毛片国产一级毛片 | 九九99热久久国产 | 激情亚州 | 日本一本二本免费播放视频 | 狼人射综合 | 亚洲欧美一区二区三区二厂 | 精品久久成人 | 中文字幕日韩女同互慰视频 | 欧美激情在线精品一区二区 | 亚洲欧美色综合一区二区在线 | 四虎影在永久地址在线观看 | 99热国产这里只有精品9九 | 97视频精品全国在线观看 | 色综合99| 999久久久精品视频在线观看 | 爱爱免费视频网站 | 国产这里只有精品 | 精品久久久久久久九九九精品 | 青青操网址 | 欧美三级在线观看不卡视频 | 国产欧美高清 | 中文国产成人精品久久无广告 | 久久的爱久久久久的快乐 | 午夜伦4480yy妇女久久久 | 亚洲视频在线观看免费视频 | 色婷婷久久综合中文久久一本 |