解决方案
进行远程登录授权
sudo apt install mariadb-client mariadb-server
修改密码
UPDATE mysql.user SET authentication_string=PASSWORD('root'), PLUGIN='mysql_native_password' WHERE USER='root';
十分幸运的是这两项都在同一文件中(我自己的是没有skip-networking项)
我们打开文件/etc/mysql/mariadb.conf.d/50-server.cnf,注释掉bind-address项,
mysql语句
选择 mysql 数据库进行操作
use mysql
查看 user,password,host 这三个字段的权限分配情况
select user,password,host from user;
下面这条语句将允许用户 root 使用密码 (ypf123) 在任何主机上连接该数据库,并赋予该用户所有权限。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'ypf123' WITH GRANT OPTION;
最后配置好权限之后应该刷新使之生效
flush privileges;
额外话
远程授权:
如果想用户 root 从 ip 为192.168.2.143 的主机连接到 mysql 服务器,并使用 ypf123 作为密码。mysql 语句如下:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.2.143' IDENTIFIED BY 'ypf123' WITH GRANT OPTION;