2010-12-03 15 views
4
GRANT SELECT ON source_starcraft.udb_ability TO `wade`@`localhost' 

wadeでPHPMyAdminでログインすると、データベースsource_starcraftが表示されません。私はこのクエリを実行して、このクエリの前にユーザーを作成しました。MySQLがデータベースを参照できない

+4

@Webnet - 'flush privileges'を実行したことを確認してください。 – ajreal

+0

良いコール - 私はそれを行い、ウェードとしてログインしましたが、まだ' information_schema'以外のデータベースは見えません。 – Webnet

+0

あなたのデータベースはどこですか? phpmyadminと同じですか?ローカルホストが原因である可能性があります – ajreal

答えて

7

phpMyAdminにログインしたユーザーがデータベースを表示するための適切な権限を持っていても表示できない場合、phpMyAdmin自体が表示されないように設定されている可能性があります。これは、phpMyAdminからshow databases; SQLクエリを発行することで確認するのが最も簡単です。あなたが探しているデータベースが表示されている場合、ユーザーは少なくともそれを表示することができます。

phpMyAdminのリストに表示されるデータベースを制御できる設定ディレクティブがいくつかあります。自動化されたインストーラやスクリプトを使用してphpMyAdminをユーザアカウントに追加した場合は、only_dbまたはhide_dbのいずれかが設定されている可能性があります。これらは、公式のphpMyAdminのマニュアルにも記載されています。このマニュアルは、インストールに含まれているはずで、wikiにあります。

ユーザが設定を変更するアクセス権を持っている場合は、phpMyAdminの[設定]タブと[機能]タブの現在のセッションで設定を変更できます。これらの設定を永久に変更するには、config.inc.phpを編集する必要があります。その場所は、システムにphpMyAdminがインストールされている場所によって異なります。

1

私は、どのホストに対して許可が与えられたのか、どのホストが使用されているのかについていくつかの矛盾/混乱があるようです。その可能性を除去するためのFLUSH PRIVILEGES

、私は私がログインした後として識別されたユーザー参照してくださいね:MySQLは常に最も特定のホストでのログインを関連付け

SELECT user(); 

注意。 docを参照してください。その後、それを特権データベースの内容と比較します。ユーザーは次のように識別されたものに状況を解決するには

SELECT * FROM mysql.user WHERE user='wade'; 

SELECT * FROM mysql.db WHERE user='wade'; 

、どちらかREVOKEまたはDELETE + FLUSH PRIVILEGESトラブルの原因となる紛争(コーナーに自分自身を描画しないように注意して)、またはGRANT以上の特権。

+0

'SELECT user()'は 'wade @ localhost'を返します – Webnet

+0

コマンドラインとphpmyadminの両方から同じSELECT USER()を取得しましたが、コマンドラインからのみデータベースを見ることができますか? – Riedsio

+0

私はコマンドラインでチェックしなかった、それを考えなかった。 – Webnet

10

ここで私は多くの助けになりました。実際に私はMySQL Workbenchで作業していました。

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

簡単に言えば、それはMySQLが<匿名>アカウントを持っている、とあなたはユーザーでログイン失敗した場合、あなたは予告なしに、匿名ユーザーとしてログインし終わると言います。調べるには、このあなたが行うことができます。注意すべき

一つ重要なことはSELECT USER();があなたの 現在のユーザー名とホストを示すことである。なぜ

SELECT user(), current_user(); 

がここにあります。別のコマンド、SELECT CURRENT_USER(); は、として認証されていることを示しています。

確かに、私の場合には、user()[email protected]た、current_user()@localhost(アノンユーザー)でした。

+0

また、http://stackoverflow.com/a/24840338/2208271をチェックしてください。 – Sithsu

関連する問題