一、下载mysql8.0安装包
下载地址:https://dev.mysql.com/downloads/mysql/
如图所示下载MYsql8.0的RPM安装包。
将下载的rpm安装包上传到/tmp目录下面
解压缩mysql8.0 rpm包
tar -zvx mysql-8.0.24-1.el7.x86_64.rpm-bundle.tar
二、RPM安装mysql8.0
先清除centos7自带的mariadb不然后续安装mysql rpm包会报错
查询系统自带的mariadb
rpm -qa |grep mariadb
卸载mariadb(–nodeps强制卸载)
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
安装mysql相关关联支持组件
yum install -y net-tools
yum install -y perl-Module-Install.noarch
安装mysql8.0rpm包 (mysql8.0rpm包之间有依赖关系需要按顺序安装common>client-plugins>libs>client>server)
rpm -ivh mysql-community-common-8.0.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.24-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.24-1.el7.x86_64.rpm
检查mysql是否安装好
cat /etc/group | grep mysql 查看是都有mysql组
cat /etc/passwd | grep mysql 查看是否有mysql用户
给mysql用户和组赋权
chown -R mysql:mysql /var/lib/mysql/
启动mysql数据库
systemctl start mysqld
查看数据库状态
systemctl status mysqld
重启数据库命令
systemctl restart mysqld
数据库开机自启动命令
system enable mysqld
三、数据库初始化和登录
数据库初始化
mysqld --initialize --console
查看初始化数据库的随机密码
grep ‘temporary password’ /var/log/mysqld.log
登录数据库
mysql -u root -p
输入初始密码进入数据库
四、修改数据库初始化密码
修改root用户密码
mysql>alter user ‘root’ identified by ‘你的密码’; (注这里的单引号‘’要用英文输入法)
五、数据库远程连
切换mysql数据库
mysql>use mysql;
查看user表里面的登录限制
mysql>select user, host from user;
设置远程登录用户
mysql> update user set host = ‘%’ where user = ‘root’;
再次查看user和host列
mysql>select user, host from user;
出现下图所示证明root可以远程访问了(%代表任意地址,这里可以指定访问地址)
修改mysql密码验证方式权限
mysql>alter user ‘root’@’%’ identified with mysql_native_password BY 你的密码)’;
六、修改防火墙设置
查看防火墙状态
systemctl status firewalld
打开防火墙
systemctl start firewalld
临时关闭防火墙
systemctl stop firewalld
永久关闭防火墙
systemctl disable firewalld
查询端口是否开启
firewall-cmd --query-port=3306/tcp
开启3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #让此条命令永久生效,没有此参数重启后失效
重启防火墙
firewall-cmd --reload
查看哪些端口是开放的
firewall-cmd --list-port
此时就可以用Navicat等第三方工具连接数据库操作了。
参考文档
1、https://www.pianshen.com/article/5635308676/
2、https://www.cnblogs.com/xyabk/p/8967990.html
3、https://www.linuxidc.com/Linux/2019-06/159104.htm