mysql 字元集的系統變數說明

來源:互聯網
上載者:User

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

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.