一、下载
首先进入官网
https://dev.mysql.com/downloads/mysql/
选择 Red Hat Enterprise Linux 7 / Oracle Linux 7
分别将
① mysql-community-server-5.7.19-1.el7.x86_64.rpm
② mysql-community-client-5.7.19-1.el7.x86_64.rpm
③ mysql-community-common-5.7.19-1.el7.x86_64.rpm
④ mysql-community-libs-5.7.19-1.el7.x86_64.rpm
下载下来。
(下载之后的路径在/root/下载,为了方便我将下载包移到了/opt下面)
二、检查卸载mariadb-lib
检查
[root@localhost opt]# rpm -qa|grep mariadb
mariadb-libs-5.5.52-1.el7.x86_64
卸载
[root@localhost opt]# rpm -e mariadb-libs-5.5.52-1.el7.x86_64 --nodeps
三、安装mysql-server
rpm -ivh mysql-community-common-5.7.19-1.el7.x86_64.rpm mysql-community-libs-5.7.19-1.el7.x86_64.rpm mysql-community-client-5.7.19-1.el7.x86_64.rpm mysql-community-server-5.7.19-1.el7.x86_64.rpm
也就是将步骤1里面下载的几个装上,但要注意顺序,先是common,再是libs,client,最后是server
四、修改root本地密码
-
安装完成后,在
/var/log/mysqld.log
文件暗中给root生成一个随机默认密码:
[root@localhost opt]#grep 'temporary password' /var/log/mysqld.log
-
然后进入/var/lib/mysql中,开启服务
[root@localhost mysql]# systemctl start mysqld.service
-
然后cd退出来查看密码
[root@localhost ~]# cat /var/log/mysqld.log |grep password
2017-08-14T08:10:48.442103Z 1 [Note] A temporary password is generated for root@localhost: :EYc>?fvn4UT
- 知道密码后登陆mysql
[root@localhost ~]# mysql -uroot -p
Enter password:
- 登陆成功后显示如下:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 6
Server version: 5.7.19
Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.
-
最后设置密码
mysql>set password for 'root'@'localhost'=password('12345678');
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
注意:mysql5.7默认安装了密码安全检查插件,默认密码检查策略要求密码必须包含:大小写字母,数字和特殊符号,并且长度不少于8位。否则就会提示错误:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
五、 查看密码策略相关信息
mysql> show variables like '%password%';
● validate_password_dictionary_file:密码策略文件,策略为STRONG才需要
● validate_password_policy:密码策略,默认为MEDIUM策略
● validate_password_length:密码最少长度
● validate_password_mixed_case_count:大小写字符长度,最少1位
● validate_password_number_count:数字最少1位
● validate_password_special_char_count:特殊字符最少一位
共有以下几种密码策略:
策略检查规则
0 or LOW length
1 or MEDIUM length,numeric,lowercase/uppercase and special characters
2 or STRONG length,numeric,lowercase/uppercase , special characters and dictionary file
修改密码策略:
在/etc/my.cnf文件中添加validate_password_policy配置,制定密码策略
validate_password_policy=0
如果不需要密码策略,在文件中添加如下配置就行了:
validate_password=off
然后重启mysql服务,使配置生效
systemctl restart mysqld
六、开机启动
[root@localhost ~]# systemctl enable mysqld
[root@localhost ~]# systemctl daemon-reload
检查Mysql服务是否已启动
service mysqld status
只要服务启动,在/var/lib/mysql下面就会自动生成mysql.sock文件
可用find / -name mysql.sock 搜索是否生成了该文件
七、设置防火墙远程访问
-
开放3306端口
[root@localhost ~]# firewall-cmd --permanent --add-port=3306/tcp -
重新加载防火墙
[root@localhost ~]# firewall-cmd --reload -
查看防火墙配置
[root@localhost ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33
sources:
services: dhcpv6-client ssh
ports: 3306/tcp
protocols:
masquerade: no
forward-ports:
sourceports:
icmp-blocks:
rich rules:
八、熟悉默认配置文件路径
- 配置文件:/etc/my.cnf
- 日志文件:/var/log/mysqld.log
- 服务器启本:/usr/lib/systemd/system/mysqld.service
- 进入mysql命令行:
mysql -u用户名 -p密码