Mysql (MariaDB 10.0.29): Set root password, but still can login without asking password?

后端 未结 3 1919
感情败类
感情败类 2021-01-31 16:44

I want to secure mysql by setting root password. I reset root password successfully:

MariaDB [(none)]> select Host, User, Password from mysql.user;
+---------         


        
3条回答
  •  自闭症患者
    2021-01-31 17:09

    I know this question is old, but I had the same issue and the steps below solved my problem:

    on the Linux terminal, run the command below to set a new password for root user, skip this step, if root password is already set.

    mysqladmin --user=root password "newpassword"
    

    Login to mysql

    mysql -uroot -p
    

    Enter 'root' user password

    Run following query on MariaDB console

    MariaDB [(none)]> select host,user,password from mysql.user;
    

    You may notice some records with 'user' column values are ''(empty), delete those records using following query

    MariaDB [(none)]> delete from mysql.user where user='';
    MariaDB [(none)]> flush privileges;
    Query OK, 2 rows affected (0.00 sec)
    MariaDB [(none)]> exit
    Bye
    #$ mysql
    ERROR 1045 (28000): Access denied for user ''@'localhost' (using password: NO)
    

    You wont be able to login to mysql without password after following above steps.

提交回复
热议问题