CentOS7下YUM安装与配置MySQL5.7

时间:2021-12-05 21:06:24
1、配置YUM源

去 MySQL官网下载MySQL的rpm安装包,点击下载地址:下载地址

CentOS7下YUM安装与配置MySQL5.7CentOS7下YUM安装与配置MySQL5.7

如果是直接在Linux中下载,则使用:

# wget  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

如果是在windows下下载,使用winSCP或者其他工具将其移动到Linux中即可。

2、本地安装YUM源

# yum localinstall mysql57-community-release-el7-8.noarch.rpm
3、安装MySQL

# yum install mysql-community-server

4、启动MySQL并加入开机启动
# systemctl start mysqld
# systemctl enable mysqld
# systemctl daemon-reload

5、修改root密码

MySQL安装完成之后,在/var/log/mysqld.log文件中root用户生成了一个随机的默认密码。可以通过以下方式查看,之后可登陆MySQL进行修改:

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

CentOS7下YUM安装与配置MySQL5.7

这里需要注意:MySQL5.7默认的密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误。

通过msyql环境变量可以查看密码策略的相关信息:

mysql> show variables like '%password%';

CentOS7下YUM安装与配置MySQL5.7CentOS7下YUM安装与配置MySQL5.7

说明:

validate_password_dictionary_file:密码策略文件,策略为STRONG才需要 

validate_password_length:密码最少长度 

validate_password_mixed_case_count:大小写字符长度,至少1个 

validate_password_number_count :数字至少1个 

validate_password_special_char_count:特殊字符至少1个 上述参数是默认策略MEDIUM的密码检查规则。

validate_password_policy:密码策略,默认为MEDIUM策略 ,共有如下三种密码策略:

策略 检查规则
0 or LOW Length
1 or MEDIUM Length; numeric, lowercase/uppercase, and special characters
2 or STRONG Length; numeric, lowercase/uppercase, and special characters; dictionary file

当然我们也可以通过修改/etc/my.cnf文件,通过添加validate_password_policy配置,来指定密码策略,如下:


validate_password_policy=0 #0(LOW),1(MEDIUM),2(STRONG)其中一种,注意2需要提供密码字典文件

如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:

validate_password = off
修改完后记得需要重新启动MySQL服务

6、添加远程登陆用户

      在我们使用mysql数据库时,有时我们的程序与数据库不在同一机器上,这时我们需要远程访问数据库。缺省状态下,mysql的用户没有远程访问的权限。

      以下语句赋予root用户从任意主机访问MySQL服务器:

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
以下语句赋予user用户使用password密码从任何主机访问MySQL服务器:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'user'@'%'IDENTIFIED BY 'password' WITH GRANT OPTION;mysql>FLUSH PRIVILEGES  #使修改生效
 

注意:

a、如果没有开启防火墙,则不需要配置开放3306端口,如果打开了firewall或者iptables防火墙,则需要在防火墙里打开3306防火墙,例如对于iptables的防火墙:

#sudo vim /etc/sysconfig/iptables
并在该文件内添加如下配置:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
退出并保存后重启防火墙:
#sudo service iptables restart

b、如果该MySQL是部署在腾讯云/阿里云上的,则需要按照他们的规则打开对外暴露的端口,例如腾讯云,默认只开启了22,内网所有端口全通,所以外网访问3306端口时需要通过腾讯安全组开通,而且默认linux操作系统没有安装防火墙。所以需要通过添加安全组来打开3306。

CentOS7下YUM安装与配置MySQL5.7


至此,CentOS7上安装MySQL完成