RedHat7.6安装mysql8步骤
1、官网下载mysql安装包
直达链接:https://dev.mysql.com/downloads/mysql/
2、将下载好的安装包上传到redhat系统上(有多种上传方式,本次使用SecureFX上传)
上传后用SecureCRT可看到安装包
3、安装前需要先卸载自带的mariadb
可参考:https://blog.csdn.net/With__Sunshine/article/details/88653879
4、解压安装包
5、 安装必要的rpm包
必须安装的rpm包有:
- mysql-community-common
- mysql-community-libs
- mysql-community-libs-compat
- mysql-community-client
- mysql-community-server
使用rpm命令
进行安装,注意顺序
rpm -ivh mysql-community-common-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.31-1.el7.x86_64.rpm (注意这个装完才能装下面一个,否则会报错)
rpm -ivh mysql-community-libs-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.31-1.el7.x86_64.rpm(注意上面两个装完才能装这个)
6、配置my.cnf
文件(可选项,如果不需要可跳过,但是建议)
在mysql启动初始化前,一定要确认根据自己所需的MySQL参数,是否需要修改my.cnf文件,比如区分表名大小写,在MySQL8.0之前,是可以在mysql启动后进行重新修改的,但是8.0之后,只能在MySQL启动前进行配置,所以强烈建议,在第一次初始化启动MySQL前,先进行配置my.cnf
可参考:https://blog.csdn.net/gzt19881123/article/details/109511245 进行配置
7、执行MySQL初始化,并获取root账户初始密码
依次执行命令:
初始化mysql:mysqld --initialize --user=mysql --lower_case_table_names=1
获取密码:grep "password" /var/log/mysqld.log
可看到初始密码为:%D=TNz:BG36t
8、启动MySQL服务
systemctl start mysqld
systemctl status mysqld
9、使用默认密码登陆mysql
mysql -u root -p
10、修改root密码
使用默认密码登陆后,需要强制修改初始化默认的登陆密码,不然会出现如下错误:
使用如下命令修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
修改密码后现在就可以正常的去操作了
11、配置mysql允许远程访问(可选)
依次执行下列SQL进行修改允许
USE mysql;
UPDATE mysql.user SET host = '%' WHERE user = 'root';
SELECT user, host, plugin, authentication_string FROM mysql.user;
FLUSH PRIVILEGES;
12、配置开机启动启动(可选)
安装MySQL之后,默认为不自启,需要手动开启
# 查看MySQL是否自启:systemctl is-enabled mysqld
# 开启自启 :systemctl enable mysqld
# 关闭自启 :systemctl disable mysqld
13、防火墙放行3306端口
# 永久开放3306端口
firewall-cmd --permanent --zone=public --add-port=3306/tcp
# 重启防火墙
systemctl restart firewalld
# 检测设定是否生效
iptables -L -n | grep 3306
14、使用navicat连接mysql