记录一下CentOS7离线安装MySQL过程
一、下载MySQL
选择对应系统的合适的版本下载
下载地址
二、上传安装包并解压
将tar包上传到MySQL官网推荐位置/usr/local/mysql(也可是任意位置)
mkdir /usr/local/mysql
解压mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar包
tar -xf mysql-5.7.37-1.el7.x86_64.rpm-bundle.tar

三、安装
因为是离线环境,建议在使用yum命令前先用以下命令清除本地mirrorlist
yum clean expire-cache
执行安装({server,client,common,libs} 为必备,上文截图解压出的安装包并不需要全部安装)
yum localinstall -y install mysql-community-{server,client,common,libs}-*
查看是否安装成功
rpm -qa | grep mysql

四、启动MySQL
启动mysql
systemctl start mysqld
查看mysql临时密码
grep 'temporary password' /var/log/mysqld.log

使用临时密码登录mysql
mysql -uroot -p你的密码
这里由于生成的临时密码恰好有个),在bash中会被识别为格式错误,所以使用
mysql -uroot -p
然后再输入密码登陆就好
五、初始化MySQL
1.修改登录密码
[不建议] 想要把密码设置简单一点需要调整密码校验强度(low=最低)
set global validate_password_policy=LOW;
[不建议] 修改密码长度限制(任意长度)
set global validate_password_length=4;
正式修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
2.允许远程访问
[不建议] 修改root访问权限,设置允许远程访问
切换到mysql数据
use mysql;
查看用户表user
select Host,User from user;
把root用户的host列修改为%(Host='%'允许任何地址)
update user set Host='%' where User='root';
刷新立即生效
flush privileges;
3.打开防火墙端口
如仍无法连接,检查防火墙状态
开放端口(mysql默认连接端口是3306)
firewall-cmd --state #查看防火墙状态
firewall-cmd --zone=public --list-ports #查看防火墙所有开放的端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent # 开放3306端口
firewall-cmd --zone=public --remove-port=3306/tcp --permanent #关闭3306端口
firewall-cmd --reload # 配置立即生效
[极度不建议] 关闭防火墙
systemctl stop firewalld.service