Pwner's Blog

能全力以赴不尽力而为

0%

CentOS7 安装配置 MySQL

为了提高调试的便利性以及服务器的性能,在本地搭建服务器用于平时的开发使用。

系统:CentOS 7

MySQL 版本:8.0.21

卸载历史版本 MySQL

查看是否拥有历史版本

非首次安装需卸载历史版本 MySQL,命令查看是否有安装 MySQL 历史版本组件

1
rpm -qa|grep mysql

如有,在安装新版本 MySQL 前需要移除已安装的历史组件

查看 MySQL 服务状态

1
service mysqld status

暂停 MySQL 服务

1
service mysqld stop

卸载 MySQL 服务

需要把每个组件全部移除,注意可能会有组件的依赖前后顺序。

1
2
3
rpm -ev [需要移除组件的名称]
或者
rpm -e --nodeps [需要移除组件的名称] //此命令为强制卸载

安装 MySQL

使用 rpm 来安装 MySQL

因为 CentOS 7 默认安装的数据库是 Mariadb, 所以使用 yum 命令是无法安装 MySQL 的,只会更新 Mariadb。使用 rpm 来进行安装。可以在 MySQL 的 repo 源仓库右键复制指定版本的数据库。

1
wget http://repo.mysql.com/mysql80-community-release-el7-1.noarch.rpm

安装 mysql80-community-release-el7-1.noarch.rpm 包

1
sudo rpm -ivh mysql80-community-release-el7-1.noarch.rpm

安装完成后会在 /etc/yum.repos.d 文件夹里面获得两个文件:mysql-community.repo && mysql-community-source.repo

使用 yum 安装 mysql 服务

1
sudo yum install mysql-server

显示 Complete! 说明安装成功

设置开机启动 MySQL 服务

1
systemctl list-unit-files|grep mysqld

如果显示

则表示已经设置为开机启动,如果没有设置为开机启动则执行

1
systemctl enable mysqld.service

查看 MySQL 是否启动未启动则执行启动服务命令

1
2
查看是否启动MySQL服务
ps -ef|grep mysql
1
2
启动服务
systemctl start mysqld.service

初始化 MySQL

1
mysqld --initialize

查看 MySQL 初始默认密码

1
grep 'temporary password' /var/log/mysqld.log

使用默认密码登录 MySQL

根据 MySQL8.0 的要求,必须要重置密码(生产环境禁止使用弱口令)

1
alter user 'root'@'localhost' identified by '12345678';

如果设置密码时候出现提示

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

代表需要降低 Policy 的等级后再执行,或者增加密码的强度

1
set global validate_password.policy=0;

开启 MySQL 远程连接

1
2
3
4
5
use mysql;
#修改root账户权限
update user set host = '%' where user = 'root';
#刷新权限
flush privileges;

用户授权

1
GRANT ALL PRIVILEGES ON *.* TO ['root'@'%'](mailto:'root'@'%') IDENTIFIED BY 'MyPassword' WITH GRANT OPTION; FLUSH PRIVILEGES;

修改系统防火墙配置

CentOS 7 默认不再使用 iptables 来管理防火墙,而是使用自带的 firewall

查看 firewall 服务状态

1
systemctl status firewalld

查看 firewall 的状态

1
firewall-cmd --state

开启、重启、关闭、firewalld.service 服务

1
2
3
4
5
6
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop

查看防火墙规则

1
firewall-cmd --list-all 

查询、开放、关闭端口

1
2
3
4
5
6
7
8
9
10
11
12
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放端口(以80端口为例)
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;

现在就可以通过 Navicat 等工具远程连接数据库进行操作了~

如果文章对你有用,可以请我喝杯咖啡~
  • 本文作者: Pwner
  • 本文链接: https://pwner.cn/posts/f450c0b5.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!