1.character_set_server和collation_server
這兩個變數是伺服器的字符集。在系統啟動的時候可以通過--character-set-server和--collation-server來設定它們。如果沒有的話系統會把這兩各變數設定成預設值latin1和latin1_swedish_ci。預設值是編譯在程式中的,只能通過重新編譯來改變。
這兩個變數只用來為create database命令提供預設值。
2.character_set_database和collation_database
這兩個變數是當前資料庫的字符集。create database命令有兩個引數可以用來設定資料庫的字符集和比較規則。資料庫建立會在資料庫目錄下的db.opt檔案中記錄資料庫的選項,資料庫的字符集設定也記錄在裡面。當我們用use改變當前資料庫時,mysql會讀資料庫db.opt檔案來設定這兩個變數。當沒有當前資料庫的時候這兩個變數等於character_set_server和collation_server。
這兩個變數只用來為create table命令提供預設值。
3.character_set_client
這個變數用來決定mysql怎麼解釋客戶端發到伺服器的sql命令文字。
4.character_set_connection和collation_connection
這兩個變數用來決定mysql怎麼處理客戶端發來的sql命令。mysql會把sql命令文字從character_set_client編碼轉到character_set_connection然後再執行。collation_connection在比較sql中的直接量時使用。
5.character_set_results
當sql有結果返回的時候這個變數用來決定發給客戶端的結果中文字量的編碼。
還有幾個字符集概念沒有系統變數表示。
6.表的字符集
create table 的引數裡可以設定,為列的字符集提供預設值。
7.列的字符集
決定本列的文字資料的儲存編碼。列的比較規則比collation_connection高。也就是說mysql會把sql中的文字直接量轉成列的字符集後再與列的文字資料比較。
8.character_set_system
這是元資料的字符集,資料庫,表和列的定義都是用的這個字符集。它有乙個定值, 是utf-8
mysql 字符集的系統變數說明
1.character set server和collation server 這兩個變數是伺服器的字符集。在系統啟動的時候可以通過 character set server和 collation server來設定它們。如果沒有的話系統會把這兩各變數設定成預設值lat程式設計客棧in1和latin...
mysql 集群字符集 Mysql 字符集
字符集與字元比較 字符集字符集是某種字元的集合,比如最常見的ascii碼,由127個字元組成,只需要乙個位元組就能表示 我們常說的字符集還是gbk iso utf8 mysql 我們使用得最多的字符集就是gbk 和 utf8了 他們都是變長字符集,如果字元在ascii範圍內就使用乙個位元組表示,其他...
mysql字符集 MySQL字符集選擇
一 怎樣選擇合適的字符集 對mysql資料庫來說,字符集很重要,因為資料庫儲存的資料大部分都是各種文字,字符集對資料庫的儲存,處理效能都會有所影響。主要考慮一下幾方面的因素 1.滿足應用支援語言的需求,應用處理各種各樣的文字,發布到使用不同語言的國家或地區,可以選擇unicode字符集,mysql的...