MySQL source導入很慢的解決方法
現在有這樣一個需求,內網有一個數據庫服務,需要將外網的數據庫導入到內網數據庫。
將外網的數據庫導出sql文件有700MB+,用MySQL自帶的source導入很慢,於是就用瞭如下方法加速導入,親測很快。
1. 登錄MySQL
進入內網服務器,登錄mysql,輸入密碼即可。
mysql -u root -p
2. 創建數據庫
根據需求創建數據庫
create database 數據庫名;
3. 設置參數
sql_log_bin 關閉二進制日志
autocommit 關閉事務自動提交
set sql_log_bin=off; set autocommit=0;
4. 使用數據庫
use 數據庫名;
5. 開啟事務
start transaction;
6. 導入sql
source 文件.sql;
7. 手動提交事務
commit;
8. 改回配置
set sql_log_bin=on; set autocommit=1;
附mysql加速source導入數據
# 進入mysql中執行如下 SET GLOBAL foreign_key_checks=0; SET GLOBAL unique_checks=0; SET GLOBAL innodb_flush_log_at_trx_commit=0; SET GLOBAL sync_binlog=0; -- 你的sql語句1 -- 你的sql語句2 -- 你的sql語句3 SET GLOBAL foreign_key_checks=1; SET GLOBAL unique_checks=1; SET GLOBAL innodb_flush_log_at_trx_commit=1; SET GLOBAL sync_binlog=1;
總結
到此這篇關於MySQL source導入很慢解決的文章就介紹到這瞭,更多相關MySQL source導入很慢內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- MySQL的binlog日志使用詳解
- MySQL組提交group commit詳解
- 如何區分MySQL的innodb_flush_log_at_trx_commit和sync_binlog
- 一條SQL更新語句的執行過程解析
- PHP隊列場景以及實現代碼實例詳解