MySQL Table 以前建立 Table 是使用 UTF-8 (3 bytes),現在因為一些特殊字、Emoji 等等,需要用到 4 bytes,所以需要使用 UTF8MB4,線上要怎麼動態修改呢?
- 註:MySQL 5.5.3 以後開始支援 UTF8MB4 (5.5 以前的實際名稱叫 UTF8MB3)
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
MySQL Table 以前建立 Table 是使用 UTF-8 (3 bytes),現在因為一些特殊字、Emoji 等等,需要用到 4 bytes,所以需要使用 UTF8MB4,線上要怎麼動態修改呢?
MySQL Client 裡面,想要執行 SQL 語法,或者使用變數來做某些取代,要怎麼做呢?
MySQL 刪除資料後,空間並不會釋放出來,可以使用 OPTIMIZE TABLE 來釋放空間,OPTIMIZE 等同於 TABLE Copy & RENAME,所以會有大量 IO。
我是採用兩種方式來做,依照資料量大小來做選擇。(一樣會有大量IO,但是可以自己掌握,缺點是執行時會有短暫的時間可能漏資料)
不過資料量過大的,還是建議另外處理,這種作法是非常不得已的。
MySQL 使用 mysqldump 可以備份所有 Database、指定 Database 等等。
但是 Database 裡面,某個 Table 太大不想 Dump,要跳過可以怎麼做呢?
瀏覽器在 Debug 常常使用 console.log(),除了 console.log 外,還有沒有更多的參數可以使用呢?
(() => { console.log('%c%s', 'color: green; background: yellow; font-size: 24px;','Success!') })();
詳見此篇:Better console.logs
系統平常跑得很正常,為何灌了 Docker 後,dmesg 開始出現下述的訊息:
要怎麼解決呢?
MySQL user 想要 RENAME Table 需要開哪些權限呢?
MySQL 要複製 整個 Table, 要怎麼做呢?
MySQL 的 Table 要搬到另外一個 DB、Table 重新命名、兩個 Table 要互換名字 等, 要怎麼做?