今天修改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;