远程连接mysql乱码,windows访问远程linux下mysql乱码问题

该博客介绍了如何在Linux环境中将MySQL的默认字符集从latin1更改为GBK。通过编辑/etc/my.cnf文件,添加默认字符集配置,并重启MySQL服务。确保Windows应用程序能正确显示中文字符。检查结果显示客户端字符集已设置为GBK,但服务器端仍然是latin1。创建数据库时应指定正确的字符集以确保全面支持GBK。
摘要由CSDN通过智能技术生成

和windwos中的Mysql一樣,默認的設置都是latin1.而並非我們需要的gbk,或者big5.所以還是需要人爲的設置:

無論是採用telnet還是直接到Linux中進入mysql中:找到/etc/目錄下的my.cnf文件:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

# Default to using old password format for compatibility with mysql 3.x

# clients (those using the mysqlclient10 compatibility package).

old_passwords=1

[mysql.server]

user=mysql

basedir=/var/lib

[mysqld_safe]

err-log=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

以上默認的文件内容,現在把它修改為如下:

[mysqld]

default-character-set=utf8

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

# Default to using old password format for compatibility with mysql 3.x

# clients (those using the mysqlclient10 compatibility package).

old_passwords=1

[client]

default-character-set=gbk

[mysql.server]

user=mysql

basedir=/var/lib

default-character-set=utf8

[mysqld_safe]

err-log=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

紅色部分為增加的部分,其餘保持不變。

然後重新啓動Mysql服務器

執行命令:

set names 'gbk';

show variables like "character_set_%";

show variables like "collation_%";

看到的結果應該是:

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

| Variable_name | Value |

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

| character_set_client | gbk |

| character_set_connection | gbk |

| character_set_database | utf8 |

| character_set_results | gbk |

| character_set_server | latin1 |

| character_set_system | utf8 |

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

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

7 rows in set (0.00 sec)

mysql> show variables like "collation_%";

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

| Variable_name | Value |

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

| collation_connection | gbk_chinese_ci |

| collation_database | utf8_general_ci |

| collation_server | latin1_swedish_ci |

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

3 rows in set (0.00 sec)

這樣儅windows程序訪問數據庫的時候就應該是會顯示正確了。如果還不行的話,可能看看在建立數據庫的時候有沒有制定了編碼:

比如:

CREATE DATABASE sample

CHARACTER SET utf8

DEFAULT CHARACTER SET utf8

COLLATE utf8_general_ci

DEFAULT COLLATE utf8_general_ci ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值