我创建了一个用户,我打算只授予一个数据库的访问权限。但是当我尝试与他联系时,程序崩溃了。当我与 root 用户连接时,它可以工作。
create user 'test'@'localhost';
GRANT ALL PRIVILEGES ON sbb2_test.* To 'test'@'localhost' IDENTIFIED BY 'test';
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
然后我验证了他只有 sbb2_test db 的权限:
SHOW GRANTS FOR 'test'@'localhost'
Run Code Online (Sandbox Code Playgroud)
输出:
'GRANT USAGE ON *.* TO \'test\'@\'localhost\' IDENTIFIED BY PASSWORD \'*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29\''
'GRANT ALL PRIVILEGES ON `sbb2_test`.* TO \'test\'@\'localhost\''
Run Code Online (Sandbox Code Playgroud)
然后我尝试与新用户连接:
我输入了“test”作为密码,程序崩溃了。为什么?这些是 wb.log 文件的最后几行:
15:58:40 [INF][Workbench]:元信息给出的当前版本是:6.1.7
15:58:41 [INF][Workbench]:退出,因为另一个 WB 实例已经在运行。15:58:41 [INF][工作台]:运行应用程序
15:58:41 [INF][WBContext]:解析应用程序参数。
15:58:41 [INF][WBContext]:C:\Program Files (x86)\MySQL\MySQL Workbench 6.1 CE\MySQLWorkbench.exe
15:58:46 [WRN][WBContext UI]:服务器实例没有附加连接,删除它
15:58:46 [WRN][WBContext UI]:服务器实例没有附加连接,删除它
15:59:17 [INF][SSH 隧道]:启动隧道
15:59:17 [ERR][GRTDispatcher]:grt execute_task 中的异常,继续:异常:用户“test”@“localhost”的访问被拒绝(使用密码:否)
15:59:30 [INF][Admin]:自动创建的连接实例配置文件
15:59:30 …