MySql資料庫亂碼解決方案

來源:互聯網
上載者:User

標籤:

MySql資料庫亂碼解決方案

 

解決亂碼問題一個原則:存取系統使用一致的編碼規則。

多使用mysql的原生命令列,這樣才能做更多的事情。

?

第一步:

確認應用系統需要使用的編碼

java的預設編碼是跟隨系統的,有的說是預設UNICode,在java中可以使用 String defaultCharsetName=Charset.defaultCharset().displayName();顯示編碼。

 

第二步:

確認並設定MySql的資料庫的編碼

1. 顯示編碼,簡單的方法命令是:status; 或者mysql> SHOW VARIABLES LIKE ‘character%‘;

mysql> status

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

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin\mysql.exe  Ver 14.12 Distrib 5

.0.67, for Win32 (ia32)

 

Connection id:          3

Current database:

Current user:           [email protected]

SSL:                    Not in use

Using delimiter:        ;

Server version:         5.0.67-community-nt MySQL Community Edition (GPL)

Protocol version:       10

Connection:             localhost via TCP/IP

Server characterset:    gbk

Db     characterset:    gbk

Client characterset:    gbk

Conn.  characterset:    gbk

TCP port:               3306

Uptime:                 12 min 59 sec

 

Threads: 3  Questions: 32  Slow queries: 0  Opens: 32  Flush tables: 1  Open tab

les: 26  Queries per second avg: 0.041

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

 

2. 修改編碼

確保萬無一失必須所有的都設定成需要的字元,這裡我們以utf8為例子。

2.1 my.ini設定檔中的修改,(命令列中使用set設定的重啟服務後會失效),各個標籤下面的都需要修改:

C:\Program Files (x86)\MySQL\MySQL Server 5.0\my.ini

[client]

  default-character-set=utf8

 

  [mysql]

  default-character-set=utf8

 

  [mysqld]

  default-character-set=utf8

 

2.2 Server characterset是沒辦法在設定檔中修改的,但也不用重裝資料庫,只需要重新啟動配置程式MySQLInstanceConfig.exe就可以了。

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin\MySQLInstanceConfig.exe

在選擇編碼的地方選擇utf8就可以了,預設的是Latin1。選的二個或者第三個,第二個預設就是UTF8, 第三個手動選UTF8.

 

 

 

第三步:

重啟mysql服務

  cmd下:

  net stop mysql

  net start mysql

 

 

mysql> use qba_db;

Database changed

mysql> status;

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

C:\Program Files (x86)\MySQL\MySQL Server 5.0\bin\mysql.exe  Ver 14.12 Distrib 5

.0.67, for Win32 (ia32)

 

Connection id:          168

Current database:       qba_db

Current user:           [email protected]

SSL:                    Not in use

Using delimiter:        ;

Server version:         5.0.67-community-nt MySQL Community Edition (GPL)

Protocol version:       10

Connection:             localhost via TCP/IP

Server characterset:    utf8

Db     characterset:    utf8

Client characterset:    utf8

Conn.  characterset:    utf8

TCP port:               3306

Uptime:                 20 days 11 hours 4 min 19 sec

 

Threads: 5  Questions: 3224  Slow queries: 0  Opens: 151  Flush tables: 1  Open

tables: 0  Queries per second avg: 0.002

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

 

MySql資料庫亂碼解決方案

聯繫我們

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