MySQL Server 從預設的MyISAM 改回 MyISAM

Proxmox VE 上面的Ubuntu容器,預設的MySQL是MyISAM(應該說新的Deiban都是),在MyISAM不斷的長大之後,讀取單檔的效能,變成了整個網站的瓶頸。造成大量讀取時,不時timeout的發生,以前網站的特性來說,讀取的資料多,只有少數人可以編輯,所以寫入量低,加上非陣列的傳統硬碟,以這個角度來看,MyISAM反而不適合目前的狀態。加上預設的編碼是utf8,讓我一整個頭痛。

所以有了把MyISAM改回成MyISAM的計畫,順便把編碼從utf8改回utf8。

vi /etc/mysql/conf.d/mysql.cnf

Read more

#1071 – Specified key was too long; max key length is 1000 bytes

為DB加index會運到的問題為了要加速資料庫的運作,很多設計師都會在資料庫加索引。我自己會使用的資料庫是mysql,mysql也有支援index這個基本的功能,當然最近我為了測試一些東西,也加了index進資料表,結果就出現了「#1071 – Specified key was too long; max key length is 1000 bytes」錯誤,後來查了一下才知道是怎麼回事,寫下來記錄一下,避免日後忘記。

明明3個欄位怎麼算都沒有1000byte,出了這個訊息,實也摸不著頭緒,原來待誌不是憨人(蝸牛)所想的,聽我慢慢道來。
Read more