Mysql下载
下载网址
https://downloads.mysql.com/archives/community/
版本选择
Mysql安装
上传解压
使用FTP工具将window本地的文件上传到Linux系统后进行解压
tar -xvf mysql-8.0.18-1.el7.x86_64.rpm-bundle.tar
卸载mariadb
获取maridb的版本信息
rpm -qa | grep mariadb
卸载上一步查询出来的maridb结果
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
安装Mysql包
安装公共程序
rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm
安装依赖包
rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm
安装客户端
rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm
安装服务端
rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm
查看是否安装成功
rpm -qa | grep mysql
登录Mysql
启动mysql
systemctl start mysqld
查找密码并登陆Mysql
cat /var/log/mysqld.log | grep password
登录Mysql
mysql -u root -p #回车之后输入前面的初始密码
修改密码和host链接
修改Mysql设置密码的规则,选择最不安全的方式和密码长度
需要注意的是Mysql8和之前有所不同的是:之前设置的时候参数的名字是alidate_password_policy(带有下划线);mysql8的配置项的名字有所改变 validate_password.policy(下划线换成了点)
set global validate_password.policy=low;
set global validate_password.length=6;
设置自己想要的密码
alter user root@localhost identified by ‘123456‘;
修改Mysql链接地址
use mysql;
update user set host=‘%‘ where user = ‘root‘;
commit;
exit;
重启Mysql服务
systemctl restart mysqld;
SQL交互查询工具链接
使用Navicat连接Mysql
使用DBeaver连接Mysql
选择mysql8链接配置
配置连接信息
需要注意的一点是连接驱动默认使用的是在线驱动,然后通过网络进行下载,这种方式非常考验网速,不建议使用;还有一种方式就是手动下载连接包,然后在配置的时候选择下载好的链接驱动包。
还有一点就是关于链接配置选项中的数据库的选择问题,使用root用户的情况下随便选择一个存在的数据库连接成功之后,所有的都会被显示出来,并操作。
遇见的问题及解决方案
问题一 error: Failed dependencies: net-tools is needed by mysql-community-server-8.0.18-1.el7.x86_64
1 warning: mysql-community-server-8.0.18-1.el7.x86_64.rpm: 2 Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY 3 error: Failed dependencies: net-tools is needed 4 by mysql-community-server-8.0.18-1.el7.x86_64 5 6 [root@basics soft]# rpm -e mariadb-libs-5.5.60-1.el7_5.x86_64 --nodeps 7 error: package mariadb-libs-5.5.60-1.el7_5.x86_64 is not installed
问题背景:CentOS7安装Mysql8过程中执行`rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm`命令语句的时候报错,上网查过执行别的语句的时候也可能出现类似的错误。
问题分析:这个问题主要在于Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY,上网查了一下关于DSA/SHA1的含义得出报这个错误是因为yum安装了旧版本的GPG keys造成的
问题原因:从 RPM 版本 4.1 开始,在安装或升级软件包时会检查软件包的签名。
问题解决方案:后面加上 --force –nodeps
例如:`rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm --force –nodeps`
问题二:ERROR 1193 (HY000): Unknown system variable ‘validate_password_policy‘
1 ERROR 1193 (HY000): Unknown system variable 2 ‘validate_password_policy‘ 3 mysql> set global validate_password_policy=low; 4 ERROR 1193 (HY000): Unknown system variable 5 ‘validate_password_policy‘ 6 mysql> ALTER USER "root"@"localhost" IDENTIFIED BY "123456" ERROR 1819 (HY000): Your password does not satisfy 7 the current policy requirements 8 mysql> set global validate_password_length=6; 9 ERROR 1193 (HY000): Unknown system variable 10 ‘validate_password_length‘
问题背景:CentOS7安装完成Mysql8之后,修改密码出现错误
问题分析:可以看到,修改 policy 和 length 的值,在MySQL5.7中好使,在MySQL8.0中无效。‘validate_password_policy‘ 变量不存在。可用命令查看 validate_password 密码验证插件是否安装。
mysql> SHOW VARIABLES LIKE ‘validate_password%‘;
问题原因:通过查看 MySQL5.7 和 MySQL8.0 密码验证插件对比,可知两个版本中,变量名不一样。(*_password_policy 和 *_password.policy )
问题解决方案:
set global validate_password. policy=low;
set global validate_password.length=6;