Mysql隨記1

Mysql隨記1

 

1、關閉查詢緩存,query_cache_size = 0。

 

2、Innodb類型的表是按照主鍵的順序保存的,所以將導入的數據按照主鍵的順序排列,可以有效的提高導入數據的效率。

 

3、innodb_flush_log_at_trx_commit設置為2或者0.

    默認值1的意思是每一次事務提交或事務外的指令都需要把日志寫入(flush)硬盤,這是很費時的。設成2對於很多運用,特別是從MyISAM表轉過來的是可以的,它的意思是不寫入硬盤而是寫入系統緩存。

 

日志仍然會每秒flush到硬盤,所以你一般不會丟失超過1-2秒的更新。設成0會更快一點,但安全方面比較差,即使MySQL掛瞭也可能會丟失事務的數據。而值2隻會在整個操作系統 掛瞭時才可能丟數據。

 

4、在導入數據前執行SET UNIQUE_CHECKS=0,關閉唯一性校驗,在導入結束後執行SET UNIQUE_CHECKS=1,恢復唯一性校驗,可以提高導入的效率。

 

5、如果應用使用自動提交的方式,建議在導入前執行SET AUTOCOMMIT=0,關閉自動提交,導入結束後再執行SET AUTOCOMMIT=1,打開自動提交,也可以提高導入的效率。

 

6、將索引文件和數據文件分在不同的磁盤上存放(利用建表中的選項)。

7、關閉外鍵檢查,SET foreign_key_checks=0; 

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。