Home > Database > Mysql Tutorial > What should I do if I forget mysql root password on Linux?

What should I do if I forget mysql root password on Linux?

PHPz
Release: 2023-04-21 11:38:36
Original
2473 people have browsed it

MySQL is a widely used relational database management system and an important open source software. When using MySQL, we often need to use the root account to log in to MySQL. However, what should you do if you forget the password of the root account?

This article will introduce some common solutions so that you can quickly restore access to the root account.

Option 1: Use the mysqladmin command

mysqladmin is the command line tool that comes with MySQL. You can use it to change the root password. The specific operation method is as follows:

  1. Open the terminal and enter the following command:

    sudo systemctl stop mysql

    This command will shut down MySQL. The reason why I shut down MySQL first is to make it easier to change the password later.

  2. Enter the following command to enable passwordless login:

    sudo mysqld_safe --skip-grant-tables &

    This command will enable MySQL temporary permission, you can temporarily access the MySQL database without a password.

  3. Enter the following command to connect to the MySQL database:

    mysql -uroot

    After entering this command, you will enter the command line mode.

  4. Modify root password:

    use mysql;

    update user set authentication_string=password('123456') where user='root';

    This command changes the root password in the database to "123456". You can also replace this password with the password you want to set.

  5. Exit MySQL command line mode:

    quit

  6. Restart MySQL:

    sudo systemctl start mysql

  7. Log in with the modified password:

    mysql -u root -p

    This command will ask you to enter a new password to log in to MySQL.

Option 2: Use init script

This option requires you to have root permissions. You can use the Linux init script to restart MySQL and load the SQL script to change the root password.

The steps are as follows:

  1. Stop the MySQL service:

    sudo /etc/init.d/mysql stop

  2. Create a file containing SQL commands:

    sudo nano /var/mysql-init

    This command will create a mysql-init file in the /var directory and allow you to use nano editor, enter the following:

    UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE user='root';
    FLUSH PRIVILEGES;

    The above command will The password for root is changed to "123456".

  3. Enable MySQL service:

    sudo /etc/init.d/mysql start

    When MySQL starts, it will automatically execute SQL command in the command file to change the root password.

  4. Clear the error message:

    sudo rm /var/mysql-init

If you forget the root password, use this Either of the two options will allow you to regain access to MySQL. However, option 1 is recommended because it is simpler and easier to understand and has no negative impact on the normal operation of MySQL.

Of course, to avoid forgetting passwords, you should establish a better password management strategy, such as using a password management tool to store your MySQL passwords, or changing passwords regularly to improve security.

The above is the detailed content of What should I do if I forget mysql root password on Linux?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template