仮想OS上のMySQLへの接続
仮想OS上のMySQLへの接続
執筆:2006/11/27
編集:2006/11/27
MySQLのバージョンが違う物で、動作を試す必要がありましたので
ローカルPC上でMySQLの複数バージョンを使えるようにしました。
使ってみると体感は
ローカル(ホストOS)のWin上のMysqlよりなんだか高速に使えています
それで、
設定が 非常に難しかったので、メモ(._.) φ
まず必要な物 | |
メモリ | 400MB以上 |
仮想OS | Virtual PC (無料版) |
OS | VineLinux 4(無料版) |
MySQL | Clientとserverツール (パッケージから取得できます。) |
Step1:仮想OSソフトのインストール
VitualPC, VM , QEMU好きな物をどうぞ。
ただし、QEMUは自動保存が利かないので利用しない方がいいでしょう。
筆者は、VitualPCを使いましたのでVitualPC前提で進めていきます。
インストールが済みましたか?
それでは、インストール後に
VitualPCの説明書に従って、Microsoft Loopback Adapterをインストールします。
Microsoft Loopback Adapter | TCP/IP |
次のIPアドレスを使う | |
IPアドレス | 192.168.1.1 |
サブネットマスク | 255.255.255.0 |
デフォルトゲートウェイ |
Step2:仮想OSのインストール(ゲストOS)
筆者は、Vine linux4.0をインストールしました。
設定を楽にするため サーバーとGNOMEをインストールしました。
ネットワークの設定は、インストール後にします。
IPアドレス | 192.168.1.10 | 192.168.x.y のyの部分は 好きなもので結構です xの部分は上のホストOSと同じ物にしてください 詳しくはOS付属のwindowsヘルプを読んでください |
サブネットマスク | 255.255.255.0 | |
デフォルトゲートウェイ | 192.168.1.1 | |
ネームサーバー | 192.168.1.1 | ? |
※筆者のPCでは、Microsoft Loopback Adapterを
一番目のアダプタにしないとうまく動きませんでした。
(インストール後に変更もできます)
OS名は適当にどうぞ、後で変更ができます
セットアップでうまくいかなかった場合は、
再起動後に以下のメニューから設定ができます。
管理者でGNOME起動後に、 メニューバーの
デスクトップ→システム管理→ネットワークの管理
tips:わけがわからなくなったら、
停止した後仮想OSのネットワークアダプタをはずして再起動して設定を削除しますかで削除して
再起動してしまえば、また最初からやり直せます
Step3:仮想OS上のサービスの起動
手動で行うには、
サービスの手動起動 | service サービス名 start |
サービスの自動起動 登録/解除 |
chkconfig --list chkconfig サービス名 off chkconfig サービス名 on |
ファイヤーウォール | ややこしいので省略 (下を参考のこと) |
とても面倒なので、
管理者でGNOME起動後に、 メニューバーの
デスクトップ→システム管理→ネットワークの管理
デスクトップ → システム管理 → ネットワークの管理 |
|
サービスの管理 | 起動時に自動起動する サービスの設定を行います。 mysqlにチェックを付けます。 また不要なものは 停止させるといいでしょう |
セキュリティレベルの設定 とファイアウォール |
必要なポートを開きます。 mysqlは 3306 tcpを使います。 一覧に無い場合は 手動で追加してください |
Step4:接続の確認
Window上から
ping 192.168.1.10と打ってみましょう。
反応があれば接続成功です
では、Linux上から
ping 192.168.1.1と打ってみましょう。
反応があれば接続成功です
Window上から
mysqladmin -u root --password="password" -h 192.168.1.10
きっと あなたダメと断られるでしょう。
Step5:Mysqlの接続許可IPリストへ登録
GRANT USAGE ON *.* TO 'dummy'@'192.168.1.1' IDENTIFIED BY 'pwassword' WITH GRANT OPTION; FLUSH PRIVILEGES; |
|
SET PASSWORD FOR 'dummy'@'localhost' = PASSWORD('pwassword'); FLUSH PRIVILEGES; |
Step6:運用
全部正常に動くことが確認できましたら、
再起動してログイン画面で放置しておくと
無駄なメモリも使わずに、動作が軽快になると思います。
終了するときは、状態を保存するようにしておけば
静的IPにしているので
次回使うときは、瞬時に立ち上げれるので便利です。
Step_Extra1:Error編
ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.10' (10061) | |
接続が確立していません。 ネットワークの設定を確認してください。 ping 192.168.1.10でつながりますか? つながる場合は、 ファイヤーウォールを見直してください IP-ドメイン解決は、 C:\WINDOWS\SYSTEM32\DRIVERS\etc\hosts に登録で簡単にできます。 |
|
ERROR 1045 (00000): Access denied for user: 'root@192.168.1.1' (Using password:YES) | |
mysqlへの ユーザー及び接続ホスト権限 設定が必要です 例: 192.168.1.1から接続してくるdumyさんを許可. GRANT USAGE ON *.* TO 'dummy'@'192.168.1.1' IDENTIFIED BY 'pwassword' WITH GRANT OPTION; FLUSH PRIVILEGES; |
|
突然rootでもログインできなくなった・・・ 付属の説明書の mysql-initを参照しましょう。 Problems and Common Errors Administration-Related Issues A.4.1. How to Reset the Root Password |
|
Q:動的に自動でホスト名とIPを関連づけしたいのですが?
A: 筆者には、わかりません。 |
|
Q: 必要なソフトが足りません。 インストールを忘れました。 A: synapticで検索して追加してください。 |
Step_Extra2:番外編
※
最後に
筆者のPCでは、(数分で)
一定操作や一定時間たつと
VirtualPCでのキーボード、又はマウスを受け付けなくなる。
VirtualPC2004の不具合
もしくは、
未対応のXP HOME上で動かしている
のどちらかだと推測しているが さだかではない。
キー操作がきかないときのために
sshdなどを有効にして、
ホストOS上からログインできるようにしておきたい。
linuxのユーザーの追加
adduser -g users ユーザー名
passwd ユーザー名
また、KDEをインストールすると
guarddogという強力なファイヤーウォール設定ソフト
を導入することが可能になります!!
Step_Extra3:MySQLインストール
Windows | 公式サイトからダウンロードします。 |
VineLinux | 外部と接続が確立している場合 synaptioc や apt-get install MySQL-server apt-get install MySQL-client などを使います |
外部と接続が確立していない場合 vineのftpから必要なrpmを 持ってきて、 rpm -i MySQL-server_4.0.25-0vl0_i386.rpm rpm -i MySQL-client_4.0.25-0vl0_i386.rpm みたいにします。 |
|
FreeBSD | pkg_addかなにかで試してみてください。 |