あまりにも多くを説明するのが面倒、私は恐れて、要約レコードの以下の方法、問題を解決することであり、一日の大半を費やしの問題に対処するための簡単な、しかし完全な、記念しかし、第二に、他の子供たちは、人間の問題が発生するのに役立つ共有の精神に沿って、もちろん、このアプローチは、必ずしもあなたの問題を解決していませんが、どのように多くのいくつかの解決策のアイデアを提供することができます。
まず、ファイアウォールを確認し、通常それは問題になりません
(問題があるとき、私は、このルールは削除置い影響は認められなかったので、コンテナは、それはファイアウォールの問題を解決したドッキングウィンドウかもしれないが、他の人がこの問題を持って排除するものではない。)
ルールを追加します。
データベースのセキュリティを確保するために特定のアドレスのためのオープンある程度の3306ポート、 iptablesの -IはINPUTが-s 172.17を。0.2 --dport -p tcpの3306 - JはACCEPT 現在のルールを示して iptablesの - 保存 出力ファイルルールに iptablesの -save> iptablesの。 rules.backup ファイルに支配する現在のファイアウォールルールに輸出されて有効になり iptablesの -restore <iptables.rules.backup
第二に、ユーザーがリモートデータベースのIPアドレスに接続できるように、rootユーザーのホストレコードにデータベースのユーザーテーブルを追加し、バインディング設定をコメントアウトし、MySQLの設定ファイルを変更
:によって引き起こされる問題
のMySQLサーバ上に接続できないのを(111 "接続が拒否されました")
解決済み:
MySQLデータベース、独自の構成ファイルを見つけ、編集する
/etc/mysql/mysql.conf.d# VI mysqld.cnfは
コメント127.0.0.1に結合するであろう
リモート接続を開いた後、2番目の質問があります:
「ホスト『172.17.0.2』このMySQLサーバへの接続を許可されていません」
解決策:
データベースへのrootアクセスは、下の2行を実行します。
上のすべての権限を付与します* *オプション付与;.で「PSWD」で識別される「root'@'172.17.0.2」に
(PSWDへのルートとしてルートにすべての権限にオープン、必ずしもrootのパスワード、ログイン時間172.17.0.2からのすべてのデータベース(* *唯一のシーンでパスワードとして特定のデータベース内の特定のテーブルに変更してもよい)、パスワード、この表の下のすべての操作を許可するにはランダム)。
フラッシュ権限;
リフレッシュ
データベースを再起動して
STOP /etc/init.d/mysql
/etc/init.d/mysqlスタート
時間とその後、ドッキングウィンドウからデータベースへのアクセスができるようになります
〜/は、Telnet 172.17.0.1#3306バックエンドは:ルート@ 2395caf9da2b
172.17.0.1をしようと...
172.17.0.1に接続する。
「^]」の文字をエスケープします。
結果は、その権限のみオープンIPアドレスであります
、オンライン子も順序の変更を提供し、多くの善意の仲間があることに注意してくださいに* *「ルート」@「%」を付与オプションで「PSWD」によって識別されるまで;すべての権限を付与
IPアドレスは%に変更され、この結果は限り任意のマシンからリモート接続時にrootのパスワードが正しいと、きっぱりと、受け入れますが、どのように多くの利点が、このようなセキュリティリスク、自分の権利を保持することになるということです。