MySQL8的安装
此次安装分为两版:一为mysql5.7得安装,二为mysql8得安装
使用工具
系统:CentOS7_64位(安装桌面形式便于操作)
Mysql:8.0.18
文档编写工具:EditPlus
连接Linux系统工具:Xshell5(推荐、但是慎用,收费软件)
Mysql连接工具:Navicat 12 for MySQL/SQLyog-64/Navicat Premium 12(可以连接所有的数据库)
安装步骤如下
1 检查是否系统自带
yum list installed | grep mysql
2 如果系统自带则删除
yum -y remove mysql-libs.x86_64
3 在线安装 mysql80
wget http://repo.mysql.com/mysql80-community-release-el7.rpm
4 接着执行这句,解释一下,这个rpm还不是mysql的安装文件,只是两个yum源文件
rpm -ivh mysql80-community-release-el7.rpm
5 这个时候,可以用yum repolist mysql这个命令查看一下是否已经有mysql可安装文件
yum repolist all | grep mysql
6 安装mysql 服务器命令(一路yes)
yum install mysql-community-server
7 安装成功后
service mysqld start
8 查看默认密码
sudo grep ‘temporary password’ /var/log/mysqld.log
配置步骤如下
登录
mysql -u root -p xxx
1. 修改 root 登录密码 (此时密码要根据密码规则设定)
alter user ‘root’@‘localhost’ identified by ‘xxx’;
2. 修改密码会出现问题
ERROR 1820 (HY000): You must reset your password using ALTER USER statement
解决问题
1、需要执行如下语句修改密码:
set password='your password';
2、如果密码符合Mysql要求,会修改成功。如果出现以下错误信息:
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
执行如下两条语句:
set global validate_password.policy=0;
set global validate_password.length=1;
然后再次执行步骤1中的语句即可。
3. 默认MySQL只允许localhost 登录,修改允许其他主机连接
在 mysql 数据库的 user 表中查看当前 root 用户的相关信息,切换到mysql 库use mysql;
使用语句select host, user, authentication_string, plugin from user;
查看表格中 root 用户的 host,默认应该显示的 localhost,只支持本地访问,不允许远程访问。
CREATE USER 'root'@'%' IDENTIFIED BY 'password';
GRANT ALL ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;
注:因navicat 不支持mysql80之后,加密规则是caching_sha2_password的版本,解决办法修改mysql 登录的加密规则为mysql_native_password
// 修改加密规则:
ALTER USER 'root'@'%' IDENTIFIED BY 'xxx' PASSWORD EXPIRE NEVER;
// 更新 root 用户密码:
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'xxx';
// 刷新权限:
FLUSH PRIVILEGES;
注1:安装失败,删除mysql
// 清除
yum clean all
yum makecache
yum -y update
// 然后重新安装
注2:卸载 mysql
yum -y remove mysql*