mysql如何更改数据库字符编码?借助客户端工具很容易就可以更改了,下面来看一下。
01打开navicat客户端工具,在左边找到要更改的数据库。
02右键点击这个数据库,在菜单上点击数据库属性选项。
03在d出的属性窗口上,点击默认字符集下的下拉框。
04在d出的下拉选项里,点击选中要使用的字符集就行了,比如选择常用的utf8字符集,点击ok按钮就行了。
为什么要修改数据库字符集原因如下,很多人编译安装MySQL的时候没有指定这两个参数,大多数人更是通过二进制程序的方式安装,那么这时候MySQL的默认字符集是latin1。而这时候我们仍然可以指定MySQL的默认字符集,通过my.cnf文件增加两个参数:1.在[mysqld]下添加default-character-set=utf8(mysql5.5版本添加character-set-server=utf8)2.在[client]下添加default-character-set=utf8这样我们建数据库建表的时候就不用特别指定utf8的字符集了。配置文件里的这种写法解决了数据存储和比较的问题,但是对客户端的连接是没有作用的,客户端这时候一般需要指定utf8方式连接才能避免乱码。也就是传说总的setnames命令。事实上,setnamesutf8命令对应的是服务器端以下几个命令:SETcharacter_set_client=utf8SETcharacter_set_results=utf8mysql数据库的默认编码并不是utf-8,所以需要将数据库的编码改成utf-8。
具体的方法步骤如下:
安装mysql后,启动服务并登陆,使用show variables命令可查看mysql数据库的默认编码:
由上图可见database和server的字符集使用了latin1编码方式,不支持中文,即存储中文时会出现乱码。以下是命令行修改为utf-8编码的过程,以支持中文。
1、关闭mysql服务
[plain] view plaincopy
service mysql stop
2、修改 /etc/mysql/my.cnf (默认的安装路径)
[plain] view plaincopy
vim /etc/mysql/my.cnf
打开my.cnf后,在文件内的[mysqld]下增加如下两行设置:
[plain] view plaincopy
character_set_server=utf8
init_connect='SET NAMES utf8'
(具体如截图所示):
保存退出。
3、重新启动mysql服务
[plain] view plaincopy
service mysql start
至此,完成修改默认编码,登陆mysql后重新使用show variable like '%character%'获得的输出效果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)