Resetting MySQL Root Password with Xampp on Localhost

Change MySQL Root Password in XAMPP

Open C:\xampp\phpMyAdmin folder, and then open config.inc.php:

And then, change the line like this:

$cfg['Servers'][$i]['auth_type'] = 'config'; //change this to cookie from config
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';

To:

$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['extension'] = 'mysqli';

And login with blank password, and go to SQL tab, and run this:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass'

Unable to connect with mysql (forgot password)

https://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

Have a look ;)

cmd:
or wherever xampp/mysql/bin exists

C:\> cd "C:\Program Files\MySQL\MySQL Server 5.0\bin"
C:\> mysqld -nt --init-file=C:\\mysql-init.txt

mysql-init.txt:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

MySQL: How to reset or change the MySQL root password?

Set / change / reset the MySQL root password on Ubuntu Linux. Enter the following lines in your terminal.

  1. Stop the MySQL Server: sudo /etc/init.d/mysql stop
  2. (In some cases, if /var/run/mysqld doesn't exist, you have to create it at first: sudo mkdir -v /var/run/mysqld && sudo chown mysql /var/run/mysqld
  3. Start the mysqld configuration: sudo mysqld --skip-grant-tables &
  4. Login to MySQL as root: mysql -u root mysql
  5. Replace YOURNEWPASSWORD with your new password:

For MySQL < 8.0

UPDATE mysql.user SET Password = PASSWORD('YOURNEWPASSWORD') WHERE User = 'root';
FLUSH PRIVILEGES;

If your MySQL uses new auth plugin, you will need to use: update user set plugin="mysql_native_password" where User='root'; before flushing privileges.

Note: on some versions, if password column doesn't exist, you may want to try:

UPDATE user SET authentication_string=password('YOURNEWPASSWORD') WHERE user='root';

Note: This method is not regarded as the most secure way of resetting the password, however, it works.

For MySQL >= 8.0

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURNEWPASSWORD';
FLUSH PRIVILEGES;

Last step:

As noted in comments by @lambart, you might need to kill the temporary password-less mysql process that you started, i.e. sudo killall -9 mysqld and then start normal daemon: sudo service mysql start

References:

  1. Set / Change / Reset the MySQL root password on Ubuntu Linux
  2. How to Reset the Root Password (v5.6)
  3. How to Reset the Root Password (v8.0)


Related Topics



Leave a reply



Submit