为了账号安全,请及时绑定邮箱和手机立即绑定

授予*数据库上的所有*特权

授予*数据库上的所有*特权

喵喵时光机 2019-07-04 18:30:44
授予*数据库上的所有*特权我创建了数据库,例如“mydb”。CREATE DATABASE mydb CHARACTER SET utf8 COLLATE utf8_bin;CREATE USER 'myuser'@'%' IDENTIFIED BY PASSWORD '*HASH';GRANT ALL ON mydb.* TO 'myuser'@'%';GRANT ALL ON mydb TO 'myuser'@'%';GRANT CREATE ON mydb TO 'myuser'@'%';FLUSH PRIVILEGES;现在我可以从任何地方登录到数据库,但不能创建表。如何授予该数据库和(将来的)表的所有权限。我无法在‘mydb’数据库中创建表。我总是得到:CREATE TABLE t (c CHAR(20) CHARACTER SET utf8 COLLATE utf8_bin);ERROR 1142 (42000): CREATE command denied to user 'myuser'@'...' for table 't'
查看完整描述

3 回答

?
拉丁的传说

TA贡献1789条经验 获得超8个赞

GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'%' WITH GRANT OPTION;

这就是我如何创建我的“超级用户”特权(虽然我通常会指定一个主机)。

重要注记

虽然这个答案可以解决访问问题,WITH GRANT OPTION创建一个MySQL用户,该用户可以编辑其他用户的权限.

授予选项特权使您能够授予其他用户或从其他用户中删除您自己拥有的特权。

出于安全考虑,您不应该在任何公众可以访问的进程(即网站)中使用这种类型的用户帐户。建议你创建仅具有数据库权限的用户为了这种用途。


查看完整回答
反对 回复 2019-07-04
  • 3 回答
  • 0 关注
  • 628 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信