0

我正在尝试在 mysql 中创建新用户并授予他处理一张表的权限。

我用过的命令:

CREATE USER 'integration'@'%' IDENTIFIED BY 'integration1';
GRANT SELECT, INSERT, ALTER, UPDATE, CREATE, DROP ON testdb.testtable TO 'integration'@'%';
FLUSH PRIVILEGES;

但不幸的是,我无法使用正确的凭据连接到数据库:

mysql.exe -uintegration -pintegration1 testdb
4

2 回答 2

1

如果您在本地连接,则必须添加用户@localhost。

CREATE USER 'integration'@'localhost' IDENTIFIED BY 'integration1';
GRANT SELECT, INSERT, ALTER, UPDATE, CREATE, DROP ON testdb.testtable TO 'integration'@'localhost';
FLUSH PRIVILEGES;
于 2013-10-14T13:26:41.737 回答
1

问题是 MySQL 有其特定的方式来处理连接发起的主机。一般localhost不属于'%'. 尝试使用以下命令进行连接:

mysql.exe -uintegration -pintegration1 -h127.0.0.1 testdb

这将启动来自用户的连接,'integration'@'127.0.0.1'而不是'integration'@'localhost'

于 2013-10-14T13:28:57.533 回答