MySQL中文支援

2021-09-08 15:35:02 字數 1425 閱讀 3457

mysql中資料型別varchar(n)占用的最長位元組是3*n.我們知道utf-8編碼1個漢字佔3個位元組.

即 varchar(n)最多可以容納3個英文本元或者3個漢字,當然混合的(如1個漢字2個字母)也行.

安裝mysql預設的編碼是latin,修改 mysql安裝目錄下的my.cnf檔案,我的ubuntu10.04是在/etc/mysql路徑下.

先關閉 mysql-----$sudo /etc/init.d/mysql stop.

在[client]和[mysqld]下面分別加上這麼一句話: default-character-set=utf8

但是這之前你建立的database還是不支援中文.

或者在執行sql語句前先執行"set names gb2312"或 "set names utf8"

注意如果沒有關閉 mysql就修改my.cnf檔案那你就跟我一樣悲劇了----/var/run/mysqld/下的2個檔案都丟失了,其中包括mysqld.sock,這就導致你再也無法登入 mysql了.

網上說了移找回 mysqld.sock檔案的方法,但都不行,我重灌mysql了.

話說把mysql卸了重灌也不是那麼容易滴,要把mysql卸乾淨,你得:

1.sudo apt-get autoremove --purge mysql-server-5.1(我怎麼知道我裝的版本是5.1呢?可以去ubuntu軟體中心裡看一下)

2.sudo apt-get remove mysql-server

3.sudo apt-get autoremove mysql-server

4.sudo apt-get remove mysql-common //這個很重要

由於我之前還裝了個phpmyadmin,做完以上4步後出現乙個broken package,這時候可以使用"新得力"解決,好像是叫這個名字,英文名字是"synaptic package manager",在system/administration下面.

破損包修復完畢.

下面要重新安裝mysql了:

1.sudo apt-get install mysql-server

2.sudo apt-get install mysql-client

3.sudo apt-get install php5-mysql

// 安裝php5-mysql 是將php和mysql連線起來

執行sudo netstat -tap | grep mysql

可以看到類似下面的行:

tcp 0 0 localhost.localdomain:mysql *:* listen -

如果伺服器不能正常執行,可以通過下列命令啟動它:

sudo /etc/init.d/mysql restart

進入mysql

$mysql -u root -p

password:

MySQL支援中文

1.修改資料庫編碼格式為utf8 推薦 create database db name default character set utf8 2.修改表的編碼格式為utf8 不推薦 在建立表後,插入資料之前,將表的編碼格式設定成utf8 alter table table name convert ...

MySQL中文支援

mysql中資料型別varchar n 占用的最長位元組是3 n.我們知道utf 8編碼1個漢字佔3個位元組.即varchar n 最多可以容納3個英文本元或者3個漢字,當然混合的 如1個漢字2個字母 也行.安裝mysql預設的編碼是latin,修改 mysql安裝目錄下的my.cnf檔案,我的ub...

讓mysql支援中文

我用spring ibatis mysql搭了乙個框架,但是中文顯示亂碼。解決問題的路徑 1 在資料庫連線的url 後加上 useunicode true characterencoding utf8 2 修改mysql的配置檔案my.ini 在 client 後加上default characte...