为公司服务器安装MySQL,记录一下过程

注意:在CentOS中默认是装有MariaDB的,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。

第一步: 下载并安装MySQL官方的Yum Repository

1、下载安装文件

1
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

使用上面的命令就直接下载了安装用的Yum Repository,大概25KB的样子,然后就可以直接yum安装了。

2、执行安装

1
yum -y install mysql57-community-release-el7-10.noarch.rpm

之后就开始安装MySQL服务器。

1
yum -y install mysql-community-server

安装完成,会出现Complete!的提示。

第二步: MySQL数据库设置

1、启动MySQL

1
systemctl start mysqld.service

查看MySQL运行状态,运行状态如图:

1
systemctl status mysqld.service

2、查找临时密码

通过如下命令可以在日志文件中找出密码:

1
grep "password" /var/log/mysqld.log

注意:如果这里在日志文件中查找不到密码,很可能是之前安装过MySQL没有卸载干净。

处理方法:

  1. 删除原来安装过的mysql残留的数据(这一步非常重要,问题就出在这)

    1
    rm -rf /var/lib/mysql
  2. 重启mysqld服务

    1
    systemctl restart mysqld
  3. 这时候再去找临时密码就能找到了

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

3、进入数据库并修改密码

1
mysql -uroot -p

输入查找到的临时密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

1
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

其中‘new password’替换成你要设置的密码,注意:密码设置必须要大小写字母数字和特殊符号(,/‘;:等),不然不能配置成功

如果要修改为root这样的弱密码,需要进行以下配置:

查看密码策略

1
show variables like '%password%';

修改密码策略

1
vi /etc/my.cnf

在文件中添加一下配置。

选择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件

1
2
3
4
#添加validate_password_policy配置
validate_password_policy=0
#关闭密码策略
validate_password = off

重启mysql服务使配置生效

1
systemctl restart mysqld

然后就可以修改为弱密码了。

第三步: 开启MySQL远程访问

1、开启MySQL的远程访问

执行以下命令开启远程访问限制

注意:

1、下面命令开启的可访问数据库的IP: 192.168.0.1,如要开启所有的,用%代替IP

2、需要用自己的密码代替下面的password

1
grant all privileges on *.* to 'root'@'192.168.0.1' identified by 'password' with grant option;

然后再输入下面两行命令

1
2
flush privileges; 
exit;

2、为firewall添加开放端口

添加mysql端口3306

1
firewall-cmd --zone=public --add-port=3306/tcp --permanent

然后再重新载入

1
firewall-cmd --reload