mysql的字符集怎么寫 mysql字符集設(shè)置命令

如何修改MySQL字符集

首先,MySQL的字符集問題主要是兩個概念,一個是Character Sets,一個是Collations,前者是字符內(nèi)容

為慈利等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務,及慈利網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務為網(wǎng)站設(shè)計、做網(wǎng)站、慈利網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

及編碼,后者是對前者進行比較操作的一些規(guī)則。這兩個參數(shù)集可以在數(shù)據(jù)庫實例、單個數(shù)據(jù)庫、表、列等四個級

別指定。

對于使用者來說,一般推薦使用utf8編碼來存儲數(shù)據(jù)。而要解決亂碼問題,不單單是MySQL數(shù)據(jù)的存儲問題,還

和用戶的程序文件的編碼方式、用戶程序和MySQL數(shù)據(jù)庫的連接方式都有關(guān)系。

首先,MySQL有默認的字符集,這個是安裝的時候確定的,在編譯MySQL的時候可以通過DEFAULT_CHARSET=

utf8和DEFAULT_COLLATION=utf8_general_ci這兩個參數(shù)(MySQL5.5版本,5.1版本用--with-charset=

utf8 --with-collation=utf8_general_ci)來指定默認的字符集為utf8,這也是最一勞永逸的辦法,這樣指定后,

客戶端連接到數(shù)據(jù)庫的編碼方式也默認是utf8了,應用程序不需要任何處理。

但是遺憾的是,很多人編譯安裝MySQL的時候沒有指定這兩個參數(shù),大多數(shù)人更是通過二進制程序的方式安裝,那

么這時候MySQL的默認字符集是latin1。而這時候我們?nèi)匀豢梢灾付∕ySQL的默認字符集,通過my.cnf文件增加

兩個參數(shù):

1.在[mysqld]下添加

default-character-set=utf8(mysql 5.5 版本添加character-set-server=utf8)

2.在[client]下添加

default-character-set=utf8

這樣我們建數(shù)據(jù)庫建表的時候就不用特別指定utf8的字符集了。配置文件里的這種寫法解決了數(shù)據(jù)存儲和比較的問題

,但是對客戶端的連接是沒有作用的,客戶端這時候一般需要指定utf8方式連接才能避免亂碼。也就是傳說總的set

names命令。事實上,set names utf8命令對應的是服務器端以下幾個命令:

SET character_set_client = utf8;

SET character_set_results = utf8;

SET character_set_connection = xutf8;

但這三個參數(shù)是不能寫在配置文件my.cnf里的。只能通過set命令來動態(tài)修改。我們需要的是在配置文件里寫好一勞

永逸的辦法。那么這時候,是否有在服務端解決問題的辦法呢,可行的思路是在init_connect里設(shè)置。這個命令在每

個普通用戶連接上來的時候都會觸發(fā)執(zhí)行,可以在[mysqld]部分增加以下一行設(shè)置連接字符集:

在[mysqld]下添加:

init_connect = 'SET NAMES utf8'

總結(jié):

1、首選在編譯安裝MySQL的時候指定兩個參數(shù)使用utf8編碼。

2、次選在配置文件my.cnf或my.ini設(shè)定兩個參數(shù),同時設(shè)置init_connect參數(shù)。

3、第三在配置文件my.cnf或my.ini設(shè)定兩個參數(shù),同時客戶端的連接指定set names命令。

4、在配置文件my.cnf里的client和server處加入default-character-set參數(shù)方便管理。

mysql中怎么設(shè)置字符集

方法1:通過客戶端修改表字段的默認字符集

打開SQLyog客戶端,連接數(shù)據(jù)庫如下圖所示,點擊connection 按鈕 連接數(shù)據(jù)庫

我的數(shù)據(jù)庫名稱為edu,然后我隨意找到數(shù)據(jù)庫中test2表,右鍵-----》Alter Table

如果安裝數(shù)據(jù)庫的 時候 沒有選擇字符集設(shè)置,那么mysql數(shù)據(jù)庫默認為latin1,在箭頭部分選擇utf8字符集

方法2:用數(shù)據(jù)庫命令修改字符集

首先查看當前數(shù)據(jù)庫字符集,在命令框中執(zhí)行如下命令:show variables like 'character_set_%';

查看字符集排序設(shè)置,執(zhí)行命令:show variables like 'collation_%';

修改服務器級別字符集,執(zhí)行命令:

1,臨時修改:SET GLOBAL character_set_server=utf8;

修改表級別,命令如下:ALTER TABLE table_name DEFAULT CHARSET utf8;

修改數(shù)據(jù)庫級別,命令如下:use edu(換成你要修改的數(shù)據(jù)庫名,在這里我的數(shù)據(jù)庫為edu),,然后執(zhí)行命令:alter database edu character set utf-8;

或者修改mysql的my.ini文件中的字符集鍵值

[mysql]

[mysqld]

重啟mysql

mysql怎么設(shè)置字符集

set names gbk;

該命令是會話級的,也就是關(guān)閉客戶端后失效。

想永久保存的話需要修改配置文件my.cnf。

修改my.cnf

vi /etc/my.cnf

在[client]下添加,client為控制客戶端的。

default-character-set=utf8

在[mysqld]下添加,mysqld為控制服務器端的。

default-character-set=utf8

保存后重啟mysql:

service mysqld restart,重啟。

show variables like '%char%';查看。

文章題目:mysql的字符集怎么寫 mysql字符集設(shè)置命令
當前地址:http://muchs.cn/article14/doesjge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、Google、網(wǎng)站維護、做網(wǎng)站、動態(tài)網(wǎng)站、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)