Docker Mysql問題記錄

2021-09-25 14:31:31 字數 920 閱讀 1851

問題描述:

建立乙個內部網路(docker network create ims_network),在這個內部網路跑了兩個容器(乙個mysql容器,乙個python容器),從python容器中向mysql容器中寫資料(insert,update)很慢,select很快。

問題解決:

[mysqld]

skip-name-resolve

innodb_flush_log_at_trx_commit=0

sync_binlog=0

方法解析:

skip-name-resolve:跳過網域名稱解析,對有些場景很管用,但對我遇到的不怎麼管用。

設定這個以後,速度只有一點點提公升(2秒  -> 1秒9)。

innodb_flush_log_at_trx_commit=0: 這個選項決定著什麼時候把日誌資訊寫入日誌檔案以及什麼時候把這些檔案物理地寫(術語稱為」同步」)到硬碟上。設定值0的意思是每隔一秒寫一次日誌並進行 同步,這可以減少硬碟寫操作次數,但可能造成資料丟失; 設定值1(設定設定)的意思是在每執行完一條commit命令就寫一次日誌並進行同步,這可以防止資料丟失,但硬碟寫操作可能會很頻繁; 設定值2是一般折衷的辦法,即每執行完一條commit命令寫一次日誌,每隔一秒進行一次同步。

設定這個以後,速度有很大提公升(1秒9  -> 1秒)。

sync_binlog=0:每經過n次日誌寫操作就把日誌檔案寫入硬碟一次(對日誌資訊進行一次同步)。設為1是最安全的做法,但效率最低。docker中預設設定是1,意思是由作業系統來負責二進位制日誌檔案的同步工作。

設定這個以後,速度有顯著提公升(1秒  -> 30毫秒)。

編輯 my.cnf

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

ios crash問題記錄

1.誤將nsmutablearray型別的變數初始化為nsarray,結果對nsmutablearray型別變數進行操作時,crash h檔案如下 inte ce movemecontroller secondlevelviewcontroller property nonatomic,retain...

??? nginx lua問題記錄

問題1 當用http localhost test 訪問時,結果為何迥異?eg1 location test 結果為空,說明執行的是httpechomodule的echo指令,沒有執行httpluamodule的content by lua指令 eg2 location test輸出123 說明執行...

sphinx 問題記錄

indexer error while loading shared libraries libmysqlclient.so.18 cannot open shared object file no such file or directory 發現sphinx indexer依賴庫ibmysqlc...