2017-03-14 6 views
0

私はリモートからmysqlに接続しようとしています。これは、私はいくつかのチュートリアル/質問を読んで、私はこのエラーを取得しておくように一般的な質問ですので: ERROR 2003 (HY000): Can't connect to MySQL server on 'the-ip-address' (60) 私は/etc/mysql/my.cnfを編集し、次のようにbindするアドレスの行をコメント:ERROR 2003(HY000)リモートでmysqlに接続しようとしています

#bind-address = 127.0.0.1

その後、私は走った:

$ sudo service mysql restart

の出力で: mysql stop/waiting mysql start/running, process 9853

mysqlがデフォルトのポートで実行されています:3306

リモートで接続しようとしているユーザをサーバでローカルに使用しています(私はサーバからmysqlに接続できます)。 phpmyadminので

私はこれらのユーザーを設定します。 [email protected] [email protected] [email protected]

その後、私は次のように接続しようとしています:

mysql -u user -p -h 87.45.34.23

たぶん私は何かが欠けています...先進

にありがとう

更新 @Geoffreyがコメントに示唆したように、問題はファイアウォール。このような理由から私は彼の答えを受け入れるだろうが、答え自体はそれではないが、コメントの中で彼は正しい。

+0

どのIPにあなたのDBがあなたのリモートマシンを持っていますか。あなたはリモートIP *ユーザ@リモートIPでユーザを作成し、mysql -uuser -s -h dbatabase-ipに接続する必要があります –

+0

87.45.34.23は私のデータベースが作業しているipです – jazzdle

+0

ユーザアカウントが正しくありません"[email protected]"あなたは、リモートIP "user @ remote-ip"または任意のIPのための1つの "user @%"で作成する必要があります –

答えて

0

接続が拒否されたということは、MySQLサーバがリッスンしていないか、ファイアウォールされていることを意味します。バインド行をコメントアウトすることで

、MySQLは何にも結合して、ローカルソケットへのアクセスを許可しない、あなたは0.0.0.0

を指定することにより、ローカルIP、またはすべてのIPのどちらかにバインドする必要があります。またそのskip-networkingを確保どこにも設定されていません。

+0

ユーザアカウントとクライアントからのipは同じです。それで、彼はリモートマシンに接続していて、MySQLサーバはありません。 –

+0

MySQLがローカルUNIXソケットにのみバインドされている場合、ループバック( '127.0.0。ERROR 1045(28000)ではなく、ERROR 2003(HY000):MySQLサーバーに接続できません。 'というエラーが表示されているため、 :ユーザーのアクセスが拒否されました。 – Geoffrey

+0

いいえ - バインドはコメント "#bind-address = 127.0.0.1"ですので、バインドはデフォルトのIPです0.0.0.0 –

関連する問題