1.设置管理员root密码为123
开启MySQL服务后
PS C:\WINDOWS\system32> mysqladmin -uroot -p password "123" Enter password: mysqladmin: [Warning] Using a password on the command line interface can be insecure. Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety. #直接回车,忽略上述提示
再次登录不输入密码,出现一下结果。
PS C:\WINDOWS\system32> mysql -uroot -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
2.更改密码
PS C:\WINDOWS\system32>mysqladmin -uroot -p"123" password "456" #修改mysql密码,因为已经有密码了,所以必须输入原密码才能设置新密码
3.忘记密码
3.1关闭MySQL服务器
PS C:\WINDOWS\system32> net stop mysql MySQL 服务正在停止. MySQL 服务已成功停止。
3.2跳过授权表
PS C:\WINDOWS\system32> mysqld --skip-grant-tables
3.3再次登录时无需输入密码
PS C:\WINDOWS\system32> mysql -uroot -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.27 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
3.4更改密码为'abc'
mysql> update mysql.user set authentication_string =password('abc') where User='root'; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0
3.5刷新权限后退出
mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye
3.6关闭mysql进程
PS C:\WINDOWS\system32> tasklist |findstr mysql mysqld.exe 11452 Services 0 173,284 K PS C:\WINDOWS\system32> taskkill /F /PID 11452 成功: 已终止 PID 为 11452 的进程。
3.7再次开启服务,使用新密码登录
PS C:\WINDOWS\system32> net start mysql MySQL 服务正在启动 . MySQL 服务已经启动成功。 PS C:\WINDOWS\system32> mysql -uroot -p Enter password: *** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.27 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>