mysql 版本引起的 utf8mb4 问题(linux centos6.9下升级mysql)
文字输入时候存在火星文或者表情,insert到低版本的mysql中一般会报错,所以我们需要将mysql版本升级到5.5.3及以上,高版本的mysql为我们提供了utf8mb4的编码,解决了这些复杂数据的入库报错问题。我之前安装的版本是5.1.7,需要升级。
首先,将原数据库中数据进行备份
然后,升级mysql数据库
1.查看已安装的mysql数据库版本
yum list installed | grep mysql
2.卸载旧版本myslq
①关闭mysql
service mysqld stop
②卸载mysql
yum remove mysql -y
③确认是否删除干净
find / -name mysql
④删除残留文件
rm -rf /var/lib/mysql/
⑤如果有文件没有U卸载干净,就会报错。例如:文件mysql-libs-5.1.73-8.el6_8.x86_64
我们使用yum命令进行卸载:
yum remove mysql-libs-5.1.73-8.el6_8.x86_64
⑥继续验证是否有未卸载的mysql(rpm命令安装的)
rpm -qa | grep -i mysql
如果存在的话,就执行rpm -e + 查询出来的mysql文件,进行卸载
rpm -e xxxxxx
再次执行验证命令 rpm -qa | grep -i mysql ,直到mysql卸载干净。
3、yum安装mysql5.6(由于这个mysql的yum源服务器在国外,所以下载速度会比较慢,还好mysql5.6只有79M大,而mysql5.7就有182M了,所以这是我不想安装mysql5.7的原因)
①切换到local目录下
cd /usr/local/
②下载mysql5.6到yum源中
wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm
③从yum源中将mysql下载配置到本地,使其赋予可安装的能力
rpm -ivh mysql-community-release-el6-5.noarch.rpm
④查看yum源中mysql
yum repolist all | grep mysql
绿色的是可安装的,黄色是不可安装的。
⑤执行安装mysql命令
yum install mysql mysql-server mysql-devel -y
选择y/n时候,全都选择y
出现这个,说明安装成功
4、启动mysql
service mysqld start
启动成功!
5、重置mysql密码参考我之前的
https://www.cnblogs.com/yangyuke1994/p/9668177.html
最后,我们测试一下utf8mb4编码
可以看到,我们的Navicat mysql中存在了utf8mb4字符集