Windows 上で MySQL を構築するには、cmake と Microsoft Visual Studio .NET 2003 (7.1)、Microsoft Visual Studio 2005 (8.0)、または Microsoft Visual C++ 2005 Express Edition を組み合わせて使います。適切な Microsoft Platform SDK がインストールされている必要があります。
            Windows
            上でソースコードからコンパイルするには、標準ソース配布
            (mysql-5.1.47.tar.gz
            など)
            を使用する必要があります。Unix、Linux、およびその他のプラットフォームで
            MySQL
            を構築するときに使用するのと同じ配布から構築します。Windows
            ソース配布は、必要な設定スクリプトおよびその他のファイルが含まれていないため使用しないでください。
          
MySQL をビルドするには以下の手順に従います。
              パッケージの配布からインストールする場合、作業ディレクトリ
              (たとえば、C:\workdir)
              を作成し、WinZip
              あるいは .zip
              ファイルを読める別の Windows
              のツールを使用してソース配布を作業ディレクトリに解凍します。このディレクトリは作業ディレクトリでその手順は以下のようになります。
            
コマンドシェルを使用するには、作業ディレクトリをナビゲートして以下のコマンドを実行します。
C:\workdir>win\configure.js options
              .js
              ファイル拡張子をテキストエディタなどのアプリケーションと関連付けている場合は、次のコマンドを使って
              configure.js
              をスクリプトとして強制的に実行する必要があることがあります。
            
C:\workdir>cscript win\configure.js options
              次のオプションが
              configure.js
              で使用できます。
            
                  WITH_INNOBASE_STORAGE_ENGINE:InnoDB
                  ストレージエンジンを有効にします。
                
                  WITH_PARTITION_STORAGE_ENGINE:ユーザー定義のパーテッション化を有効にします。
                
                  WITH_ARCHIVE_STORAGE_ENGINE:ARCHIVE
                  ストレージエンジンを有効にます。
                
                  WITH_BLACKHOLE_STORAGE_ENGINE:BLACKHOLE
                  ストレージエンジンを有効にします。
                
                  WITH_EXAMPLE_STORAGE_ENGINE:EXAMPLE
                  ストレージエンジンを有効にします。
                
                  WITH_FEDERATED_STORAGE_ENGINE:FEDERATED
                  ストレージエンジンを有効にします。
                
                  WITH_NDBCLUSTER_STORAGE_ENGINE
                  (試験段階): MySQL
                  サーバーの
                  NDBCLUSTER
                  ストレージエンジンを有効にします。MySQL
                  Cluster
                  の管理およびデータのノード、管理クライアント、およびその他のプログラムのバイナリを構築します。
                
                  このオプションは、MySQL Cluster
                  ソースを使用する MySQL Cluster NDB 7.0
                  (NDBCLUSTER
                  ストレージエンジンのバージョン 6.4.0
                  以降) でのみサポートされます。ほかの
                  MySQL
                  ソースツリーまたは配布でのクラスタ化のサポートを有効にするために使用することはできません。
                
                  MYSQL_SERVER_SUFFIX=:サーバー接尾辞、デフォルトはなし
                suffix
                  COMPILATION_COMMENT=:Server
                  コメント、デフォルトは
                  「ソース配布」
                comment
                  MYSQL_TCP_PORT=:サーバーポート、デフォルトは
                  3306。
                port
                  DISABLE_GRANT_OPTIONS:
                  --bootstrap、--skip-grant-tables、および
                  --init-file
                  オプションを
                  mysqld
                  に対して無効にします。このオプションは
                  MySQL 5.1.15 から利用できます。
                
たとえば (1 つの行にコマンドを入力します):
C:\workdir>win\configure.js WITH_INNOBASE_STORAGE_ENGINEWITH_PARTITION_STORAGE_ENGINE MYSQL_SERVER_SUFFIX=-pro
              作業でディレクトリから、インストールした
              Visual Studio のバージョンに基づいて
              win\build-vs8.bat
              あるいは
              win\build-vs71.bat
              ファイルを実行します。スクリプトが CMake
              を実行し、mysql.sln
              のソリューションファイルを生成します。
            
              また
              win\build-vs8_x64.bat
              を使用して 64-ビットバージョンの MySQL
              をビルドできます。しかし、64-ビットバージョンを
              Visual Studio Express Edition
              ではビルドできません。Visual Studio 2005 (8.0)
              あるいはそれ以上を使用する必要があります。
            
              作業ディレクトリで、生成された
              mysql.sln
              ファイルを Visual Studio
              で開いて、「Configuration」メニューで適切な設定を選択します。メニューには「Debug」、「Release」、「RelwithDebInfo」、「MinRelInfo」オプションがあります。次に「Solution」
              >
              「Build」を選択してソリューションをビルドします。
            
このステップで使用した設定を覚えておきます。これはあとでスクリプトを実行するときに重要になります。というのは、スクリプトはどの設定になっているか知る必要があるからです。
              サーバーのテスト。上記の手順でビルドしたサーバーの
              MySQL
              ベースディレクトリおよびデータディレクトリはデフォルトで
              C:\mysql および
              C:\mysql\data
              になります。サーバーをソースのツリールートおよびそのデータディレクトリをベースのディレクトリおよびデータディレクトリとして使用してテストするには、サーバーにそれらのパス名を指定する必要があります。これは
              --basedir
              オプションおよび
              --datadir
              オプションのコマンドライン、あるいはオプションファイルで適切なオプションを設定することで指定できます。詳細は、Using Option Files
              を参照してください。使用したい既存のデータディレクトリがどこかにある場合、代わりにそのパス名を指定します。
            
サーバーをスタンドアロンで稼働している場合あるいは設定上サービスベースで運用している場合、mysql のインターラクティブコマンドラインユーティリティーからそれに接続します。
              標準のテストスクリプト、mysql-test-run.pl
              を実行することもできます。このスクリプトは
              Perl
              で書かれているので、それを実行するには
              Cygwin あるいは ActiveState Perl
              のいずれかが必要です。またこのスクリプトに必要なモジュールをインストールしなければならない場合もあります。テストスクリプトを実行するには、ロケーションを作業ディレクトリの
              mysql-test
              ディレクトリに変更し、MTR_VS_CONFIG
              環境変数を以前選択した (あるいは
              --vs-config
              オプションを使用し)
              設定を選択して、mysql-test-run.pl
              を実行します。たとえば (Cygwin および
              bash
              シェルを使用して l):
            
shell>cd mysql-testshell>export MTR_VS_CONFIG=debugshell>./mysql-test-run.pl --force --timershell>./mysql-test-run.pl --force --timer --ps-protocol
          ビルドしたプログラムが正常に機能していることに満足したら、サーバーを停止します。この段階で配布をインストールできます。これを行う方法の
          1 つは、MySQL ソース配布の
          scripts
          ディレクトリで
          make_win_bin_dist
          スクリプトを使用することです
          (make_win_bin_dist
          を参照)。これはシェルスクリプトなので、これを使用する場合は
          Cygwin
          をインストールする必要があります。それによりビルドした実行ファイルの
          Zip アーカイブを作成し、MySQL
          をインストールするロケーションに解凍するファイルをサポートします。
        
ディレクトリやファイルを直接コピーして MySQL をインストールすることもできます。
              MySQL
              をインストールするディレクトリを作成します。たとえば、C:\mysql
              にインストールするには、このコマンドを使用します。
            
C:\>mkdir C:\mysqlC:\>mkdir C:\mysql\binC:\>mkdir C:\mysql\dataC:\>mkdir C:\mysql\shareC:\>mkdir C:\mysql\scripts
ほかのクライアントをコンパイルしてそれらを MySQL にリンクさせるには、さらに幾つかのディレクトリを作成する必要があります。
C:\>mkdir C:\mysql\includeC:\>mkdir C:\mysql\libC:\>mkdir C:\mysql\lib\debugC:\>mkdir C:\mysql\lib\opt
MySQL をベンチマークするには、このディレクトリを作成します。
C:\> mkdir C:\mysql\sql-bench
ベンチマークするには Perl のサポートが必要です。項2.15. 「Perl のインストールに関する注釈」 を参照してください。
              作業ディレクトリから、以下のディレクトリを
              C:\mysql
              ディレクトリにコピーします。
            
C:\>cd \workdirC:\workdir>copy client_release\*.exe C:\mysql\binC:\workdir>copy client_debug\mysqld.exe C:\mysql\bin\mysqld-debug.exeC:\workdir>xcopy scripts\*.* C:\mysql\scripts /EC:\workdir>xcopy share\*.* C:\mysql\share /E
ほかのクライアントをコンパイルしてそれらを MySQL にリンクさせるには、幾つかのライブラリとヘッダーファイルもコピー必要があります。
C:\workdir>copy lib_debug\mysqlclient.lib C:\mysql\lib\debugC:\workdir>copy lib_debug\libmysql.* C:\mysql\lib\debugC:\workdir>copy lib_debug\zlib.* C:\mysql\lib\debugC:\workdir>copy lib_release\mysqlclient.lib C:\mysql\lib\optC:\workdir>copy lib_release\libmysql.* C:\mysql\lib\optC:\workdir>copy lib_release\zlib.* C:\mysql\lib\optC:\workdir>copy include\*.h C:\mysql\includeC:\workdir>copy libmysql\libmysql.def C:\mysql\include
MySQL をベンチマークするには、以下が必要です。
C:\workdir> xcopy sql-bench\*.* C:\mysql\bench /E
インストールしたら、バイナリの Windows 配布と同じようにサーバーを設定して起動します。項2.3. 「Windows に MySQL をインストールする」 を参照してください。
