MySQL无法看到数据库

Web*_*net 4 mysql database

GRANT SELECT ON source_starcraft.udb_ability TO `wade`@`localhost'
Run Code Online (Sandbox Code Playgroud)

当我wade通过PHPMyAdmin 登录时,我看不到数据库source_starcraft.我只执行了此查询并在此查询之前创建了用户.

big*_*nes 10

这里有些东西给了我很多帮助.实际上我正在使用MySQL Workbench.

http://bobfield.blogspot.it/2006/10/i-cant-see-my-databases.html

简而言之,它表示如果MySQL有一个<anonymous>帐户,并且您无法使用您的用户登录,则最终会以匿名用户身份登录,而不会发出通知.要找到这个你可以做:

SELECT user(), current_user();
Run Code Online (Sandbox Code Playgroud)

原因如下:

需要注意的一件重要事情是SELECT USER();向您显示当前的用户名和主机.另一个命令,SELECT CURRENT_USER(); 显示您认证的内容.

事实上,在我的情况,user()mylogin@localhost,current_user()@localhost(在匿名用户).


Two*_*woD 8

如果您登录到phpMyAdmin的用户确实具有查看数据库的正确权限,但您仍然看不到它,则可能意味着phpMyAdmin本身已配置为不显示它.通过show databases;在phpMyAdmin中发出SQL查询,这是最容易验证的.如果您要查找的数据库显示,则至少允许用户查看它.

有几个配置指令可以控制哪些数据库在phpMyAdmin的列表中可见.如果您使用自动安装程序或脚本将phpMyAdmin添加到用户帐户,则它可能还设置了only_db或hide_db之一.这些也在官方phpMyAdmin文档中描述,该文档应该包含在您的安装中,并且在wiki上.

如果您的用户有权更改设置,您可以在"设置"和"功能"选项卡下的phpMyAdmin中为当前会话执行此操作.要永久更改这些设置,您需要编辑config.inc.php.它的位置取决于系统上安装phpMyAdmin的位置.