Windows7 に MySQL5 の ZIP 版をインストールする
このページでは Windows7 に MySQL5 を ZIP からインストールする方法を説明します。
インストーラーを使用せずに MySQL をインストールしたい人は参考にしてください。
実際にインストールした際のバージョンの情報は以下の通りです。
Windows 7 Home Premium Service Pack 1
MySQL 5.6.21
尚、MySQL5 は公式ページから無料でダウンロードすることができます。ダウンロード方法はこのページで後述します。
MySQLのインストール&接続テスト手順
- Windows7 が 32 ビット版と 64 ビット版のどちらかを確認する。
- MySQL5 の ZIP 版をダウンロードする。
- ダウンロードした MySQL5 を解凍する。
- MySQL5 の設定ファイル( ini ファイル)を編集する。
- MySQL サーバーを起動してみる。
- MySQL サーバーに接続してみる。
- 管理者ユーザー root にパスワードを設定する。
- MySQL サーバーをシャットダウンする。
Windows7 が 32 ビット版と 64 ビット版のどちらかを確認する。
Windows7 は 32 ビット版と 64 ビット版の2種類があり、MySQL 5 もそれぞれのバージョンに対応したプログラムが用意されています。
MySQL5 をダウンロードする際には自分の Windows 7 のバージョンに対応したものをダウンロードする必要がありますので、事前にどちらかを確認しておきましょう。
[スタート] → [コントロールパネル] → [システム] を開くと、次のような画面が表示され32ビット版と64ビット版のどちらかを確認することができます。

MySQL5 の ZIP 版をダウンロードする。
MySQL5 は MySQL の公式サイトから無料でダウンロードできます。
MySQL 公式サイトのダウンロードページ(http://dev.mysql.com/downloads/mysql/)
上記のリンク先を開いたら、下にスクロールしてみてください。
32ビット用と 64 ビット用の MySQL5 (ZIP版)のダウンロードボタンがあるかと思います。

上記のページでダウンロードボタンをクリックすると、次のような画面が表示されると思います。
ログインボタンとサインアップ(アカウント作成)ボタンがあり、アカウントを持っていないとダウンロードできなそうな感じがしますが、アカウントを作成しないでもダウンロードできます。
アカウントを作成しないで MySQL をダウンロードするには、 No thanks, just start my download. というリンクをクリックします。

こちらのリンクをクリックすることで、ログインせずに MySQL5 を入手可能です。
ダウンロードした MySQL5 を解凍する。
MySQL5 のダウンロードが完了したら、任意のフォルダに ZIP ファイルを解凍して展開します。
次のように、今回は D:\app\mysql5.6.21 というフォルダに解凍してみました。

MySQL5 の設定ファイル( ini ファイル)を編集する。
MySQL5 を解凍したら、次は設定ファイルに必要な設定を書き込みます。
設定ファイル( my.ini )は解凍直後は存在しないので、my-default.ini というファイルをコピーして my.ini という名前にします。

my.ini を作成したら、テキストエディタで開いて編集しましょう。編集は Windows7 に標準で付属しているメモ帳で大丈夫です。
7 行目の [mysqld] より下に以下の記述を追加します。
[mysqld] character_set_server = utf8 collation_server = utf8_general_ci explicit_defaults_for_timestamp = TRUE
ちなみに my-default.ini は一切編集せずに初期設定のバックアップとして残しておきます。
MySQL サーバーを起動してみる。
MySQL サーバーの起動は、いわゆる DOS窓と呼ばれるコマンドプロンプトから行うことができます。
DOS窓は [スタート] → [プログラムとファイルの検索] に cmd と打ち込んでエンターキーを押下すると起動できます。

コマンドプロンプトを起動したら、MySQL5 を解凍して展開したフォルダに移動します。
今回の例では D:\app\mysql5.6.21 に解凍しているので
�� d: と入力(Dドライブに切り替え)
�� cd d:\app\mysql5.6.21 と入力
することで MySQL のインストールフォルダに移動します。
さらにそこから bin フォルダに移動します。
�� cd bin と入力
この bin フォルダには、MySQL の起動や管理等に必要な様々な exe ファイルが格納されています。
C:\Users\mysql_test>d: ← Dドライブに切替 D:\>cd d:\app\mysql5.6.21 ← MySQL のルートフォルダに移動 d:\app\mysql5.6.21>cd bin ← コマンドが格納されたフォルダに移動 d:\app\mysql5.6.21\bin>
ここで次のように mysqld コマンドを実行すると MySQL サーバーを起動します。
Windows からセキュリティ警告が出る場合がありますが、その場合はアクセスを許可するを選択します。

正しく起動すれば、[Note] mysqld: ready for connections.と表示された後にバージョンやポート番号の情報などが表示されます。
d:\app\mysql5.6.21\bin>mysqld --console 2014-11-30 06:35:50 5340 [Note] Plugin 'FEDERATED' is disabled. 2014-11-30 06:35:50 5340 [Note] InnoDB: Using atomics to ref count buffer pool p ages 2014-11-30 06:35:50 5340 [Note] InnoDB: The InnoDB memory heap is disabled 2014-11-30 06:35:50 5340 [Note] InnoDB: Mutexes and rw_locks use Windows interlo cked functions 2014-11-30 06:35:50 5340 [Note] InnoDB: Memory barrier is not used 2014-11-30 06:35:50 5340 [Note] InnoDB: Compressed tables use zlib 1.2.3 2014-11-30 06:35:50 5340 [Note] InnoDB: Not using CPU crc32 instructions 2014-11-30 06:35:50 5340 [Note] InnoDB: Initializing buffer pool, size = 128.0M 2014-11-30 06:35:50 5340 [Note] InnoDB: Completed initialization of buffer pool 2014-11-30 06:35:50 5340 [Note] InnoDB: Highest supported file format is Barracu da. 2014-11-30 06:35:51 5340 [Note] InnoDB: 128 rollback segment(s) are active. 2014-11-30 06:35:51 5340 [Note] InnoDB: Waiting for purge to start 2014-11-30 06:35:51 5340 [Note] InnoDB: 5.6.21 started; log sequence number 1626 233 2014-11-30 06:35:51 5340 [Note] Server hostname (bind-address): '*'; port: 3306 2014-11-30 06:35:51 5340 [Note] IPv6 is available. 2014-11-30 06:35:51 5340 [Note] - '::' resolves to '::'; 2014-11-30 06:35:51 5340 [Note] Server socket created on IP: '::'. 2014-11-30 06:35:51 5340 [Note] Event Scheduler: Loaded 0 events 2014-11-30 06:35:51 5340 [Note] mysqld: ready for connections. Version: '5.6.21' socket: '' port: 3306 MySQL Community Server (GPL)
MySQL サーバーに接続してみる。
mysql に接続するには mysql コマンドを使用します。
まずは先ほど mysqld を起動したときと同じフォルダに移動し、その後で mysql -u root と入力します。
D:\app\mysql5.6.21\bin>mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.6.21 MySQL Community Server (GPL) Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
上記のように mysql> で待ち状態になれば正常に接続できています。
ちなみに -u root というのは、root という名前のユーザーで接続する、という意味です。
mysql ではデフォルトで管理者用のユーザー root が用意されているので、ユーザーを作成しなくても root で接続することができます。
管理者ユーザー root にパスワードを設定する。
初期設定では管理者 root にパスワードが設定されていないので、もし必要であればパスワードを設定しておきます。
パスワードは SET PASSWORD = password('設定したいパスワード'); で設定できます。
次の例では、パスワードを hogehoge に設定しています。
mysql> SET PASSWORD = password('hogehoge');
Query OK, 0 rows affected (0.00 sec)
mysql>
本当にパスワードが設定されたか exit; で MySQL から切断した後、再接続して試してみます。
mysql> exit Bye D:\app\mysql5.6.21\bin>mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: N O) D:\app\mysql5.6.21\bin>
パスワードが設定されているので、パスワード無しのアクセスは拒否されました。
接続時にパスワードを送信するには mysql コマンドの引数に -p を追加します。
先ほどのコマンドに -p を追加して mysql -u root -p を実行してみるとパスワードの入力が求められるので、先ほど設定したパスワードを入力します。。
D:\app\mysql5.6.21\bin>mysql -u root -p
Enter password: ******** ← 先ほど設定したパスワードを入力
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.21 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
次にサーバーをシャットダウンしてみるので、ログインしたユーザーは exit でログアウトしておきます。
mysql> exit Bye
MySQL サーバーをシャットダウンする。
MySQL サーバーを落とすには mysqladmin shutdown -u root -p を実行します。
シャットダウンは root ユーザーの権限で実行する必要があるので -u root を指定しています。
また root ユーザーにパスワードを設定している場合には、ログイン時と同様に -p も指定する必要があります。
D:\app\mysql5.6.21\bin>mysqladmin shutdown -u root -p Enter password: ******** D:\app\mysql5.6.21\bin>
コマンドを実行した方のウインドウには何も表示されませんが、mysqld を実行しているウインドウを見てみると、シャットダウンが実行されていることが分かります。
2014-11-30 09:37:00 3500 [Note] Giving 0 client threads a chance to die graceful ly 2014-11-30 09:37:00 3500 [Note] Event Scheduler: Purging the queue. 0 events 2014-11-30 09:37:00 3500 [Note] Shutting down slave threads 2014-11-30 09:37:00 3500 [Note] Forcefully disconnecting 0 remaining clients 2014-11-30 09:37:00 3500 [Note] Binlog end 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'partition' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'PERFORMANCE_SCHEMA' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_DATAFILES' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_TABLESPACES' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN_COLS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_FOREIGN' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_FIELDS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_COLUMNS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_INDEXES' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_TABLESTATS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_SYS_TABLES' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_INDEX_TABLE' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_INDEX_CACHE' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_CONFIG' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_BEING_DELETED' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_DELETED' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_FT_DEFAULT_STOPWORD ' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_METRICS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_BUFFER_POOL_STATS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE_LRU' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_BUFFER_PAGE' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMP_PER_INDEX_RESET ' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMP_PER_INDEX' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMPMEM_RESET' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMPMEM' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMP_RESET' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_CMP' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_LOCK_WAITS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_LOCKS' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'INNODB_TRX' 2014-11-30 09:37:00 3500 [Note] Shutting down plugin 'InnoDB' 2014-11-30 09:37:00 3500 [Note] InnoDB: FTS optimize thread exiting. 2014-11-30 09:37:00 3500 [Note] InnoDB: Starting shutdown... 2014-11-30 09:37:01 3500 [Note] InnoDB: Shutdown completed; log sequence number 1626253 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'BLACKHOLE' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'ARCHIVE' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'MRG_MYISAM' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'MyISAM' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'MEMORY' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'CSV' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'sha256_password' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'mysql_old_password' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'mysql_native_password' 2014-11-30 09:37:01 3500 [Note] Shutting down plugin 'binlog' 2014-11-30 09:37:01 3500 [Note] mysqld: Shutdown complete d:\app\mysql5.6.21\bin>