我正在尝试使用this tutorial学习Spring Roo。所以,我做的是:
当我尝试使用此帐户连接到服务器时,我注意到它看不到任何数据库
我尝试在'schema privileges'显式创建一个条目,允许'pizzashop'用户看到'pizzashop'架构,但它不起作用
希望你能在这里帮助我。我不知道这是一个Workbench问题还是一个mysql问题。修改> 添加到用户帐户的另一个条目具有与另一个条目相同的特征,但使用“localhost”而不是%
向架构权限添加了一个条目,说主机:localhost架构:pizzashop以及所有对象和ddl权限(这是我对pizzashop用户唯一的权限)
但是,当我使用用户pizzashop连接到localhost时,没有出现模式
答案 0 :(得分:7)
它是一个MySQL问题和家庭常见,%与localhost不匹配。为user @ localhost添加具有相同权限的条目
答案 1 :(得分:0)
听起来像是一个mysql问题,你没有列出很多信息,但你是否为该用户发出了grant命令?
https://dev.mysql.com/doc/refman/5.1/en/grant.html
grant命令也很棘手,请参阅:
MySQL: Grant **all** privileges on database
了解更多信息。
答案 2 :(得分:0)
使用localhost作为要连接的计算机的其他用户在这种情况下根本没有帮助。它只是连接到服务器所需的东西(你的连接已经通过使用%来实现'pizzashop')。
不确定你的情况出了什么问题,但我刚刚在MySQL Workbench 6.0.7中测试过(对5.6服务器):
如果这对您有用,则应该很容易将其应用于您自己的用户。
答案 3 :(得分:0)
在调查此问题一天后,我发现我必须创建2个具有相同名称但具有不同“来自主机”选项的用户。
请查看MySQL Workbench用户和权限的外观。 enter image description here
请不要忘记将Schema Privileges分配给所需的架构,并在Administrative Roles选项卡中选择“Show Databases”选项。必须在两个用户中设置此项。
我希望这会有所帮助 此致
答案 4 :(得分:0)
这主要是由于权限问题引起的。就我而言,由于某种原因,MySQL文件夹是隐藏/只读的,因此,尽管SQL查询成功,但MySQL Workbench无法访问架构面板上的相关数据库。我通过取消隐藏MySQL文件夹解决了该问题,然后所有数据库都成功显示在架构面板上。 Show database命令也可以显示数据库。
答案 5 :(得分:0)
此处提供的答案并没有解决我的问题。环顾四周后,我发现了以下内容:
为了让任何其他用户(默认 root 除外)能够看到 Workbench 中的架构,我必须为每个其他用户创建 3 次。
Once for host = %
Once for host = localhost
Once for host = ::1
我很想在 exussum 的回答下发表评论(非常感谢你分享这个解决方案的领导),但我加入了堆栈溢出分钟来分享这个解决方案并且没有足够的点数来评论。
>此外,我注意到为了使授予的权限真正起作用(全局和每个数据库的权限),我必须确保所有 3 种不同用户 + 主机组合的所有权限都完全相同。
我使用的是 WAMP 服务器 2.5,其中包括 mysql 5.6.17。 + 客户端是 Workbench 6.3