NICOBOOMのテスト環境のために今更ながら手元のPCにMySQLを入れました。
バックアップからの復帰が楽なのでシステムにインストールしないで済むなら済ませたい派です。MySQLとMySQL GUI Toolsはどちらもインストーラ無し版が提供されているので、これ幸いとインストーラ無しで環境を整えてみました。
MySQLを動かすまではすんなりできたのですが、MySQL GUI Toolsでかなりはまったのでここに書いておきます。
MySQLの設定
1. MySQL AB :: MySQL DownloadsからMySQL Community ServerのWindows版のWithout installerと書いてあるものをダウンロードします。
2. 適当なディレクトリに解凍します。ダウンロード時に(unzip in C:\)と書いてありますが、Cドライブでなくても大丈夫です。ここでは、F:\mysql-5.0.45-win32に解凍したものとして話を進めます。パスに空白文字が含まれているときは、パスを表すときクォーテーションで囲むのを忘れずに。日本語のディレクトリでも大丈夫かは試してません。
3. Windowsにサービスとして登録しないで済ませたい場合は、F:\mysql-5.0.45-win32\bin\mysqld.exeを実行すればOKです。ログを表示させたいなら--consoleオプションを付けます。
C:\>F:\mysql-5.0.45-win32\bin\mysqld --console
4. あとはちゃんと動いているか試してみるだけ。
C:\>F: F:\>cd mysql-5.0.45-win32\bin F:\mysql-5.0.45-win32\bin>mysqladmin -uroot password "thinkbul" F:\mysql-5.0.45-win32\bin>mysqlshow -uroot -pthinkbul +--------------------+ | Databases | +--------------------+ | information_schema | | mysql | | test | +--------------------+ F:\mysql-5.0.45-win32\bin>mysqladmin -uroot -pthinkbul proc status version (略)
5. mysqldはCtrl-Cとかでは止まりません。止めたいときは、以下のようにします。
C:\>F:\mysql-5.0.45-win32\bin\mysqladmin -uroot -pthinkbul shutdown
参考:
MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 2.3.5 非インストール Zip アーカイブからのインストール
MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 2.3.10 MySQL の Windows のコマンドラインからの起動
MySQL GUI Toolsの設定
が入っています。設定や操作がGUIでできます。軟弱者にはありがたいです。
1. MySQL AB :: MySQL GUI Tools DownloadsからWindows版のWithout installerと書いてあるものをダウンロードします。
2. 適当なディレクトリに解凍します。ダウンロード時に(unzip in C:\)と書いてありますが、Cドライブでなくても大丈夫です。ここでは、F:\MySQL GUI Tools 5.0に解凍したものとして話を進めます。日本語のディレクトリでも大丈夫かは試してません。
3. F:\MySQL GUI Tools 5.0の中のMySQLAdministrator.exeをダブルクリックして、
Server Host: localhost Port: 3306 Username: root Password: thinkbul
などとすれば動く…と思いきや、以下のようなエラーメッセージが出てしまいます。
Could not find settings
Either the server service or the configuration file could not be found. Startup
variables and service section are therefore disabled.
解決するには、まずmysqldをサービスとして動かす必要があります(コマンドラインからの実行でGUI Toolsを使いたくていろいろ試したのですが、私には無理でした)。そして、サービスとして動かすためにはmy.iniを設定する必要があります。
4. my.iniを設定します。F:\mysql-5.0.45-win32\のmy-xxx.iniの適当なものをmy.iniにリネームします。どれがいいかは以下を参考に。
my-small.ini | for a system with little memory (<= 64M) |
my-medium.ini | for a system with little memory (32M - 64M) |
my-large.ini | for a large system with memory = 512M |
my-huge.ini | for a large system with memory of 1G-2G |
my-innodb-heavy-4G.ini | a MySQL example config file for systems with 4GB of memory |
5. my.iniの[mysqld]セクションに以下のように書き足します。区切り文字はスラッシュであって、バックスラッシュでないことにご注意。
basedir=F:/mysql-5.0.45-win32 datadir=F:/mysql-5.0.45-win32/data
C:\>F:\mysql-5.0.45-win32\bin\mysqld --install MySQL --defaults-file=F:\mysql-5.0.45-win32\my.ini
手動で起動するサービスとして登録するなら
C:\>F:\mysql-5.0.45-win32\bin\mysqld --install-manual MySQL --defaults-file=F:\mysql-5.0.45-win32\my.ini
ただ単に
C:\>F:\mysql-5.0.45-win32\bin\mysqld --install
とするだけでもサービスとして登録できますが、GUI Toolsが動いてくれません。
登録後に--defaults-fileの設定を書き足したい・書き直したい場合は、レジストリのHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQLのImagePathを
F:\mysql-5.0.45-win32\bin\mysqld --defaults-file=F:\mysql-5.0.45-win32\my.ini MySQL
などと書き換えてください。
7. サービスを開始します。コマンドラインから行うなら
sc start MySQL
と打ち込みます。*2
8. F:\MySQL GUI Tools 5.0の中のMySQLAdministrator.exeをダブルクリックして、
Server Host: localhost Port: 3306 Username: root Password: thinkbul
などとすれば、今度は動くはずです。
参考:
MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 2.3.7 オプション ファイルの作成
MySQL AB :: MySQL 5.1 リファレンスマニュアル :: 2.3.11 Windows のサービスとして MySQL を起動する
no sq - MySQL Administrator Error: “Could Not Find Settings”
Error2003-CantConnectToMySQLServer - MySQLForge Wiki
ポイントは
- サービスとして動かさないとダメ
- サービスで--defaults-fileを設定しておかないとダメ
- サービスとして動かすにはmy.iniでbasedir、datadirを設定しておかないとダメ
って点です。どれもただMySQLを動かすには必要ないことなのにGUI Toolsのためには必要で。いやあ、はまったはまった。