创建可以从任何端点访问的新Mysql用户

时间:2014-04-22 14:32:55

标签: mysql sql

我需要在我的Mysql数据库上创建新用户。 用户应该从任何端点访问并拥有所有权限。

实际上,我无法理解mysql.user表中主机列的含义。

我需要为此编写哪个sql语句?

谢谢!

1 个答案:

答案 0 :(得分:1)

您必须检查的第一件事是您的mysql服务器可以从外部接收连接。因此,请在my.ini配置文件中检查bind-address属性的值。

您必须从

更改它
bind-address=127.0.0.1

bind-address=0.0.0.0

然后重新启动服务器。

现在,您可以添加为主机列指定通配符%的用户。这允许您指定的用户从任何主机获得您的设置权限。

然后您可以创建您的用户:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'password';
CREATE USER 'newuser'@'192.168.%.%' IDENTIFIED BY 'password';

和模式/表格的大权限:

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

您可以授予:

,而不是授予所有权限

CREATE - 允许他们创建新的表或数据库

DROP - 允许他们删除表或数据库

DELETE - 允许他们从表中删除行

INSERT - 允许他们在表格中插入行

SELECT - 允许他们使用Select命令读取数据库

UPDATE - 允许他们更新表格行

GRANT OPTION - 允许他们授予或删除其他用户的权限

最后冲洗您的权限:FLUSH PRIVILEGES;

GRANT的一般语法是:

GRANT [type of permission] ON [database name].[table name] TO ‘[username]’@'localhost’;

您可以使用MySql Workbench之类的工具来简化此任务。

希望这有帮助。