


How to change the root password if you forget your password in MySQL8.0/8.x
1. Principle Description
1, authentication_string
This is a new modification made by Mysql8.0. In the old version, the password() function was used.
2. Among the solutions to "mysql forgot password" found on the Internet, most of them will use UPDATE user SET authentication_string="12345" WHERE user="root";
to directly change the password Changing it to 12345 is actually a wrong usage. The authentication_string stores ciphertext. If it is changed directly to plain text such as "12345", it will cause the password to be incorrect and the login cannot be logged in.
The reason is that when the server verifies the identity, it will first convert the plaintext entered by the user into ciphertext and compare it with the ciphertext in the database to verify whether it matches, and it is obvious that it will directly put the plaintext where the ciphertext should be. Won't let them match successfully.
3. In the similar online search result "mysql change password", alter user root@localhost identified by '12345'
will be used to modify it. Password, this command cannot be used when "skipping the authorization table". It can only be used in normal mode.
4 has such a solution. First change the authentication_string to empty. After all, the plaintext and ciphertext of empty values are all empty values. Use the empty password to enter the mysql normal mode and then use alter to change the password.
2. Solution steps
1, stop the mysql service
net stop mysql
2, enter the command , enter the "skip authorization table" mode
mysqld --console --skip-grant-tables --shared-memory
3. Put the previous cmd window aside, open another administrator cmd window, and enter mysql
Enter the mysql service
4, enter use mysql
to enter the mysql database, and then change authentication_string to empty
USE mysql; UPDATE user SET authentication_string="" WHERE user="root";
5, refresh permissions, exit
FLUSH privileges; exit;
6, in the first cmd window, use ctrl c
to exit "Skip authorization Table" mode, start the mysql service
net start mysql
7, use an empty password to log in, then use the alter statement to update the password, refresh the permissions, and exit
mysql -uroot -p
alter user root@localhost identified by '12345' FLUSH privileges; exit
8, try to log in with password, successful.
The above is the detailed content of How to change the root password if you forget your password in MySQL8.0/8.x. For more information, please follow other related articles on the PHP Chinese website!

MySQLstringtypesimpactstorageandperformanceasfollows:1)CHARisfixed-length,alwaysusingthesamestoragespace,whichcanbefasterbutlessspace-efficient.2)VARCHARisvariable-length,morespace-efficientbutpotentiallyslower.3)TEXTisforlargetext,storedoutsiderows,

MySQLstringtypesincludeVARCHAR,TEXT,CHAR,ENUM,andSET.1)VARCHARisversatileforvariable-lengthstringsuptoaspecifiedlimit.2)TEXTisidealforlargetextstoragewithoutadefinedlength.3)CHARisfixed-length,suitableforconsistentdatalikecodes.4)ENUMenforcesdatainte

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,2)VARCHARforvariable-lengthtext,3)BINARYandVARBINARYforbinarydata,4)BLOBandTEXTforlargedata,and5)ENUMandSETforcontrolledinput.Eachtypehasspecificusesandperformancecharacteristics,sochoose

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

ToaddusersinMySQLeffectivelyandsecurely,followthesesteps:1)UsetheCREATEUSERstatementtoaddanewuser,specifyingthehostandastrongpassword.2)GrantnecessaryprivilegesusingtheGRANTstatement,adheringtotheprincipleofleastprivilege.3)Implementsecuritymeasuresl

ToaddanewuserwithcomplexpermissionsinMySQL,followthesesteps:1)CreatetheuserwithCREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';.2)Grantreadaccesstoalltablesin'mydatabase'withGRANTSELECTONmydatabase.TO'newuser'@'localhost';.3)Grantwriteaccessto'

The string data types in MySQL include CHAR, VARCHAR, BINARY, VARBINARY, BLOB, and TEXT. The collations determine the comparison and sorting of strings. 1.CHAR is suitable for fixed-length strings, VARCHAR is suitable for variable-length strings. 2.BINARY and VARBINARY are used for binary data, and BLOB and TEXT are used for large object data. 3. Sorting rules such as utf8mb4_unicode_ci ignores upper and lower case and is suitable for user names; utf8mb4_bin is case sensitive and is suitable for fields that require precise comparison.

The best MySQLVARCHAR column length selection should be based on data analysis, consider future growth, evaluate performance impacts, and character set requirements. 1) Analyze the data to determine typical lengths; 2) Reserve future expansion space; 3) Pay attention to the impact of large lengths on performance; 4) Consider the impact of character sets on storage. Through these steps, the efficiency and scalability of the database can be optimized.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

WebStorm Mac version
Useful JavaScript development tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Linux new version
SublimeText3 Linux latest version
