mysql伺服器字元集查詢和設定方法

來源:互聯網
上載者:User


1、查看 MySQL 資料庫伺服器和資料庫字元集

show variables like '%char%';

2、查看當前安裝的 MySQL 所支援的字元集。

show charset;

3、設定編碼:

修改my.cnf
vi /etc/my.cnf
在[client]下添加
default-character-set=utf8
在[mysqld]下添加
default-character-set=utf8

儲存,重啟mysql即可;

 
修改資料庫的字元集
mysql>use mydb
mysql>alter database mydb character set utf-8(utf8);
建立資料庫指定資料庫的字元集
mysql>create database mydb character set utf-8(utf8);

或者用mysql命令修改編碼

通過MySQL命令列修改:
set character_set_client=utf8;

set character_set_connection=utf8;

set character_set_database=utf8;

set character_set_results=utf8;

set character_set_server=utf8;

set character_set_system=utf8;

set collation_connection=utf8;

set collation_database=utf8;

set collation_server=utf8;


mysql修改表、欄位字元集

把表預設的字元集和所有字元列(CHAR,VARCHAR,TEXT)改為新的字元集:

ALTER TABLE tbl_name CONVERT TO CHARACTER SET character_name [COLLATE ...]
如:ALTER TABLE logtest CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
只是修改表的預設字元集:

ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name [COLLATE...];
如:ALTER TABLE logtest DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
修改欄位的字元集:

ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE ...];
如:ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;
查看資料庫編碼:

SHOW CREATE DATABASE db_name;
查看錶編碼:

SHOW CREATE TABLE tbl_name;
查看欄位編碼:

SHOW FULL COLUMNS FROM tbl_name;


MySQL中的字元集轉換過程

1. MySQL Server收到請求時將請求資料從character_set_client轉換為character_set_connection;

2. 進行內部操作前將請求資料從character_set_connection轉換為內部操作字元集,其確定方法如下:

• 使用每個資料欄位的CHARACTER SET設定值;

• 若上述值不存在,則使用對應資料表的DEFAULT CHARACTER SET設定值(MySQL擴充,非SQL標準);

• 若上述值不存在,則使用對應資料庫的DEFAULT CHARACTER SET設定值;

• 若上述值不存在,則使用character_set_server設定值。

3. 將操作結果從內部操作字元集轉換為character_set_results。


其他注意事項

• my.cnf中的default_character_set設定隻影響mysql命令串連伺服器時的串連字元集,不會對使用libmysqlclient庫的應用程式產生任何作用!

• 對欄位進行的SQL函數操作通常都是以內部操作字元集進行的,不受串連字元集設定的影響。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.