原创

centos7 安装mysql,安全控制

1.下载安装包

wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
如果需要其他版本也可根据下图选择其他版本

2.安装Mysql

rpm -ivh mysql57-community-release-el7-8.noarch.rpm

3.安装Mysql服务

cd /etc/yum.repos.d/
yum -y install mysql-server

也可以自己下载安装包安装,此处以简单为主,需要定制的参照下图:

  

  

4.启动MySQL

systemctl start mysqld

5.修改MySQL临时密码

5.1 获取临时密码并且登录
grep 'temporary password' /var/log/mysqld.log # 获取MySQL临时密码
mysql -uroot -p

5.2 如果不打算设置高强度密码,需要降低密码强度等级
set global validate_password_policy=LOW;
set global validate_password_length=8;

5.3 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'mypassword';
flush privileges;

6. 配置远程访问

use mysql;
update user set Host='%' where User='root';
flush privileges;
至此已经可以远程连接了

7. 远程访问扩展(根据需要)

上一节将root账号的远程访问限制完全放开是很不安全的,通常情况下是不会这么做的,包括服务器的root账号,如果你开通了安全防护产品,就会发现几乎每天都有暴力破解发生。
为了提升安全性,一般只开放业务账号,且只开放部分权限、以及部分白名单IP。
7.1 创建业务数据库
CREATE SCHEMA `mydb` DEFAULT CHARACTER SET utf8mb4 ;

7.2 创建用户、赋权、IP白名单
GRANT CREATE, SELECT, INSERT, UPDATE, DELETE, DROP, CREATE, INDEX, ALTER, EXECUTE ON `myuser`.* TO 'mydb'@'localhost' IDENTIFIED BY 'mypassword';
GRANT CREATE, SELECT, INSERT, UPDATE, DELETE, DROP, CREATE, INDEX, ALTER, EXECUTE ON `myuser`.* TO 'mydb'@'192.168.1.1' IDENTIFIED BY 'mypassword';
GRANT CREATE, SELECT, INSERT, UPDATE, DELETE, DROP, CREATE, INDEX, ALTER, EXECUTE ON `myuser`.* TO 'mydb'@'192.168.1.2' IDENTIFIED BY 'mypassword';

8.开机启动

systemctl enable mysqld


 





正文到此结束