Solution to MySql error code 1045 in Windows

Source: Internet
Author: User

Copy codeThe Code is as follows: Error Code 1045
Access denied for user 'root' @ 'localhost' (using password: YES)

The solution is to reset the root user password. The procedure is as follows on Windows:
1. log on to the system as a system administrator;
2. If the MySQL server is running, stop it.
If the server runs as a Windows Service, go to Service Manager: Start Menu-> Control Panel-> Administrative Tools-> services
If the server is not running as a service, you may need to use the task manager to force it to stop.
3. Create a text file and place the following commands in a single line:
Copy codeThe Code is as follows: set password for 'root' @ 'localhost' = PASSWORD ('mynewpassword ');


Save the file with any name. In this example, the file is C: \ mysql-init.txt.
4. Enter the doscommand prompt: Start Menu-> Run-> cmd
Assume that you have installed MySQL to C: \ mysql. If you install MySQL in another location, adjust the following commands.
Run the following command at the doscommand prompt:
Copy codeThe Code is as follows: C: \> C: \ mysql \ bin \ mysqld-nt -- init-file = C: \ mysql-init.txt
When the server is started, run the "-- init-file" option (function: Read SQL commands from the specified file at startup) to change the root user password. When the server is successfully started, delete the C: \ mysql-init.txt.
5. Stop the MySQL server and restart it in normal mode. If you run the server as a service, you should start it from the Windows service window. If the server is started manually, the command can be used as usual.


Other methods attached:

Method 1:
Copy codeThe Code is as follows:
#/Etc/init. d/mysql stop
# Mysqld_safe -- user = mysql -- skip-grant-tables -- skip-networking &
# Mysql-u root mysql
Mysql> UPDATE user SET Password = PASSWORD ('newpassword') where USER = 'root ';
Mysql> flush privileges;
Mysql> quit
#/Etc/init. d/mysql restart
# Mysql-uroot-p
Enter password: <Enter the new password newpassword>
Mysql>

Method 2:

Directly use the username and password provided in the [client] section of the/etc/mysql/debian. cnf file:
Copy codeThe Code is as follows:
# Mysql-udebian-sys-maint-p
Enter password: <Enter the password in the [client] section>
Mysql> UPDATE user SET Password = PASSWORD ('newpassword') where USER = 'root ';
Mysql> flush privileges;
Mysql> quit
# Mysql-uroot-p
Enter password: <Enter the new password newpassword>
Mysql>

Another method
Windows:

1. log on to the system as an administrator, stop the mysql service, or end the mysqld-nt process.
2. Enter the command line and go to the mysql installation directory. Assume that the installation directory is d: \ mysql \, and CMD enter the command line.
3. Run d: \ mysql \ bin \ mysqld-nt -- skip-grant-tables to start mysql and disable permission check.
4. Run d: \ mysql \ bin \ mysqladmin-u root flush-privileges password "newpassword" to reset the root password.
5. Restart the mysql service.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.