1,下载安装 mysql 源安装包命令: wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm,最新版  wget http://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm


2,安装 mysqlyum localinstall mysql57-community-release-el7-8.noarch.rpm


3,检查 mysql 源是否安装成功 yum repolist enabled | grep "mysql.*-community.*"


4,可以修改 vim /etc/yum.repos.d/mysql-community.repo 源,改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的 enabled=1 改成 enabled=0。然后再将5.6源的 enabled=0 改成 enabled=1 即可

5,安装 mysql 使用命令 yum install mysql-community-server


6,启动 mysql 使用命令 systemctl start mysqld ,使用命令  systemctl status  mysqld 进行查看状态


设置 mysql 开机启动 使用命令 systemctl enable mysqld 刷新配置  systemctl daemon-reload

 

7,查看默认生成的密码,可以使用这个密码登录 grep 'temporary password' /var/log/mysqld.log


修改密码 命令 ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!'; 也可以使用 set password for 'root'@'localhost'=password('MyNewPass4!');


注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements 错误,如下图所示: 


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


validate_password_policy:密码策略,默认为 MEDIUM 策略 
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 的密码检查规则。
共有以下几种密码策略:
策略 检查规则
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

MySQL官网密码策略详细说明:

http://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html#sysvar_validate_password_policy

修改密码策略
/etc/my.cnf 文件添加 validate_password_policy 配置,指定密码策略

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

validate_password_policy=0
如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:
validate_password = off
重新启动mysql服务使配置生效:

systemctl restart mysqld

8,添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户


*如果需要使用root用户进行远程登录的话,可以添加一个远程root用户


ip为客户端的地址,一般如果本机为192.168.236.128则host机ip为192.168.236.1,所以这里的ip要改为192.168.236.1


9,配置默认编码为utf8,修改 /etc/my.cnf 配置文件,在 [mysqld] 下添加编码配置,如下所示:


重新启动数据库,查看默认编码 show variables like '%variables%'


可能会出现远程连接失败


这需要设置一下防火墙新增3306端口远程访问

命令  iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT,

设置完之后查看是否可以通过 iptables -L -n ,

如果要限制访问 iptables -D INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT


设置之后可以访问成功。

默认配置文件路径: 
配置文件:/etc/my.cnf 
日志文件:/var/log//var/log/mysqld.log 
服务启动脚本:/usr/lib/systemd/system/mysqld.service 
socket文件:/var/run/mysqld/mysqld.pid

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐