问题描述
我已尝试查询但错误
有人解决了这个错误吗?
I have tried query but error
anybody solved the error?
MariaDB [mysql]>UPDATE user SET Host='%' WHERE User='root';
MariaDB [mysql]> UPDATE user SET Host='%' WHERE User='root';
ERROR 1356 (HY000): View 'mysql.user' references invalid table(s) or columns(s) or function(s) or definitioner/invoker of view没有使用它们的权限
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
推荐答案
MariaDB-10.4+ mysql
.user
是视图而不是表.
MariaDB-10.4+ the mysql
.user
is a view rather than a table.
它建议停止复制旧博客来进行任何与 MySQL 和 MariaDB 中的身份验证相关的更改,这些机制正在更新并且不再适用.请务必查看官方文档.
Its recommend to stop copying off old blogs to do any authentication relates changes in MySQL and MariaDB, the mechanisms are being updated and no longer apply. Always check the official documentation.
使用 设置密码 或 ALTER USER 来管理用户身份验证.
Use SET PASSWORD or ALTER USER to manage user authentication.
同时修改用户名的用户/主机组件会使触发器、事件、插件、授权、角色等与组合用户名不同步(又名损坏).因此,只需 DROP/CREATE 用户而不是操纵他们.
Also modifying a user/host component of the username will put triggers, events, plugins, grants, roles etc out of sync with the combined username (aka broken). So just DROP/CREATE users rather than manipulate them.
这篇关于ERROR 1356 (HY000): View 'mysql.user' references invalid table(s) or column(s) or function(s) or definitioner/invoker of view缺少使用它们的权限的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!