91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql大型SQL文件快速恢復方案分享

發布時間:2020-08-24 08:11:17 來源:腳本之家 閱讀:273 作者:17ns 欄目:MySQL數據庫

前言

在使用Mysql數據庫的過程中,經常需要使用到備份和恢復數據庫,最簡單便捷的方法便是通過導出SQL數據文件和導入SQL數據文件來完成備份和恢復,但是隨著項目的增長,數據量越來越大,每次恢復就成了一件很頭疼的事情。

當我最近一次拉下項目中的5GB大小的數據庫到本地進行恢復時,竟然需要耗時40-50分鐘,想著日后的數據擴增,數據量越來越大,恢復成本也越來越高,于是便查閱了一些資料,可以通過以下設置來提高你的恢復效率.

1.更改備份參數

首先我們需要在備份數據庫的時候,可以通過更改參數來提高我們的恢復效率.

mysqldump --extended-insert

mysqldump的--extended-insert參數表示批量插入,會將多個insert語句合并成一個語句,與沒有開啟-extended-insert的備份導入效率相差3-4倍.

使用--extended-insert=false導出的sql文件數據是這樣的,每行一條insert語句,執行效率非常低下

Mysql大型SQL文件快速恢復方案分享

使用--extended-insert=true導出的表如下圖這種,一個很長的insert語句,會進行批量插入。

Mysql大型SQL文件快速恢復方案分享

2.調整MYSQL快速插入參數

如果你的數據庫儲存引擎是MYISAM參數的話,可以將此參數設置到512M或256M,MyISAM會使用一種特殊的樹狀緩存來做出更快的批量插入。

相關文檔:https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_bulk_insert_buffer_size

該值默認是8M = 8388608byte

查看插入緩沖區大小

SHOW VARIABLES LIKE '%bulk%';

設置插入緩沖區大小(全局)

SET GLOBAL bulk_insert_buffer_size =1024*1024*512;

設置插入緩沖區大小(session)

SET bulk_insert_buffer_size =1024*1024*256;

如果需要設置Mysql重新啟動時,依然保留該值,需要將這段配置添加了my.cnf

[mysqld]
bulk_insert_buffer_size = 256M

3.關閉檢查項

對于Innodb引擎中,我們可以關閉一些系統檢查項來實現更快的插入的方案.

//關閉自動提交
SET autocommit=0;

//關閉唯一檢查
set unique_checks = 0;

//關閉外鍵檢查
SET foreign_key_checks=0;

//備份的時候開啟--extended-insert參數

關于Innodb批量數據加載相關文檔:https://dev.mysql.com/doc/refman/5.7/en/optimizing-innodb-bulk-data-loading.html

4.實踐

做好以上優化后,你的Mysql恢復效率瞬間會提升一個檔次,在沒做以上參數優化時,每次恢復數據庫都需要耗費40分鐘的時間,設置后只需要16分鐘左右,我的數據庫文件容量在5GB左右.

Mysql大型SQL文件快速恢復方案分享

以上就這些,途觀有更好的方案和建議的話,希望各位同學一起探討,Happy Coding。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武定县| 准格尔旗| 德惠市| 莱芜市| 射洪县| 双柏县| 松江区| 淳化县| 元阳县| 漳州市| 游戏| 都江堰市| 任丘市| 纳雍县| 方山县| 临高县| 济宁市| 宁城县| 东辽县| 双辽市| 岱山县| 当阳市| 红河县| 白沙| 姚安县| 旺苍县| 遂溪县| 堆龙德庆县| 华池县| 奈曼旗| 葫芦岛市| 南郑县| 兴仁县| 纳雍县| 武鸣县| 邹城市| 水富县| 响水县| 泗阳县| 仪陇县| 东乌珠穆沁旗|