Centos6安装Mysql5.7

看完本教程后,你将会在Centos服务器器上成功安装Mysql5.7 , 并修改Mysql5.7的密码,以及密码的相关配置

准备环境

centos服务器

步骤

1. 选择合适的RPM

选择合适的RPM
复制下载链接

2.下载RPM包

wget https://dev.mysql.com/get/mysql57-community-release-el6-10.noarch.rpm

这个链接是下载centos6 mysql5.7的,有需要的其他mysql版本或服务器的请将wget 后的链接更换为相对应的链接

3.安装本地仓库

sudo yum localinstall mysql57-community-release-el6-*.noarch.rpm

4.安装mysql数据库

sudo yum install mysql-community-server

5.启动数据库

sudo service mysqld start

6.设置开机启动

sudo chkconfig mysqld on

查看是否设置成功

chkconfig --list mysqld

修改数据库密码

Mysql5.7在启动数据的时候会生成一个默认的密码,通过/var/log/mysql.log文件可以查看默认生成的密码

1.查看默认生成的密码

cat /var/log/mysql.log | grep password

默认生成的密码

若没有, 则先初始化数据库,输入 mysqld -u root

2.进入数据库

mysqld -u root -p

然后输入默认密码

3.修改密码

ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_password;'

Mysql5.7有密码检验插件,要输入至少8位,必须含有数字,小写或大写字母,特殊字符的密码。需要修改策略请见常见问题。

远程连接mysql数据库

1.修改my.cnf(/etc/my.cnf)文件

注释bind-address = 127.0.0.1 这句

2. 重启服务器

service mysqld restart

3. 进入数据库设置权限

  1. mysql -uroot -p
  2. grant all privileges on *.* to 'root'@'%' identified by 'password';
  3. flush privileges;
  • 第一个*是数据库,可以改成允许访问的数据库名称
  • 第二个 是数据库的表名称,代表允许访问任意的表
  • root代表远程登录使用的用户名,可以自定义
  • %代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了
  • password代表远程登录时使用的密码,可以自定义
  • flush privileges;这是让权限立即生效

4.链接远程服务器

mysql -h 远程服务器ip -u root -p
输入密码即刻成功链接。

tips:

若服务器还是拒绝连接,请检查防火墙是否关闭,或者添加规则 **
例如centos6:
iptables -A INPUT -p tcp -m tcp --dport 3360 -j ACCEPT
执行命令添加防火墙规则

常见问题

1.Access denied for user 'root'@'localhost' (using password: NO)

mysql -u root -p

需要-p

2.Access denied for user 'root'@'localhost' (using password: YES)

默认密码输入错误,检查默认密码是否输入正确

3.You must reset your password using ALTER USER statement before executing this statement.

mysql5.7进入数据库后,需要修改密码才能进行操作

4.Your password does not satisfy the current policy requirements

密码符合修改的策略(默认至少8位,必须含有数字,小写或大写字母,特殊字符)

  • 查看策略
    SHOW VARIABLES LIKE 'validate_password%';
  • 配置策略
    配置强度
    set global validate_password_policy=0;
Policy Tests Performed
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

validate_password_number_count 指定了密码中数据的长度,
validate_password_special_char_count 指定了密码中特殊字符的长度,
validate_password_mixed_case_count 指定了密码中大小字母的长度。

  • 设置密码长度
    set global validate_password_length=1;

密码长度默认最少位数为4位,
最少位数与validate_password_special_char_count,validate_password_mixed_case_count有关

  • 关闭密码策略
    在/etc/my.cnf最后一行添加
    validate_password = off
    并重启数据库
    server mysqld restart
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容