用户无法在mysql工作台中看到数据库

eli*_*hin 5 mysql mysql-workbench

我正在尝试使用本教程学习Spring Roo .所以,我做的是:

  • 转到mysql工作台
  • 创建一个名为'pizzashop'的新架构
  • 通过服务器管理帐户访问localhost
  • 使用名称为"pizzashop"和密码"pizzashop"的"用户和权限"创建新用户,并限制与匹配%的主机的连接

当我尝试使用此帐户连接到服务器时,我注意到它无法看到任何数据库

我尝试在'schema privileges'显式创建一个条目,允许'pizzashop'用户看到'pizzashop'模式,但它不起作用

希望你能在这里帮助我.我不知道它是Workbench问题还是mysql问题.

编辑 >添加到用户帐户的另一个条目具有与另一个相同的特征,但使用'localhost'而不是%

向模式权限添加了一个条目,表示host:localhost schema:pizzashop以及所有object和ddl权限(这是我对pizzashop用户唯一拥有的权限)

但是,当我使用用户pizzashop连接到localhost时,不会出现任何模式

exu*_*sum 7

它是一个MySQL问题而且很常见,%与localhost不匹配.为user @ localhost添加具有相同权限的条目

http://bugs.mysql.com/bug.php?id=69570


Mik*_*hke 0

在这种情况下,使用 localhost 作为连接机器的附加用户根本没有帮助。这只是连接到服务器所需的东西(并且您的连接已经通过使用%用于“pizzashop”)。

不确定你的情况出了什么问题,但我刚刚在 MySQL Workbench 6.0.7 中进行了测试(针对 5.6 服务器):

  1. 创建一个新用户“测试”。无密码,无权限,标准身份验证。
  2. 创建了与同一服务器的新连接(实际上我复制了现有连接,清除了密码并更改了用户名)。
  3. 打开这个新连接(其他连接可以保持打开状态)。
  4. 除非您启用了系统表,否则不会向“测试”用户显示任何架构,在这种情况下,用户至少会看到“performance_schema”。
  5. 返回管理连接并为单个架构添加架构权限(例如“测试”)。
  6. 关闭测试连接并重新打开。现在,除了“performance_schema”之外,测试用户还应该看到架构测试。
  7. 返回到管理连接并为“test”添加“SHOW DATABASES”全局权限。
  8. 关闭测试连接并重新打开它。当模式树展开时,“测试”用户现在应该可以看到服务器中的所有模式,但其中看不到任何对象(除了我们在第 5 点为该用户启用的“测试”模式)。

如果这对您有用,那么也应该很容易将其应用于您自己的用户。