(Linux)mysql设置数据库编码为utf-8方法以及遇到的一些问题

来源:互联网 发布:手机淘宝有免费装修 编辑:程序博客网 时间:2024/06/06 00:37
今天在Linux上部署项目,需要设置mysql数据库的编码为utf-8,下面说明一下设置的方法以及遇到的问题:
首先,查看mysql服务是否启动
[root@localhost ~]# ps -ef|grep mysql
如图,有出现以下mysql的信息,说明服务已经启动。
否则,启动mysql服务
[root@localhost ~]# service mysql start
连接数据库
[root@localhost ~]# mysql -u root -pEnter password:输入mysql连接密码
查看数据库字符集
mysql> show variables like 'character%'
看到如下信息
可以看到mysql服务端character_set_server是latin1,下面统一设置数据库编码为utf-8
[root@localhost ~]# cd /etc/mysql/mysql.conf.d
下载mysqld.cnf后编辑重新上传或vim直接编辑都可以:
[root@localhost ~]# sz mysqld.cnf[root@localhost ~]# rz
[root@localhost ~]# vim mysqld.cnf
在mysqld.cnf文件中[mysqld]的后面添加
character_set_server = utf8
PS:注意不是default-character-set = utf8,因为好像mysql5.5以后就就不支持default-character-set = utf8了,
那么设置default-character-set = utf8会有什么问题呢,下面是我遇到的问题,这里也提一下,以免浪费大家宝贵的时间,
首先跟上面的过程一样,在mysql.conf.d添加
default-character-set = utf8
这时候以为高枕无忧了
[root@localhost ~]# service mysql restart
重启mysql服务,报错提示如下:
Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details.
这个提示建立我们执行引号中的两个命令查看下,按照错误提示,执行了下面两个命令
[root@localhost ~]# systemctl status mysql.service[root@localhost ~]# journalctl -xe
出现以下信息:
然而发现并没有什么luan用,你看得懂?反正我是看不出什么问题,不知道的还以为环境或系统问题呢
这时候我去查看了mysql的错误日志信息
[root@localhost ~]# cd /var/log/mysql/
sz下载或vim编辑查看,最好下载来编辑查看:
[root@localhost ~]# sz error.log
发现了如下EEROR:
2017-10-25T03:01:37.024610Z 0 [ERROR] unknown variable 'default-character-set=utf8'
这不就是设置mysql数据库编码的时候在mysql.conf.d添加了default-character-set=utf8这样一行代码吗?
这时候才了解到时设置数据库编码的时候写错了,从网上了解到mysql5.5及以后版本,好像都不能用default-character-set了,于是
default-character-set = utf8
改成
character_set_server = utf8
于是我就这样改了
重启mysql服务成功!
[root@localhost ~]# service mysql restart
连接mysql,重新查看数据库字符集:
mysql> show variables like 'character%'
OK,没毛病,设置成功,老铁!
总结:linux设置mysql编码为utf-8方法为
[root@localhost ~]# cd sz mysqld.cnf/etc/mysql/mysql.conf.d
找到mysqld.cnf文件,在文件中的[mysqld]后面添加
character_set_server = utf8
重启mysql服务生效
[root@localhost ~]# service mysql restart
原创粉丝点击