2016-09-26 7 views
1

私はMysql DBへのリモートアクセスを許可しています。これは リモートMySQLアクセスを有効にしてもローカルホストでは機能しません

[mysqld] 
local-infile=0 
user = mysql 
pid-file = /var/run/mysqld/mysqld.pid 
socket = /var/run/mysqld/mysqld.sock 
port = 3306 
basedir = /usr 
datadir = /var/lib/mysql 
tmpdir = /tmp 
bind-address = IP_OF_SERVER 
#skip-networking 

問題な/etc/my.cnf

/etc/my.conf猫は私がDBにリモートで接続することができるが、私は次のようにconfファイルを有効にした場合、である私のconfファイルでありますこれは、mysqlを使用している私とは異なる内部アプリケーションがlocalhostに接続できません。

これを正しく解決する方法がわかりません。実行する必要がある追加のステップはありますか?

私はこの投稿をチェックしました。https://stackoverflow.com/a/13811362/5000868しかし、それは私には分かりません。

これは、(私は故意にパスワードフィールドが含まれていなかった)のように、私のuserテーブルがどのように見えるかです

-----------------------+----------------+-------------------------------------------+------------- 
| Host     | User   | Password         | Select_priv 
+-----------------------+----------------+-------------------------------------------+------------- 
| localhost    | root   | *      | Y   
| localhost.localdomain | root   | *      | Y   
| 127.0.0.1    | root   | *      | Y   
| localhost    |    | *      | N   
| localhost.localdomain |    | *      | N   
| localhost    | 9r9v17559f9tew | *      | Y     
| %      | 9r9v17559f9tew | * 

要約するので、私は両方のリモートで&とlocalYユーザ名9r9v17559f9tewでMySQLにアクセスできるようにしたいです。

ありがとうございます! EDIT

ホスト名が127.0.0.1のもう1人のユーザー9r9v17559f9tewを追加しました。 さらに、私はこのようなサーバー上とlocalY DBにアクセスしようとすると、私は次のエラーを取得する:

のmysql -u 9r9v17559f9tew -p

は、パスワードを入力します。 ERROR 2002(HY000):に接続できませんローカルのMySQLサーバソケット「/var/lib/mysql/mysql.sock」を介して(2)

そして、私はこのようにとlocalYまたはリモート接続しようと、私は接続できています:ちょうど

# mysql -u 9r9v17559f9tew -p -h IP_OF_SERVER 
Enter password: 
Welcome to the MySQL monitor. Commands end with ; or \g. 
+1

http://stackoverflow.com/questions/11990708/error-cant-connect-to-local-mysql-server-through-socket-var-run-mysqld-mysq私はあなたのmysqldをtcp/ipとソケット接続の両方にオープンしておく必要があると信じています! –

+0

はい、私はポートを開いています。私はiptables経由でそれを開きました。 netstat -tln | grep 3306 tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN – fugitive

答えて

1

バインドアドレス宣言を削除します。

その後、サービスを再開してください。

私が知る限り、デフォルトでMySQLは0.0.0.0にバインドされます。これにより、ローカルアクセスとリモートアクセスが可能になります。サーバのIPを指定することで、IPが割り当てられているethインタフェースからの接続のみを受け付けます。特に答えの終わりに、

+0

私もそれを試しましたが、内部アプリケーション(SolusVM)はまだデータベースに接続できません。 私はそれを0.0.0.0にもバインドしようとしましたが、それは役に立ちませんでした。 – fugitive

+0

何の結果ですか? netstat -tln | grep 3306 – Thomas

関連する問題