CentOS7安装配置MySQL8.0
- 安装MySQL
-
-
- 添加MySQL源
- 安装
- 开启服务
-
- 修改密码,开启远程访问
-
-
- 获取初始密码并登录
- 修改密码
- 远程访问
- 编码格式
- 开机自启等常用命令
- 参考文章:
-
安装MySQL
添加MySQL源
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
rpm -ivh mysql80-community-release-el7-1.noarch.rpm
yum clean all
yum makecache
在第一次运行
yum makecache
时可能会失败,报错如下:
failure: repodata/repomd.xml from base: [Errno 256] No more mirrors to try.
再次执行上条命令即可,出现:
元数据缓存已建立
安装
yum install mysql-community-server
开启服务
systemctl start mysqld.service
修改密码,开启远程访问
获取初始密码并登录
MySQL在安装后会创建一个
[email protected]
账户,并且把初始的密码放到了
/var/log/mysqld.log
文件中;
cat /var/log/mysqld.log | grep password
得到初始密码
o7X/bR9:uk0*
后登录:
[r[email protected] ~]# cat /var/log/mysqld.log | grep password
2020-11-26T07:55:59.456806Z 6 [Note] [MY-010454] [Server] A temporary password is generated for [email protected]: o7X/bR9:uk0*
mysql -u root -p #会提示输入密码
修改密码
MySQL8.0
要求必须修改密码:
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
mysql> flush privileges;
mysql> exit;
远程访问
进入
mysql
:
mysql -u root -p #提示输入密码 “123456”
mysql> use mysql;
//Mysql默认不允许远程登录,所以需要开启远程访问权限
mysql> select user,authentication_string,host from user;
mysql> update user set host = '%' where user = 'root';
mysql> FLUSH PRIVILEGES;
//navicat 连接 mysql 出现`Client does not support authentication
// protocol requested by server`
mysql> alter user 'root'@'%' identified with mysql_native_password by '123456';
开启防火墙:
firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开放3306端口
firewall-cmd --reload # 配置立即生效
即可使用
Navicat
远程访问
编码格式
默认
MySQL8.0
采用
utf8mb4
方式编码,兼容
utf8
,可以通过下面的命令进行查看:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIiclRnblN2XjlGcjAzNfRHLGZkRGZkRfJ3bs92YsYTMfVmepNHL0MmeNJTSq5keRpHW4Z0MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL2QjN4ITOwcTM2ITMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
开机自启等常用命令
systemctl enable mysqld.service //开机自启
systemctl start mysqld.service //启动mysql
systemctl stop mysqld.service //结束
systemctl restart mysqld.service //重启
mysql> select version(); //查看mysql版本
参考文章:
- [1] CentOS7安装mysql8.0
- [2] CentOS下MySQL 8.0安装部署,超详细!
- [3]mysql8.0开启远程访问