2011-01-12 15 views
3

Amazon EC2のLinuxサーバーにmysqlデータベースをセットアップしました。これはローカルでうまく機能します。私はLinuxのボックスにログインし、mysqlデータベースを管理することができますWindows GUIツールからリモートLinuxサーバー上のMySqlデータベースに接続できません

ローカルのGUIクライアントをリモートのmysqlに接続しようとしていますが、接続に失敗しています。

私は/etc/mysql/my.cnfファイルを更新して、次のように変更:

skip-networking 
bind-address   = 0.0.0.0 

は、私はまだ接続することはできませんよ。何かご意見は?

EDIT:私は最初のバインドアドレス= 0.0.0.0を試してみましたが、その後、私はスキップネットワーキングをバインドアドレス

EDIT#2を追加しました:私は、セキュリティグループは、3306 Iに開きことを確認しました私はそのアマゾンの特定の問題を考えないでください。

+1

skip-networkingはTCP接続のサポートを無効にします。 UNIXドメインソケット経由での接続に限定されます。 TCPが有効になっていないので、バインドアドレスも無用になります。 –

+0

私は同様の問題を抱えていましたが、ある地域でインスタンスを作成してから別の場所に接続しようとしましたが、失敗しました – PurplePilot

+0

セキュリティグループをチェックしましたか?ポート3306を開き、IPを許可します。 –

答えて

2

パブリックアクセス(またはIP制限がある場合でも)のためにポート3306を開くことは一般的にお勧めしません。私は個人的には常にポート3306をPutty/sshでトンネルし、localhostを使ってデータベースに接続します。この場合

は、このようなユーザーのための権限を付与することを忘れないでください:

grant all privileges on yourDatabaseName.* to 'yourUserName'@'localhost' identified by "yourUsersPassword"; 

あなたはまだ直接接続を作成する場合、それはあなたのユーザーがまだ十分な権限を持っていないことを、可能です。これを試すことができます:

grant all privileges on yourDatabaseName.* to 'yourUserName'@'yourClientsIp' identified by "yourUsersPassword"; 
+0

これは間違いなく道のりです。 PuTTYでそれを行う方法については、http://realprogrammers.com/how_to/set_up_an_ssh_tunnel_with_putty.htmlを参照してください。 –

+0

ええ、私はトンネルを作りました。ありがとう – Tihom

関連する問題