最近重装wordpress,再安装mariadb-server以后,发现可以从终端用root账号登陆数据库,但是从phpmyadmin就不行,始终是access denied,很奇怪,搜索一番,发现5.7以后,root是用auth_socket登录的,那么两种办法:

  • 修改mysql用户表,使用mysql_native_password形式
  • 单独新建一个最大权限账户。

方法1

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

方法2

CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;

我用了第二种。