授予 MySQL 用户 CREATE TABLE 权限
Grant CREATE TABLE permission to MySQL User
我有一个在一些用户之间共享的数据库,我想管理他们对此的权限。
我想授予创建新 table 和访问(select、插入、更新、删除)的权限 table 当然,对于不这样做的用户对数据库有完全权限(只有他 SELECT 可以访问一些 table)。
所以,我执行了这个查询:
GRANT CREATE ON eh1 TO user1
然后,当我用那个用户登录并尝试创建一个新的 table 时,我得到了这个错误:
1142 - CREATE command denied to user 'user1'@'localhost' for table 'folan'
这里有什么问题?我该怎么做?
更新
通过将命令更改为以下部分解决了问题:
GRANT CREATE ON eh1.* TO user1
现在还有一个问题,就是user1不能select或者插入新创建的table。原因无可厚非,但是有什么办法可以解决吗?
谢谢
遵循this,正确的语法是
GRANT CREATE ON eh1.* TO user1
用eh1一个数据库。
如果您不使用“.*”,您的数据库将被视为 table。
按以下使用-
GRANT CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
注意:“%”将提供所有 ip 的访问权限,因此我们应该提供对特定 ip 而不是所有 ip 的权限,因此请将“%”更改为任何 ip,例如“191.161.3.1”
如果用户需要 select/insert/update/delete/create 权限,则语法将为 -
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
根据用户要求更新:
GRANT CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
GRANT SELECT, INSERT, UPDATE ON eh1.table1 TO user1@'%';
GRANT SELECT, INSERT, UPDATE ON eh1.table2 TO user1@'%';
我有一个在一些用户之间共享的数据库,我想管理他们对此的权限。
我想授予创建新 table 和访问(select、插入、更新、删除)的权限 table 当然,对于不这样做的用户对数据库有完全权限(只有他 SELECT 可以访问一些 table)。
所以,我执行了这个查询:
GRANT CREATE ON eh1 TO user1
然后,当我用那个用户登录并尝试创建一个新的 table 时,我得到了这个错误:
1142 - CREATE command denied to user 'user1'@'localhost' for table 'folan'
这里有什么问题?我该怎么做?
更新
通过将命令更改为以下部分解决了问题:
GRANT CREATE ON eh1.* TO user1
现在还有一个问题,就是user1不能select或者插入新创建的table。原因无可厚非,但是有什么办法可以解决吗?
谢谢
遵循this,正确的语法是
GRANT CREATE ON eh1.* TO user1
用eh1一个数据库。
如果您不使用“.*”,您的数据库将被视为 table。
按以下使用-
GRANT CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
注意:“%”将提供所有 ip 的访问权限,因此我们应该提供对特定 ip 而不是所有 ip 的权限,因此请将“%”更改为任何 ip,例如“191.161.3.1”
如果用户需要 select/insert/update/delete/create 权限,则语法将为 -
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
根据用户要求更新:
GRANT CREATE ON eh1.* TO user1@'%' IDENTIFIED BY 'user1_password';
GRANT SELECT, INSERT, UPDATE ON eh1.table1 TO user1@'%';
GRANT SELECT, INSERT, UPDATE ON eh1.table2 TO user1@'%';