Centos7安装Mysql5.7

一、下载

首先进入官网
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本地密码

  1. 安装完成后,在/var/log/mysqld.log文件暗中给root生成一个随机默认密码:
    [root@localhost opt]#grep 'temporary password' /var/log/mysqld.log

  2. 然后进入/var/lib/mysql中,开启服务
    [root@localhost mysql]# systemctl start mysqld.service

  3. 然后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

  1. 知道密码后登陆mysql

[root@localhost ~]# mysql -uroot -p
Enter password:

  1. 登陆成功后显示如下:

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.

  1. 最后设置密码

    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密码
posted @ 2017-08-17 19:18  阿木木z  阅读(340)  评论(0编辑  收藏  举报