ホームページ >バックエンド開発 >PHPチュートリアル >憂鬱な質問、とても憂鬱です。

憂鬱な質問、とても憂鬱です。

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-23 14:03:55883ブラウズ

linux+apache+mysql+php というサーバーがあり、phpmyadmin がインストールされています
phpmyadmin を使用してサーバーにアクセスできます
しかし、自分で書いた php を使用すると、データベースに接続するときにターゲットマシンがアクティブであると表示されます。拒否します。つなげられない……。

    $username = "Test";       $psword = "123456";      $hostname = "10.12.18.27";      $dbName = "TestDb";     $server_link = mysql_connect("$hostname","$username","$psword")              or die("Can't connect to server" . mysql_error()); 

この文には問題があります……。お母さん、理由はありません
root または Test アカウントを使用して phpmyadmin に通常ログインできます
唯一の違いは、phpmyadmin がサーバー上にあることです
私の php コードは私のコンピューター (Apache+php+win7) 上にあります
について話しましょう。テストアカウントです。リモートログインはどうですか。どこからでもログイン機能は完全にオンになっています...


ディスカッションへの返信 (解決策)

mysql リモート接続を開く権限がありません

権限がありませんmysql リモート接続を開くには

ユーザー権限について話していますか?
%
localhost
127.0.0.1
ホスト名

これら 4 つすべてが有効になっています。

以前は普通でした。
サーバーを再起動するだけです
以上です

sqlyog またはコマンドラインを使用して接続して確認できます。接続が成功したかどうかを確認します。

sqlyog またはコマンドラインを使用して接続して確認できます。接続が成功したかどうかを確認します。

エラー コード 2003

mysql データベース内のユーザー テーブルのホスト項目の名前が localhost から % に変更されます

または、新しいレコードを追加します。ホスト項目はローカル IP アドレスであり、承認します
mysql サービスを再起動します

ルール:
GRANT コマンドを使用します
myuser が mypassword を使用して任意のホストから mysql サーバーに接続するようにしたい場合。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
ユーザー myuser が IP 192.168.1.3 のホストから mysql サーバーに接続することを許可したい場合は、 mypassword をパスワードとして使用します
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION

mysql データベース内の user テーブルのホスト項目の名前が localhost から % に変更されます

または、新しいレコードを追加します。ホスト項目は、ローカル IP アドレスであり、承認されています。
mysql サービスを再起動します。
ルール:
GRANT コマンドを使用します。
myuser に mypassword を使用して任意のホストから mysql サーバーに接続するようにしたい場合。
*.* のすべての権限を 'myu... に付与します...

理由が分かりません。
テストアカウントを削除し、同じ権限で新しいアカウントを作成しました

%
localhost
127.0.0.1
ホスト名

5階のxuzuningからの返信を引用:mysqlデータベースのユーザーテーブルのホスト項目, localhost から % の名前を変更します

または、新しいレコードを追加します。ホスト項目はローカル IP アドレスであり、承認します

mysql サービスを再起動します

ルール:
GRANT コマンドを使用します
myuser が mypassword を使用して mysql に接続するようにしたい場合任意のホストからのサーバー。
GRANT ALL PRIVI...
MYSQL を再起動すると正常になります。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。