linux下mysql出現(xiàn)中文亂碼(中文問號)的原因及解決方法

linux下mysql出現(xiàn)中文亂碼(中文問號)的原因及解決方法

安裝完的mysql的默認字符集為 latin1 ,為了要將其字符集改為用戶所需要的(比如utf8),就必須改其相關的配置文件。

由于linuxmysql的默認安裝目錄分布在不同的文件下,不像windows一樣放在同一目錄下,只需修改其中的my.ini文件,重起后就生效了。所以先來看看linux下MySQL的數(shù)據庫文件、配置文件和命令文件分別在不同的目錄 :?

1、數(shù)據庫目錄,其所創(chuàng)建的數(shù)據庫文件都在該目錄下?

/var/lib/mysql/

2、配置文件 (mysql.server命令及配置文件所在地)?

/usr/share/mysql

3、相關命令(如mysql mysqladmin等)?

/usr/bin

4、啟動腳本(如mysql啟動命令)?

/etc/rc.d/init.d/

解決方法

1、查看默認字符集?

#mysql?-u?root?-?p?#(輸入密碼)? mysql>?show?variables?like?'character_set%';

linux下mysql出現(xiàn)中文亂碼(中文問號)的原因及解決方法

2、通過修改/etc/my.cnf文件來更改字符集

#/etc/my.cnf ? [client] default-character-set=utf8 ? [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql #?Disabling?symbolic-links?is?recommended?to?prevent?assorted?security?risks symbolic-links=0 #default-character-set=utf8 character-set-server=utf8 init_connect='SET?NAMES?utf8' ? [mysql] no-auto-rehash default-character-set=utf8 ? [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid

切記:在mysqld中加入的是 character-set-server=utf8 而不是 default-character-set=utf8。否則會報:Starting MySQL…The server quit without updating PID file [失敗]lib/mysql/localhost.localdomain.pid).異常

3、重起MySQL服務器,使其設置的內容生效?

一、啟動方式 1、使用?service?啟動:service?mysqld?start 2、使用?mysqld?腳本啟動:/etc/inint.d/mysqld?start 3、使用?safe_mysqld?啟動:safe_mysqld& ? 二、停止 1、使用?service?啟動:service?mysqld?stop 2、使用?mysqld?腳本啟動:/etc/inint.d/mysqld?stop 3、?mysqladmin?shutdown? ? 三、重啟 1、?使用?service?啟動:service?mysqld?restart 2、使用?mysqld?腳本啟動:/etc/inint.d/mysqld?restart

linux下mysql出現(xiàn)中文亂碼(中文問號)的原因及解決方法

推薦教程:Linux教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊9 分享