MySQLとネットワークが絡む辺りの小ネタを。
telnetでの疎通確認。
以下を実行して、MySQLのバージョンが表示されて自動的に切断されたら正常な動き。
# telnet [接続先マシンホスト名/IP] [ポート番号]
接続が許可されていない等のエラーが返ってきたら、接続先マシンホスト名/IPや、
ポートの指定に問題がないか疑ってみる。
F/Wではじかれている場合は “Trying…” の状態でストップする動作になるようだ。
F/W側の設定によって変わるかもしれないが。
MySQLサーバへネットワークログイン。
# mysql -h [接続先マシンのIP] -P [ポート番号] -u [ユーザ名] -p
上記の接続確認は、例えばレプリケーション実装の際にレプリケーションユーザが正常にアクセスできるか、を事前に確認する時に行うとよい。
接続できない時は、接続先のMySQLユーザアカウント設定に問題がないか確認。
あとしょうもないことだが、パスワードが違っていることもわりと、ある。
例えばいつも利用しているユーザ以外でログインしようとした時に、無意識の
うちにいつものパスワードを打ち込んでしまって「あれ、何で入れない!?」
と焦ったり。自分の例ですけど、、、
–skip-networkingオプション。
起動時のオプションで–skip-networkingを指定すると、上記のようなネットワーク
ログインやアプリケーションからのTCP/IPアクセスを無効にする。
メンテナンス中などに利用する。
bind-addressパラメータについて。
これはサーバが複数のIPアドレスを持っている場合に、待ち受けするIPアドレスを
指定するパラメータ。単体のIPアドレスの場合は使用しても意味がないので、
当てはまらない場合はコメントアウトしておけばよい。
my.cnfにて”bind-address = 127.0.0.1″となっていたためにネットワーク接続が
できなかった事例は数多くあるようだ。