一):innodb_flush_log_at_trx_commit 引數解釋:
1):引數解釋
0:log buffer將每秒一次地寫入log file中,並且log file的flush(刷到磁碟)操作同時進行。該模式下在事務提交的時候,不會主動觸發寫入磁碟的操作。
1:每次事務提交時mysql都會把log buffer的資料寫入log file,並且flush(刷到磁碟)中去,該模式為系統預設。
2:每次事務提交時mysql都會把log buffer的資料寫入log file,但是flush(刷到磁碟)操作並不會同時進行。該模式下,mysql會每秒執行一次 flush(刷到磁碟)操作。
2):引數修改
找到mysql配置檔案mysql.ini,修改成合適的值,然後重啟mysql。
3):注意事項
當設定為0,該模式速度最快,但不太安全,mysqld程序的崩潰會導致上一秒鐘所有事務資料的丟失。
當設定為1,該模式是最安全的,但也是最慢的一種方式。在mysqld 服務崩潰或者伺服器主機crash的情況下,binary log 只有可能丟失最多乙個語句或者乙個事務。
當設定為2,該模式速度較快,也比0安全,只有在作業系統崩潰或者系統斷電的情況下,上一秒鐘所有事務資料才可能丟失。
查詢資料時候看到其他文章說 innodb_flush_log_at_trx_commit 和 sync_binlog 兩個引數是控制mysql 磁碟寫入策略以及資料安全性的關鍵引數,
當兩個引數都設定為1的時候寫入效能最差,推薦做法是 innodb_flush_log_at_trx_commit=2,sync_binlog=500 或1000
Redis相關機制
什麼是redis redis是nosql資料庫,記憶體資料庫,是利用記憶體對資料進行快取,從而加快資料的訪問速度,一般情況下,會將熱點資料放入快取,例如使用者資料,許可權資料,排行榜,更新頻率低的報表資料等。速度快的原因有三個 1.資料在記憶體 2.單執行緒 3.多路復用的i o redis的資料結...
反反爬蟲相關機制
來自於scrapy官方文件描述 這裡是乙個例子 middlewares class scrapy.contrib.middleware.middlewareprocess request 必須返回以下其中之一 乙個 none 乙個 response 物件 乙個 request 物件或 raise i...
Mysql Mysql相關問題集
由於mysql編碼原因會導致資料庫出現亂碼 解決辦法 修改mysql資料庫字元編碼為utf 8,utf 8包含全世界所有國家需要用到的字元,是國際編碼 1.進入mysql mysql uroot p123 2.檢視編碼集 發現不是utf8 3.修改mysql 軟體的編碼集 vi etc my.cnf...