当前位置:Gxlcms > 数据库问题 > MySQL 5.7 的初始化操作(root初始密码、修改密码、密码策略、关闭IPv6监听)

MySQL 5.7 的初始化操作(root初始密码、修改密码、密码策略、关闭IPv6监听)

时间:2021-07-01 10:21:17 帮助过:39人阅读

Tests Performed0 or LOWLength1 or MEDIUMLength; numeric, lowercase/uppercase, and special characters2 or STRONGLength; numeric, lowercase/uppercase, and special characters; dictionary file

当前密码策略默认为1 也就是 MEDIUM

mysql root@localhost:(none)> show VARIABLES like "%password%"
+---------------------------------------+---------+
| Variable_name                         | Value   |
|---------------------------------------+---------|
| default_password_lifetime             | 0       |
| disconnect_on_expired_password        | ON      |
| log_builtin_as_identified_by_password | OFF     |
| mysql_native_password_proxy_users     | OFF     |
| old_passwords                         | 0       |
| report_password                       |         |
| sha256_password_proxy_users           | OFF     |
| validate_password_dictionary_file     |         |
| validate_password_length              | 8       |
| validate_password_mixed_case_count    | 1       |
| validate_password_number_count        | 1       |
| validate_password_policy              | MEDIUM  |
| validate_password_special_char_count  | 1       |
+---------------------------------------+---------+
13 rows in set
Time: 0.030s

所以你更改密码的策略是 数字 小写字母 大写字母 特殊字符 长度至少8位

更改完密码就可以进行数据库的操作了。

mysql root@localhost:(none)> show DATABASES;
+--------------------+
| Database           |
|--------------------|
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set
Time: 0.009s


接下来修改默认密码策略(当然实际环境是不推荐修改为更低安全策略的)

mysql root@localhost:(none)> set global validate_password_policy = 0;
Query OK, 0 rows affected
Time: 0.003s

现在设置完默认密码策略后,就只有 密码长度限制 了。默认为字符长度至少8位。

其中:

validate_password_number_count指定了密码中数据的长度

validate_password_special_char_count指定了密码中特殊字符的长度

validate_password_mixed_case_count指定了密码中大小字母的长度


这些参数,默认值均为1,所以validate_password_length最小值为4,如果你显性指定validate_password_length的值小于4,尽管不会报错,但validate_password_length的值将设为4。

mysql root@localhost:(none)> set global validate_password_length = 3;
Query OK, 0 rows affected
Time: 0.004s

mysql root@localhost:(none)> show VARIABLES  like "validate_password_length"
+--------------------------+---------+
| Variable_name            |   Value |
|--------------------------+---------|
| validate_password_length |       4 |
+--------------------------+---------+
1 row in set
Time: 0.010s

如果修改了validate_password_number_count,validate_password_special_char_count,validate_password_mixed_case_count中任何一个值,则validate_password_length将进行动态修改。


MySQL 5.7 默认安装了 validate_password 插件。 所以多了以上步骤。


----------------------------------------------------------------------------

通过my.cnf 配置文件设置密码策略的级别

"/etc/my.cnf" 28L, 987C                                                                                                                                                                                       22,1          All
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
validate_password_policy=2

最后一行 validate_password_policy 设置mysql启动的时候密码策略级别。 如果设置为3 ,那么需要指定字典文件。


当然你也可以通过 my.cnf 配置文件关闭 validate_password 插件。

只需要添加一行 

validate_password = off

编辑完配置文件后,重启mysqld服务即可生效。

mysql root@localhost:(none)> show VARIABLES  like "validate_password%"
+-----------------+---------+
| Variable_name   | Value   |
|-----------------+---------|
+-----------------+---------+
0 rows in set
Time: 0.008s

关闭validate_password插件后,就没有了validate_password的一些参数变量。


MySQL官方对于 validate_password 插件的使用介绍:

http://dev.mysql.com/doc/refman/5.6/en/validate-password-plugin.html#option_mysqld_validate-password


.

本文出自 “Professor哥” 博客,请务必保留此出处http://professor.blog.51cto.com/996189/1783769

MySQL 5.7 的初始化操作(root初始密码、修改密码、密码策略、关闭IPv6监听)

标签:mysql mysql5.7 默认密码 密码策略 password validate yum rpm 数据库

人气教程排行