2012-09-08 31 views
4

在FreeBSD 8.2上使用MySQL。我如何找出默認的服務器字符集?有一些我可以運行的命令或文件,我可以檢查嗎?如何找到mysql中的默認服務器字符集?

UPDATE

其實我想知道如何找到既默認服務器字符集當前服務器的字符集。

+0

你真的意味着 「*服務器字符集*」?你想做什麼?請參閱[什麼是XY問題?](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) – eggyal

+0

@eggyal:1.我想知道如何。 2.如果我正在創建adhoc數據庫(我可能需要使用utf8),每次創建數據庫時是否需要指定字符集(和排序規則)? – User

回答

6

由於Server Character Set and Collation下記載:

最初,服務器字符集和校對取決於您在啓動mysqld使用的選項。您可以使用--character-set-server作爲字符集。除此之外,您還可以添加--collation-server進行整理。如果您未指定字符集,則與說--character-set-server=latin1相同。

因此默認的服務器字符集是Windows-1252,MySQL調用latin1,除非您的MySQL副本已經編譯爲其他默認值。

手動接着說:

當前服務器字符集和歸類可以從character_set_servercollation_server系統變量的值來確定。這些變量可以在運行時更改。

因此,發現服務器角色當前使用的設置:

SHOW VARIABLES LIKE 'character_set_server' 
+0

謝謝,檢查'character_set_server'我看到它被設置爲'latin1'。我會猜想它會是'utf8'錯誤。現在我需要看看在FreeBSD下改變選項文件。 – User

+0

@用戶:看到我上面修改後的答案。 – eggyal

+0

等待!不要抹掉顯示變量的一部分答案,這很有用,實際上我相信這是我的問題的直接答案。 – User

2

documentation。這是你所需要的:

SHOW VARIABLES LIKE 'character_set%'; 
SHOW VARIABLES LIKE 'collation%'; 

甚至更​​好:

SHOW VARIABLES LIKE 'c%';