{eval=Array;=+count(Array);}
mysql狀態(tài)sleep,其實就是空閑鏈接,剛剛執(zhí)行的操作已經完成。
insert into table select * from table問題:將內存中的數據寫入磁盤?
MySQL的操作,基本都是在內存完成,至于執(zhí)行SQL會不會馬上刷盤,取決于mysql配置的innodb_flush_log_at_tx_commit 參數。來決定是否刷日志到磁盤,刷數據至磁盤。
0: log buffer將每秒一次地寫入log file中,并且log file的flush(刷到磁盤)操作同時進行.該模式下,在事務提交的時候,不會主動觸發(fā)寫入磁盤的操作,MySQL崩潰就會丟失1s的事務,無法自動事務恢復。
1: 每次commit時,刷redo日志,確定fsync刷盤,刷新成功才會返回,崩潰,系統斷電都不會丟失事務。
2: 每次提交時,刷redo日志到文件系統,不調用fsync刷盤,5.6.6之前是每隔1s刷盤,之后的版本是通過參數innodb_flush_log_at_timeout設置,默認也是1s如。果mysql崩潰,是可以自動事務恢復的,如果是系統斷電,會丟失1s事務。
0
回答0
回答0
回答0
回答0
回答0
回答6
回答0
回答0
回答0
回答