web-dev-qa-db-ja.com

phpMyAdminにデータベースが表示されない

私のウェブサイトは共有ホスティングサービスでホストされており、MySQLデータベースに保存されている更新されたニュースで正常に動作しています。 Webサイトのデータベースを管理するには、Webサイトで使用されているのと同じユーザー名とパスワードを使用して、phpMyAdminをサブフォルダーにインストールします。

PhpMyAdminにログインすると、データベースが表示されません。 phpMyAdminの左ペインに「データベースなし」と表示されています。

PhpMyAdminで設定する必要があるものはありますか?

編集済み:これはconfig.inc.phpの設定です。 phpMyAdminに正常にログインできます。

$cfg['Servers'][$i]['Host'] = 'hostname';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'dbuser';
$cfg['Servers'][$i]['password'] = 'password';
4
Thein Hla Maw

問題は、dbユーザーに「SHOW DATABASES」権限がないことです。そのため、phpMyAdminにデータベースが表示されません。

最初に[SQL]タブで[USE mydatabase]をクエリする必要があります。その後、データベースを表示および管理できます。

3
Thein Hla Maw

正規表現を受け入れるため、$cfg['Servers'][$i]['hide_db']を変更する必要があります。デフォルトは次のとおりです。

$cfg['Servers'][$i]['hide_db']='(mysql|information_schema|performance_schema|test|phpmyadmin)';

次のように変更する必要があります。

$cfg['Servers'][$i]['hide_db']='^(mysql|information_schema|performance_schema|test|phpmyadmin)$';

これで、正確なデータベースのみがphpMyAdminで非表示になり、名前にこれらの単語が含まれているデータベースは非表示になりません。

Hide_dbの公式ドキュメントは次の場所にあります: http://docs.phpmyadmin.net/en/latest/config.html?highlight=hide_db#cfg_Servers_hide_db 非常に奇妙なことですが、デフォルトでは行われていません

2

これは役に立たないかもしれませんが、他の人を助けるかもしれません。 EasyPHP wampスタックをインストールし、phpMyAdminでデータベースを作成できましたが、データベースのリストに表示されませんでした。コマンドラインコンソールからmysqlに手動でログインすると、データベースが表示されました。これで頭を壁にぶつけていた。

データベースにtest1という名前を付け、phpMyAdmin構成ファイルにはtestで始まるデータベースを無視する特別な行があることがわかりました。

$cfg['Servers'][$i]['hide_db'] = '(mysql|information_schema|performance_schema|test|phpmyadmin)';

この行を見ても、testという正確な名前をブロックしているだけだと思いました。ただし、computerなどの別のランダムなデータベース名を追加すると、すぐにデータベースのphpMyAdminリストに表示されるため、Wordテストで始まる(または含まれる可能性がある)すべてのものがブロックされるようです。

したがって、解決策は、上記の構成行を編集するか、名前にtestを含むデータベースを作成しないことです。

2
User

構成ファイルをセットアップする必要があると思います

http://wiki.phpmyadmin.net/pma/Config

1
Sabeen Malik