在Ubuntu的衍生版linux系统中一般使用sudo apt-get install mariadb-server安装MariaDB,但是安装完后,可能会存在用普通用户连接MariaDB报错的情况,如下:
jzk@jzk-PC:/etc/mysql$ mysql -u root
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
解决办法如下:
jzk@jzk-PC:/etc/mysql$ sudo mysql -uroot
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.1.29-MariaDB-6+b1 Debian buildd-unstable
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [mysql]> update user set plugin='' where user='root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> exit;
Bye
jzk@jzk-PC:/etc/mysql$ mysql -u root
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 32
Server version: 10.1.29-MariaDB-6+b1 Debian buildd-unstable
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.