If you’ve forgotten your MySQL root password, resetting it is straightforward. Follow these steps carefully:
Step 1: Stop the MySQL Service
Before making changes, stop the MySQL service to prevent conflicts.
- Linux (Systemd-based systems):
sudo systemctl stop mysql
- Windows:
- Open the Services app.
- Find the MySQL service.
- Right-click and select Stop.
Step 2: Start MySQL in Safe Mode
Start MySQL without loading the privilege tables, allowing unrestricted access.
- Linux:
sudo mysqld_safe –skip-grant-tables &
-
Windows: Open a terminal and navigate to the MySQL bin directory (e.g.,
C:\Program Files\MySQL\MySQL Server 8.0\bin
) and run:
mysqld –skip-grant-tables
Step 3: Log in Without a Password
Connect to the MySQL server:
mysql -u root
Step 4: Update the Root Password
Run the following commands to reset the password:
- Use the
mysql
database: USE mysql; -
Update the password (replace
new_password
with your desired password):-
MySQL 5.7 and later: ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘new_password’;
-
MySQL 5.6 and earlier: SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘new_password’);
-
-
Flush privileges: FLUSH PRIVILEGES;
-
Exit MySQL: EXIT;
Step 5: Restart MySQL Normally
Stop the safe mode instance and restart the service normally.
- Linux: sudo systemctl restart mysql
- Windows:
- Open the Services app.
- Find the MySQL service.
- Right-click and select Start.
Step 6: Test the New Password
Verify the new password by logging in:
mysql -u root -p
Enter your new password when prompted.
By following these steps, you can reset your MySQL root password and regain access to your database.
Read Also: How to Customize the version of MySQL database in cPanel