Linux下 mysql中文亂碼

2021-06-14 15:27:02 字數 2154 閱讀 9408

中文存入 mysql 資料庫出現的亂碼,從 jsp 頁面讀取 mysql 中文資料出現亂碼,以及在 sell 環境下檢視資料庫表中文資料出現亂碼。為了解決中文亂碼問題,首先是採用同一字符集。本人採用的是

gbk. 1.

安裝mysql後首先修改配置檔案

/etc/my.cnf (注:可能安裝的目錄不同,通過搜尋my.cnf這個檔案就可以方便地找到my.cnf這個目錄)。找到my.cnf這個檔案後,在檔案中新增如下內容(

注:只新增,檔案中的其它內容不需要改變)。

[client]

default-character-set=gbk

[mysqld_safe]

default-character-set=gbk

[mysqld]

default-character-set=gbk

[mysql]

default-character-set=gbk

2. 重新啟動

mysql

服務,進入

sell

終端,進入

mysql

的命令提示符下輸入如下指令:

mysql>show variables like '%char%';

如果出現的列表各項內容和以下相同表明配置成功了,

+---------------------

-+-----

----------------

| variable_name | value

+-----------------------+-

--------------------

| character_set_client | utf8

| character_set_connection | utf8

| character_set_database | utf8 |

character_set_filesystem | binary

| character_set_results | utf8

| character_set_server | utf8

| character_set_system | utf8

| character_sets_dir | /usr/share/mysql/charsets/

+---------------------+

---------------------- 3.

到此基本上解決了

mysql

的中文亂碼問題。最好是重新啟動一下您的作業系統!這樣已做的改變都能及時的生效。

(如果還要出現亂碼的話,最好是寫乙個過濾亂碼的過濾器,一切問題都會解決的).

4.在要傳送中文或者要讀取中文的

jsp頁面(最好所有頁面)都新增如下宣告:

<%@page pageencoding="gbk"%>

<%@ page contenttype="text/html;charset=gbk"%>

<% request.setcharacterencoding("gbk"); %> 在

標籤對中新增如下:

注意在servlet

中對請求進行響應的方法中同樣要有:

response.setcontenttype("text/html;charset=gbk");

(由於不明原因

firefox

傳送的請求仍然是

latin1

的時候執行這一步)

在將請求的引數插入資料庫之前還要再執行一次轉碼(將

latin1

編碼轉換為

utf-8)

,例如:

string

utf8_str

= new string(

latin_str

.getbytes("latin1"),"gbk");

這一步可以寫在乙個過濾器中,不怕麻煩也可以在每一次在將請求資料插入之前都進行一次轉碼。

另外:在連線資料庫的時候可以不用加上字符集引數了,直接用使用者名稱和密碼連線就可以了,如連線:

con=drivermanager.getconnection("jdbc:mysql://localhost:3306/

資料庫名

","使用者名稱

","密碼

");

linux下mysql中文亂碼 中文問號 解決辦法

安裝完的mysql的預設字符集為 latin1 為了要將其字符集改為使用者所需要的 比如utf8 就必須改其相關的配置檔案 由於linux下mysql的預設安裝目錄分布在不同的檔案下 不像windows一樣放在同一目錄下,只需修改其中的my.ini檔案,重起後就生效了 所以先來看看linux下mys...

linux下中文亂碼

輸入locale檢視 如果像這種是可以看到中文的 今天無意間執行了命令導致中文全部展示?了 解決辦法 輸入export lc all zh cn.utf 8 etc locale.conf就可以了 方法二 這種方法更有效 vim etc locale.conf lang zh cn.utf 8 la...

Linux下mysql中文亂碼解決方案

中文存入 mysql 資料庫出現的亂碼,從 jsp 頁面讀取 mysql 中文資料出現亂碼,以及在 sell 環境下檢視資料庫表中文資料出現亂碼。為了解決中文亂碼問題,首先是採用同一字符集。本人採用的是 gbk.1.安裝mysql後首先修改配置檔案 etc my.cnf 注 可能安裝的目錄不同,通過...