1.官网下载 MySQL 安装包
1.1选择版本及下载
1、官网地址
https://dev.mysql.com/downloads/mysql/
2、选择下载 MySQL 的 Linux 系统版本
Select Operating System: 选择 Red Hat ,CentOS 是基于红帽的,Select OS Version: 选择 linux 7
3、选择要下载的 MySQL 版本
这里选择 RPM Bundle 点击 Download 下载
4、点击 No thanks, just start my download. 开始进行下载
5、下载好了
6、开 Linux 终端shell
7、通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包
1.2卸载 mariadb
mariadb 这个是 Linux 系统自带的数据库系统,跟 MySQL 冲突,所以一般先卸载这个没用的数据库。
#卸载 mariadb 命令 rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps 命令装卸 mariadb
再次确认是否卸载干净。
rpm -qa | grep mariadb
1.3 创建MySQL 安装目录
1、安装目录创建在 /opt/mysql下
- 通过 cd /opt/mysql/ 命令进入根目录下的usr目录下的local目录,这个目录是放一些本地的共享资源的
2、创建 MySQL 目录
#命令 在当前目录下创建一个名为 mysql 的目录 mkdir mysql
- 通过 cd mysql 命令进入 mysql 目录
1.4上传安装包到 MySQL 目录下
1、通过 ftp 工具上传安装包
点击 窗口 -->> 传输新建文件,通过 ftp 协议来把刚下载好的 mysql 安装包传输到 CentOS7 系统中
- 成功将 MySQL 安装包上传到创建的 MySQL 目录下
1.5解压 MySQL 安装包
#命令解压 tar 包 tar -xvf mysql-8.0.11-1.el7.x86_64.rpm-bundle.tar
注意,命令中的 mysql-8.0.11-xxxxxx 需要替换成自己下载下来的版本号为准,小白新手注意。
- 解压后通过命令 ll 命令查看下解压后目录下有哪些东西
2.安装及初始化
1.6开始安装 MySQL
注意,MySQL 的安装需要有准确的顺序,上图解压出来的红框的大部分都需要安装,所以安装顺序很重要。
安装顺序: COMMON --> LIB --> LIB-COMPAT --> CLIENT --> SERVER
1、按以上顺序以此安装
- 安装 mysql-community-common
# 命令安装 common rpm -ivh mysql-community-common-8.0.11-1.el7.x86_64.rpm --nodeps --force
- 安装 mysql-community-libs
# 命令安装 libs rpm -ivh mysql-community-libs-8.0.11-1.el7.x86_64.rpm --nodeps --force
- 以此安装其他的
# 以此安装其他相关组件,注意上图红框的全部组件都安装,顺序不要错 rpm -ivh mysql-community-client-8.0.11-1.el7.x86_64.rpm --nodeps --force rpm -ivh mysql-community-server-8.0.11-1.el7.x86_64.rpm --nodeps --force ...
2、通过 rpm -qa | grep mysql 命令查看 mysql 的安装包
1.7初始化 MySQL
1、完成对 mysql 数据库的初始化和相关配置
mysqld --initialize;chown mysql:mysql /var/lib/mysql -R;systemctl start mysqld.service;systemctl enable mysqld;
2、查看数据库默认随记密码
通过命令查看数据库的密码
cat /var/log/mysqld.log | grep password
3、登录 MySQL
- 通过敲回车键进入数据库登陆界面
mysql -uroot -p
- 输入刚刚查到的密码,进行数据库的登陆,复制粘贴就行,MySQL 的登陆密码也是不显示的
4、修改 MySQL 密码
- 通过 sql 命令来修改密码 ,注意是在MySQL登录状态下
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
- 通过 exit; 命令退出 MySQL,然后通过新密码再次登陆
5、授权远程访问
- 通过以下 sql 命令,进行远程访问的授权
create user 'root'@'%' identified with mysql_native_password by 'root'; grant all privileges on *.* to 'root'@'%' with grant option; flush privileges;
6、修改加密规则
部分可视化工具,不支持最新版本 mysql 8.0 加密规则,导致无法链接,可以修改下。
- 通过一下 sql 命令修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
- 通过 flush privileges; 命令刷新修该后的权限
- 通过 exit; 命令退出 MySQL
7、设置密码永不过期
mysql8 数据库,密码默认有期限,可以设置成永不过期
alter user 'root'@'%' identified by 'Root_root123' password expire never;
3.防火墙配置
1.1关闭防火墙
- 通过以下命令,关闭 firewall
systemctl stop firewalld.service;systemctl disable firewalld.service;systemctl mask firewalld.service;
1.2安装防火墙
- 通过 yum -y install iptables-services 命令安装 iptables 防火墙
- 通过以下命令启动设置防火墙
systemctl enable iptables;systemctl start iptables;
- 通过 vim /etc/sysconfig/iptables 命令编辑防火墙,添加端口
- 点击 i 键进入插入模式
- 在相关位置,写入以下内容
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT
- 输入 wq 敲回车键保存退出,: 为英文状态下的
- 通过 systemctl restart iptables.service 命令重启防火墙使配置生效
- 通过 systemctl enable iptables.service 命令设置防火墙开机启动