azure 如何给予MySQL超级用户权限?

n6lpvg4x  于 2023-10-22  发布在  Mysql
关注(0)|答案(4)|浏览(184)

我有一个托管在Azure中的MySQL数据库,我通过笔记本电脑中的MySQL插件访问它。问题是,当我想执行一些命令时,我会收到错误消息,说我没有足够的特权。我试图访问MySQL MySQL中的用户和权限部分,但我得到的消息说:
您当前使用的帐户没有足够的权限更改MySQL用户和权限。
我可以在哪里给予超级用户权限,以便我可以执行MySQL服务器中的每个命令?

dphi5xsq

dphi5xsq1#

1.特权只与用户相关,与你使用的客户端无关,所以不管你使用的是工作台还是CLI,都无所谓。
1.在MySQL中,权限被分配给不同的“用户”,“用户”由“用户名”和“主机”(从那里登录mysql)组成,所以基本上,mysql中拥有特定权限的用户看起来像:

'foo'@'192.16.22.231', 'bar'@'10.3.243.%' ..

1.如何提高特定用户的所有权限?作为超级用户:

GRANT ALL PRIVILEGES ON \*.* TO YOUR_USER

超级用户通常是'root'@'127.0.0.1',因为您必须授予特定的'用户',所以您必须知道您登录的IP地址

如果你认为上面的内容有点复杂,而你的mysql只是快速安装和简单配置,你可以试试这个,也许它会有所帮助:

1.以root或mysql身份登录
1.执行这个:

GRANT ALL PRIVILEGES ON \*.* TO 'your_user'@'%';
ruyhziif

ruyhziif2#

1.在客户端中执行SELECT * FROM mysql.user WHERE user = 'your account'\G。如果所有的priv列是'Y',您的帐户具有超级用户权限。
1.你也可以试试UPDATE mysql.user。然后,执行flush privileges;以使更改生效。
1.执行GRANT ALL PRIVILEGES ON \*.* TO 'your_user'@'%';添加一个新的超级用户特权帐户。
1.如果不允许上述所有操作,请致电Azure支持。在云数据库中,某些系统数据库可能不允许访问。

pgpifvop

pgpifvop3#

我通过以下方式解决了这个问题:

UPDATE mysql.user SET Grant_priv = 'Y' WHERE User = 'root';

如果你不知道你在做什么,这可能是“危险的”;- )

xmq68pz9

xmq68pz94#

例如,您可以给予用户john使用所有数据库中所有表的所有权限,如下图所示,但实际上,这不会创建超级用户,它可以做与默认用户root相同的所有事情,MySQL具有SUPER权限,但它不是创建超级用户的用户,所以我询问the question如何创建与默认用户相同的超级用户。默认用户root

GRANT ALL ON *.* TO 'john'@'localhost';

或者:

GRANT ALL PRIVILEGES ON *.* TO 'john'@'localhost';

此外,您可以给予用户john使用数据库apple中的表orangeGRANT的所有权限,如下所示:

GRANT ALL ON apple.orange TO 'john'@'localhost';

或者:

GRANT ALL PRIVILEGES ON apple.orange TO 'john'@'localhost';

相关问题