3

パスワードなしでphpを使用してmysqlデータベースに接続できます。ただし、phpmyadminでパスワードを追加すると、接続できなくなります。私は一貫して次のエラーを受け取ります:

"Could not connect: Access denied for user 'admin'@'localhost' (using password: YES)"

MySQLパスワード4.0と4.1+の両方の設定を使用してみましたが、同じ結果になりました。

mysql_connect ("127.0.0.1", "admin", "password") or  die('Could not connect: ' . mysql_error());;
mysql_select_db ("datatable");

誰かがここで何が起こっているのか考えていますか?

編集:パスワードをオフにするとアクセスできます。誤解があるようです

4

4 に答える 4

1

表示しているmysql_connectステートメントによると、として接続しようとしていadmin@'127.0.0.1'ます。これには、mysqlに接続するためにTCP/IPを使用する必要があります。admin@localhostmysql.sock(ソケットファイル)を使用してmysqldに接続するために接続する場合。

このクエリを実行する必要があります

SELECT user,host,password FROM mysql.user WHERE user='admin';

admin@localhost定義済みが表示されます。おそらく表示されませんadmin@'127.0.0.1'。追加することもできますが、のためにコーディングする方が簡単ですadmin@localhost

次のようにコードを変更してみてください。

mysql_connect ("localhost", "admin", "password") or  die('Could not connect: ' . mysql_error());;
mysql_select_db ("datatable");

パスワードなしでmysqlに接続できる場合、mysqlのインストールは安全ではありません。

次のように、admin @ localhostにパスワードを追加し、匿名ユーザーのログインを削除する必要があります。

UPDATE mysql.user SET password=password('whateverpassword')
where user='admin' and host='localhost';
DELETE FROM mysql.user WHERE user='';
FLUSH PRIVILEGES;

別の提案があります:次のようにadmin@127.0.0.1ユーザーを作成します。

GRANT ALL PRIVILEGES ON *.* TO admin@'127.0.0.1' IDENTIFIED BY 'whateverpassword';

元のコードを試してください

于 2012-04-13T21:38:46.317 に答える
1

これは役立つかもしれません

ステップ-

  1. phpmyadminに移動します。
  2. pwを変更するデータベースをクリックします(左側)。
  3. 「特権」をクリックします。
  4. ローカルホストのrootユーザーの右側にある「権限の編集」アイコンをクリックします。
  5. 「パスワードの変更」ブロックに移動します。
  6. 「パスワード」ラジオボタンにチェックマークを付けます。
  7. パスワードを入力し、そのパスワードを再入力します。
  8. ティック:...古いものを保持します。
  9. 「移動」をクリックします。
  10. 次に、WAMPSERVERメニューからMySqlコンソールを開きます。
  11. pwを要求されます–まだ持っていないので、リターンを押してください(次にコンソールに移動するときは、ここに入力する新しいpwを入力する必要があります)。次のように入力します。

    UPDATE mysql.user SET Password = PASSWORD( "xxxxxx")WHERE User = "root"; (ここで、xxxxxxは、前の手順で入力したパスワードです)。

  12. ここで、次のように入力します。FLUSH PRIVILEGES;

  13. WAMPまたはMAMPフォルダーに移動し、APPSフォルダーを見つけてから、PHPMYADMINフォルダー(たとえば、phpmyadmin2.11.6という名前のフォルダー)をクリックして、config.inc.phpを見つけます。

  14. ワードパッドでconfig.inc.phpを開き、次のテキストを見つけます。

$cfg['Servers'][$i]['password'] = '';

次に、手順3で使用したパスワードを次のように追加します。

$cfg['Servers'][$i]['password'] = 'yourPasswordHere';

  1. この変更を保存して、config.inc.phpを閉じます

これですべての設定が完了しました。

ソース-http://www.knowledgesutra.com/discuss/tsilti-php-myadmin-access-mysql-database.html

于 2012-04-13T22:20:04.510 に答える
0

ユーザー名またはパスワードが正しくありません。末尾にスペースを残さずに、正しく入力したことを確認してください。ユーザー名とパスワードでは大文字と小文字が区別されます。

于 2012-04-13T21:34:16.847 に答える
0

phpMyAdminを介してMySQLユーザーデータを改ざんする場合は、

FLUSH PRIVILEGES

新しいルールを適用するためのコマンド。

于 2012-04-13T22:09:56.630 に答える