Ubuntu 16.04中如何修改mysql的编码为utf-8

积累,小白也有大神梦

在云服务器上搭建mysql数据库的时候,发现默认的编码并不是utf-8,所以在对数据库进行发布的时候,遇到了乱码的问题。只有将mysql的编码修改之后,然后把表删除,在重新建表才摆脱了这个问题。这里对修改mysql的编码做一简单总结。

一、查看mysql的编码

登录mysql以后,输入:
show variables like ‘%character%‘;
即可显示mysql的编码。默认情况下,应该不是utf-8,所以需要对它进行修改。

二、修改mysql编码

修改mysql编码的方式有两种,第一种是登录mysql之后,在命令行输入命令,对编码进行修改。但是我尝试这种方法,在我重新登录之后,编码依然如此没有被修改。第二中方法是在mysql的配置文件中修改编码。

第一种方法

当我们从命令行登录到mysql之后,我们通过查看mysql编码的命令查看mysql中的编码情况。然后通过下面命令对它进行修改。
set 所要修改的属性名称=”utf8”
例如: SET character_set_client = utf8;
注意:是utf8而不是utf-8或utf_8
修改结束之后,我们可以通过原本的查看编码命令查看,这里已经将它修改了过来。但是在我这里只是临时行的,在你哪里我就不妄加揣测了。
当然我们也可以通过命令修改指定的数据库编码,或者指定的表、字段的编码,也可以创建数据库的时候指定编码,命令如下:
alter database 数据库名 character set utf8; //修改数据库编码
alter table 表名 character set utf8; //修改表编码
alter table 表 modify 字段名 字段类型 CHARACTER SET utf8;//修改字段编码
create database 数据库名 character set utf8; //创建数据库时指定编码
create table 表名 …….. DEFAULT CHARSET=utf8;//创建表时指定编码

第二中方法

修改配置文件,配置文件是/etc/mysql/my.cnf(windows下好像配置文件在mysql的安装路径下的my.ini文件里,似乎现在把这个文件改名了,你可以在把它改成my.ini):
在[client]下追加:
default-character-set=utf8
在[mysqld]下追加:
character-set-server=utf8
在[mysql]下追加:
default-character-set=utf8
然后保存并退出。

重启服务:
service mysql restart 或
/etc/init.d/mysqlrestart

从新登录查看,即可发现已经被改变。

总结:最好两种方法,都一起试试,这样可以保证万无一失。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值