明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

MySQL中文亂碼怎么處理?

[摘要]mysql數(shù)據(jù)庫(kù)越來越受大家的歡迎了。中國(guó)人往數(shù)據(jù)庫(kù)里存數(shù)據(jù),總的也不會(huì)少了中文,可mysql存中文默認(rèn)會(huì)亂碼。這里我們需要來做一些配置,讓它不再是“存進(jìn)去是中文,查出來是各種問號(hào)”了。1.我們可以...
mysql數(shù)據(jù)庫(kù)越來越受大家的歡迎了。

中國(guó)人往數(shù)據(jù)庫(kù)里存數(shù)據(jù),總的也不會(huì)少了中文,可mysql存中文默認(rèn)會(huì)亂碼。

這里我們需要來做一些配置,讓它不再是“存進(jìn)去是中文,查出來是各種問號(hào)”了。

1.我們可以先看看自己的mysql數(shù)據(jù)庫(kù),中文是否亂碼。

登錄數(shù)據(jù)庫(kù),再帶的test數(shù)據(jù)庫(kù)中,創(chuàng)建一張表,然后插入中文,查詢結(jié)果。我們可以看到,中文變成了問號(hào)。

show databases;
use test;
create table users(name varchar(50));
insert into users values('張三');
select * from users;

1.png

2.我們來查詢一下,各個(gè)字符相關(guān)的變量的值是什么。

輸入 SHOW VARIABLES LIKE 'character%';

我們可以看到 character_set_database的值為latin1。大家的值可能和我的不一定一樣,總體來說應(yīng)該不會(huì)是都為utf8。

2.png

3.如果有多處不是utf8,我們需要來修改mysql的配置文件my.ini。

一般位于安裝路徑根目錄,或者安裝路徑根目錄的bin下,或者Linux下/etc/my.cnf。

3.png

4.在my.ini中:

搜索到[client],修改或添加default-character-set=utf8;

搜索到[mysqld],修改或添加character-set-server=utf8;

搜到到[mysql],修改或添加default-character-set=utf8;

4.png


5.重啟mysql數(shù)據(jù)庫(kù)。

Windows下可以運(yùn)行services.msc,找到mysql服務(wù),重啟;

Linux下,可以/etc/init.d/mysqld restart;

我的是xampp,沒有添加服務(wù),直接先點(diǎn)擊stop,再start就好了。

5.png


6.查看各變量的值;

SHOW VARIABLES LIKE 'character%';

或者

status

6.png

7.測(cè)試修改之后是否仍亂碼。

create database baidujingyan;
use baidujingyan;
create table users(name varchar(50));
insert into users values('張三');
select * from users;

可以看到,我們的數(shù)據(jù)庫(kù)已經(jīng)能正常顯示中文了。

7.png

注意事項(xiàng)

如果在程序中,還會(huì)出現(xiàn)亂碼,可以在添加 set names utf8

以上就是MySQL中文亂碼如何解決?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


學(xué)習(xí)教程快速掌握從入門到精通的SQL知識(shí)。