服务器版本:CentOS 7.9 64位
MySql版本:8.0.20
开始安装
- 创建mysql目录
[root@iZwz9dhwywu1dc6q9pzwrzZ ~]# cd /usr/local
[root@iZwz9dhwywu1dc6q9pzwrzZ local]# mkdir mysql
- 进入mysql目录,下载rpm
[root@iZwz9dhwywu1dc6q9pzwrzZ local]# cd mysql
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# wget -i -c https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
- 安装 yum repo文件
3.1 检查是否下载成功
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# ll
3.2 安装repo文件
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# rpm -ivh mysql80-community-release-el7-3.noarch.rpm
3.3 检查repo文件是否安装成功
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# cd /etc/yum.repos.d/
[root@iZwz9dhwywu1dc6q9pzwrzZ yum.repos.d]# ll
/etc/yum.repos.d/目录下生成两个文件
-rw-r--r-- 1 root root 2076 Apr 25 2019 mysql-community.repo
-rw-r--r-- 1 root root 2108 Apr 25 2019 mysql-community-source.repo
- 防止yum源缓存导致不生效,更新缓存
[root@iZwz9dhwywu1dc6q9pzwrzZ yum.repos.d]# yum clean all
[root@iZwz9dhwywu1dc6q9pzwrzZ yum.repos.d]# yum makecache
如需查看yum中的mysql版本使用命令
yum repolist all | grep mysql
5. 安装MySql服务
[root@iZwz9dhwywu1dc6q9pzwrzZ yum.repos.d]# cd /usr/local/mysql
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# yum install mysql-community-server
6. 启动Mysql服务
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# systemctl start mysqld.service
可以查看一下启动状态
systemctl status mysqld
7. 设置开机启动
查看开机自启列表
systemctl list-unit-files|grep enabled
如果没有找到mysqld.service,或改服务处于disabled 状态,执行以下命令设置开机自启
systemctl enable mysqld.service
如果不生效的情况下,用systemctl daemon-reload命令刷一下
- 获取数据库初始密码
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# grep "password" /var/log/mysqld.log
- 登录MySql
[root@iZwz9dhwywu1dc6q9pzwrzZ mysql]# mysql -uroot -p
输入密码(也可以粘贴)时不显示输入态和占位符,实际已经输入了,输完直接回车就登录了,很多人碰到这里都会懵,特别说明下
- 设置密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'j@hrgYUS1Fq2IZCg'
mysql8.0版本密码要求必须符合长度(默认是8位),且必须含有数字,小写或大写字母,特殊字符;
需要修改为类似“123456”这种简单密码的情况下需要修改密码策略,参考以下命令
# 修改密码强度等级为低
mysql> set global validate_password.policy=0;
# 修改密码长度要求最少4位
mysql> set global validate_password.length=4;
# 刷新权限
mysql> flush privileges;
- 设置远程登录
# 切换数据库
mysql> use mysql;
# 远程设置
mysql> update user set host='%' where user='root';
# 刷新权限
mysql> FLUSH PRIVILEGES;
远程访问仍然有问题的,检查3306端口是否开启,云服务器去平台控制台配置安全组规则,还访问不了的关掉防火墙。