Linux安装和使用MySQL8.0教程
作者:俊仔
- 卸载之前旧版本MySQL
- 使用以下命令查看当前安装mysql情况
rpm -qa|grep -i mysql
显示之前安装了:
[root@vm ~]# rpm -qa|grep -i mysql
mysql-community-server-8.0.12-1.el6.x86_64
- 停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名
rpm -ev mysql-community-server-8.0.12-1.el6.x86_64
如果提示依赖包错误,则使用以下命令尝试
rpm -ev mysql-community-server-8.0.12-1.el6.x86_64 --nodeps
如果提示错误:error: %preun(xxxxxx) scriptlet failed, exit status 1
则用以下命令尝试:
rpm -e --noscripts rpm -ev mysql-community-server-8.0.12-1.el6.x86_64
查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql
查找结果如下:
[root@vm ~]# find / -name mysql
/usr/lib64/mysql
/var/lib/mysql
/var/lib/mysql/mysql
- 删除这些文件
rm –rf /usr/lib64/mysql/
rm –rf /var/lib/mysql/
rm –rf /var/lib/mysql/mysql/
最后确认MySQL是否删除完毕,如果没有返回结果表示删除完毕
rpm -qa|grep -i mysql
- 安装新版本
MySQL官网下载tar安装包
链接:https://dev.mysql.com/downloads/mysql/
复制安装包
cp /mnt/hgfs/shared/mysql-8.0.12-1.el6.x86_64.rpm-bundle.tar /usr/mysql/
进入目录
cd /usr/mysql
解压
tar -xvf mysql-8.0.12-1.el6.x86_64.rpm-bundle.tar
安装Mysql安装顺序安装
rpm -ivh mysql-community-common-8.0.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-client-8.0.12-1.el6.x86_64.rpm
rpm -ivh mysql-community-server-8.0.12-1.el6.x86_64.rpm
删除安装包
rm –f mysql-8.0.12-1.el6.x86_64.rpm-bundle.tar
- 相关设置
查看安装及存储目录
find / -name mysql -print
/usr/lib64/mysql
/usr/share/mysql 默认安装目录
/usr/bin/mysql
/etc/logrotate.d/mysql
/var/lib/mysql 数据存放目录
/opt/mysqldb/mysql
/opt/mysqldb/mysql/mysql
启动Mysql服务
service mysqld start
查看MySQL服务器的状态
service mysqld status
设置开机启动
chkconfig mysqld on
生成随机密码
grep 'temporary password' /var/log/mysqld.log
重新登陆
mysql -uroot -p
gf<afE7xhlWw
配置Mysql 密码以及权限
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Report@123';
允许root用户在任何地方进行远程登录,并具有所有库任何操作权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
- 最后是防火墙的设置
Centos6.5:
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
然后保存:
/etc/rc.d/init.d/iptables save
查看打开的端口:
/etc/init.d/iptables status
- 注意事项及问题解决
注:MYSQL8.0使用客户端偶遇 caching_sha2_password cannot be loaded 问题
原因:
在连接数据库时不能加载‘caching_sha2_password’这个插件,也就是不能对身份验证。
解决办法:
执行如下语句:
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
ALTER USER 'root'@'%' IDENTIFIED BY '123456';# 重置密码
FLUSH PRIVILEGES;
注:如果CentOS安装rpm安装MySQL时爆出警告:
警告:MySQL-server-5.5.46-1.linux2.6.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
原因:这是由于yum安装了旧版本的GPG keys造成的
解决办法:后面加上
--force --nodeps
如:
rpm -ivh mysql-community-server-8.0.12-1.el6.x86_64.rpm --force –nodeps
注:修改用户为远程登录
update user set host='%' where user='root';