How to change the password of mysql5.7.20 under linux CentOS 7.4

How to change the password of mysql5.7.20 under linux CentOS 7.4

After MySQL was upgraded to version 5.7, its security was greatly improved.

But. . . Can't remember complicated ones. Uh huh. . My brain isn't working well to begin with, so why bother remembering so many complicated things? Especially if it's done locally, it's more convenient to just root.

Enter mysql

mysql> SHOW VARIABLES LIKE 'vali%';
+--------------------------------------+--------+
| Variable_name       
     | Value |
+--------------------------------------+--------+
| 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 |
+--------------------------------------+--------+
6 rows in set (0.00
 sec)

According to the official documentation, the strategy is 1, which is MEDIUM

This plugin is installed by default in 5.7. If it is not installed, SHOW VARIABLES LIKE 'vali%' will return empty. The corresponding parameter values ​​are also the default values. The following is an explanation of these values

validate_password_length 8 #
 The minimum password length is 8.
 validate_password_mixed_case_count 1 #
 It must contain at least the number of lowercase or uppercase letters, which is 1 here.
 validate_password_number_count 1 #
 The minimum number of digits to be included, here is 1.
 validate_password_policy MEDIUM #
 Strength level, where its value can be set to 0, 1, 2. Corresponding to:
              【0/LOW】: Only check the length.
              [1/MEDIUM]: Checks numbers, uppercase and lowercase letters, and special characters based on level 0.
              [2/STRONG]: Check the special character dictionary file based on level 1. Here, it is 1.
 validate_password_special_char_count

1 # The minimum number of characters to be included, here is 1.

So the password you change must contain numbers, lowercase letters, uppercase letters, special characters, and be at least 8 characters long

How to change it? ?

To disable this plugin, add

validate_password=off and restart mysqld:

Add in vim /etc/my.cnf configuration file

[mysqld]
validate_password=off

Then restart mysql and it will be ok.

Restart mysqld

#/etc/init.d/mysqld restart ( service mysqld restart )

If you want to change the password back to enter mysql

The database running 5.7 no longer has a password field and uses the authentication_string field instead.

mysql> update mysql.user set authentication_string=password('root') where user='root';

Finally, you also need to set an expiration time to prevent the password from becoming invalid.

Add in the /etc/my.cnf configuration file

[mysqld]
default_password_lifetime=0

Or directly set it through the command

ALTER USER 'script'@'localhost' PASSWORD EXPIRE NEVER

Summarize

The above is the method for changing the password of mysql5.7.20 under Linux CentOS 7.4 introduced by the editor. I hope it will be helpful to everyone. If you have any questions, please leave me a message and the editor will reply to you in time. I would also like to thank everyone for their support of the 123WORDPRESS.COM website!

You may also be interested in:
  • How to quickly modify the root password under CentOS8
  • CentOS 7 set grub password and single user login example code
  • How to reset the root password in CentOS7
  • How to modify the root password of MySQL in CentOS environment
  • Solution to the problem of still having to enter a password after configuring ssh password-free login in centos
  • How to install and modify the initial password of mysql5.7.18 under Centos7.3
  • How to change mysql password under Centos
  • CentOS 7 Forgot Password Solution Process Diagram

<<:  Sample code for deploying ELK using Docker-compose

>>:  js realizes packaging multiple pictures into zip

Recommend

Detailed explanation of the basic usage of the Linux debugger GDB

Table of contents 1. Overview 2. gdb debugging 2....

Vue uses ECharts to implement line charts and pie charts

When developing a backend management project, it ...

MySQL Quick Data Comparison Techniques

In MySQL operation and maintenance, a R&D col...

Detailed analysis of the parameter file my.cnf of MySQL in Ubuntu

Preface Based on my understanding of MySQL, I thi...

MySQL log system detailed information sharing

Anyone who has worked on a large system knows tha...

How to use js to determine whether a file is utf-8 encoded

Conventional solution Use FileReader to read the ...

Vue implements three-dimensional column chart based on echarts

The three-dimensional column chart consists of th...

Sharing tips on using Frameset to center the widescreen

Copy code The code is as follows: <frameset co...

Three ways to prevent MySQL from inserting duplicate data

Create a new table CREATE TABLE `person` ( `id` i...

Detailed explanation of the execution order of JavaScript Alert function

Table of contents question analyze solve Replace ...

In-depth analysis of MySQL explain usage and results

Preface In daily work, we sometimes run slow quer...

Nest.js hashing and encryption example detailed explanation

0x0 Introduction First of all, what is a hash alg...