Mysql
設置預設 CHARSET 和 DB Engine
我最近將伺服器的數據庫系統從 MySQL 更新為 MariaDB。更新後,一切正常。
但是,當我訪問 phpMyAdmin 時,預設字元集和類型發生了變化:
在此圖像的末尾,預設類型設置為“InnoDB”,字元集設置為“latin1_swedish_ci”。他們之前是“MyISAM”和“utf8_general_ci”。如何恢復我的字元集和類型設置,以及如何在創建新數據庫時自定義設置?
當我查看 /etc/my.cnf 和 /etc/my.cnf.rpmnew 時,我找不到任何與 DB 類型/字元集相關的設置。
“我怎樣才能恢復我的字元集”:
ALTER TABLE myTable CONVERT TO CHARACTER SET "utf8";
“我怎樣才能恢復我的類型”:(MySQL 引擎):
ALTER TABLE myTbale ENGINE=MyISAM;
“創建新數據庫時如何自定義設置?”
在你的 my.cnf
default-storage-engine=MyISAM
最好的祝福。
最大限度。
- 您可以通過編輯文件更改伺服器的字元集和排序規則
my.cnf
並重新啟動 MySQL 伺服器以生效http://dev.mysql.com/doc/refman/5.6/en/charset-server.html
- 現在您所有的表都是引擎類型的InnoDB,如果您使用 MariaDB 5.6+,那麼它可以支持 InnoDB 的全文搜尋,這是 v5.6 之前使用 MyISAM 表的主要原因。現在,您可以擺脫 MyISAM 表您可以查看這篇博文 http://www.mysqlperformanceblog.com/2013/07/31/innodb-full-text-search-in-mysql-5-6- part-3/(您可以參考 part-1 和 part-2)以及更好地理解為什麼我們應該在 v5.6 中使用 InnoDB 而不是 MyISAM
- 您可以在創建數據庫時根據 需要指定字元集和排序規則,會話級別設置始終覆蓋全域級別設置。http://dev.mysql.com/doc/refman/5.6/en/create-database.html