MariaDB 修改用户远程登录

今天修改MariaDB数据库用户的Host时出现错误:

ERROR 1356 (HY000): View ‘mysql.user’ references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them

我的步骤如下:

1.登陆

2.use mysql;

3.执行:update user set host=‘%’ where user=‘root’;

因为MariaDB的user表是一个视图,所以执行的语句和Mysql有所不同,只需要执行如下语句即可:

rename user ‘root’@‘localhost’ to ‘root’@‘%’;

另外,附创建用户和给用户赋权的操作:

创建用户:create user ‘用户名’@‘%’ identified by ‘密码’;

修改用户密码:alter user ‘用户名’@‘%’ identified by ‘密码’;

删除用户:drop mysql.user ‘用户名’@‘%’;

授权用户:grant all on . to ‘用户名’@‘%’ identified by ‘密码’ with grant option;

修改完权限 后,设置Mariadb允许远程链接
1.修改Mariadb配置文件

将/etc/mysql/mariadb.conf.d/50-server.cnf中bind-address = 127.0.0.1加# 注释掉
2.重启服务

systemctl restart mariadb.service

3.远程链接
mysql -u root -proot -h 192.168.199.240 -D mysql

Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.1.34-MariaDB-0ubuntu0.18.04.1 Ubuntu 18.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [mysql]> 

猜你喜欢

转载自blog.csdn.net/wwj256/article/details/133651952