このセクションでは、MySQL を最新の開発ソースコードからインストールする方法を説明します。最新の開発ソースコードは現在、GitHub および Launchpad の両方にホストされています。MySQL Server のソースコードをこれらのリポジトリホスティングサービスのいずれかから取得するには、ローカルの MySQL Git リポジトリまたはローカルの MySQL Bazaar ブランチをセットアップします。
-
GitHub では、MySQL Server およびその他の MySQL プロジェクトは MySQL ページにあります。MySQL Server プロジェクトは、MySQL 5.5、5.6、および 5.7 のブランチを含む単独のリポジトリです。
MySQL は、2014 年 9 月に正式に GitHub に参加しました。MySQL の GitHub への移動の詳細は、MySQL Release Engineering ブログ MySQL on GitHub のお知らせを参照してください。
Launchpad では、MySQL Server、MySQL Workbench などを含む MySQL プロジェクトは、Oracle/MySQL エンジニアリングページにあります。MySQL Server のみに関係するリポジトリについては、MySQL Server ページを参照してください。
開発ソースからのインストールの前提条件
MySQL を開発ソースツリーからインストールするには、セクション2.9「ソースから MySQL をインストールする」に概説されるツール要件をシステムが満たしていなければなりません。
MySQL Git リポジトリをマシンにセットアップするには、次の手順を使用します。
-
MySQL Git リポジトリをマシンにクローニングします。次のコマンドは、MySQL Git リポジトリを
mysql-server
という名前のディレクトリにクローニングします。ダウンロードサイズは約 437M バイトです。接続の速度によっては、最初のダウンロードを完了するのにしばらく時間がかかります。~$ git clone https://github.com/mysql/mysql-server.git Cloning into 'mysql-server'... remote: Counting objects: 1035465, done. remote: Total 1035465 (delta 0), reused 0 (delta 0) Receiving objects: 100% (1035465/1035465), 437.48 MiB | 5.10 MiB/s, done. Resolving deltas: 100% (855607/855607), done. Checking connectivity... done. Checking out files: 100% (21902/21902), done.
-
クローニング操作が完了すると、ローカルの MySQL Git リポジトリは次のようになります。
~$ cd mysql-server ~/mysql-server$ ls BUILD COPYING libmysqld regex tests BUILD-CMAKE dbug libservices scripts unittest client Docs man sql VERSION cmake extra mysql-test sql-bench vio CMakeLists.txt include mysys sql-common win cmd-line-utils INSTALL-SOURCE packaging storage zlib config.h.cmake INSTALL-WIN-SOURCE plugin strings configure.cmake libmysql README support-files
-
git branch -r コマンドを使用して、MySQL リポジトリのリモート追跡ブランチを表示します。
~/mysql-server$ git branch -r origin/5.5 origin/5.6 origin/5.7 origin/HEAD -> origin/5.7
-
ローカルリポジトリにチェックアウトされたブランチを表示するには、git branch コマンドを発行します。MySQL Git リポジトリをクローニングしたとき、MySQL 5.7 ブランチが自動的にチェックアウトされています。アスタリスクにより、5.7 ブランチがアクティブなブランチであることが示されます。
~/mysql-server$ git branch * 5.7
-
異なる MySQL ブランチをチェックアウトするには、ブランチ名を指定して git checkout コマンド実行します。たとえば、MySQL 5.6 ブランチをチェックアウトするには:
~/mysql-server$ git checkout 5.6 Branch 5.6 set up to track remote branch 5.6 from origin. Switched to a new branch '5.6'
-
git branch
をふたたび実行して、MySQL 5.6 ブランチが存在することを確認します。最後にチェックアウトした MySQL 5.6 にアスタリスクがマークされ、それがアクティブなブランチであることが示されています。~/mysql-server$ git branch * 5.6 5.7
git checkout コマンドも、ブランチの切り替えに使用されます。たとえば、ふたたび MySQL 5.7 をアクティブブランチにするには、git checkout 5.7 を実行します。
-
MySQL Git リポジトリを最初にセットアップしたあとの変更を取得するには、更新したいブランチに切り替えて
git pull
コマンドを発行します。~/mysql-server$ git checkout 5.6 ~/mysql-server$ git pull
コミット履歴を調べるには、
git log
オプションを使用します。~/mysql-server$ git log
GitHub MySQL サイトでコミット履歴とソースコードを参照することもできます。
変更や疑問のあるコードがある場合は、電子メールを MySQL
internals
メーリングリストに送信してください。セクション1.5.1「MySQL メーリングリスト」 を参照してください。パッチの貢献については、MySQL Server への貢献を参照してください。 -
MySQL Git リポジトリをクローニングしてビルドするブランチをチェックアウトしたら、MySQL Server をソースコードからビルドできます。説明はセクション2.9.2「標準ソース配布を使用して MySQL をインストールする」にありますが、配布の取得およびアンパックに関する部分はスキップします。
本番環境マシン上の配布ソースツリーからのビルドをインストールする場合は注意が必要です。インストールコマンドが、ライブリリースインストールを上書きすることがあります。MySQL がインストール済みであり、それを上書きしたくない場合は、
CMAKE_INSTALL_PREFIX
、MYSQL_TCP_PORT
、およびMYSQL_UNIX_ADDR
オプションの値を、本番環境サーバーで使用したものとは異なるものにして、CMake を実行します。複数のサーバーが相互に干渉することを防ぐ方法の詳細は、セクション5.3「1 つのマシン上での複数の MySQL インスタンスの実行」を参照してください。新しいインストールを厳密に検証します。たとえば、新機能をクラッシュさせてみてください。make test の実行から始めてみてください。セクション24.1.2「MySQL テストスイート」を参照してください。
MySQL Bazaar ブランチをマシンにセットアップするには、次の手順を使用します。
-
Launchpad にホストされている MySQL 開発ソースコードのコピーを取得するには、新しい Bazaar ブランチを作成します。まだ Bazaar リポジトリのディレクトリをセットアップしていない場合は、新しいディレクトリを初期化する必要があります。
shell> mkdir mysql-server shell> bzr init-repo --trees mysql-server
これは 1 回かぎりの操作です。
-
初期化されたリポジトリディレクトリがあることを前提に、パブリック MySQL Server リポジトリをブランチして、ローカルのソースツリーを作成します。特定のバージョンのブランチを作成するには:
shell> cd mysql-server shell> bzr branch lp:mysql-server/5.6 mysql-5.6
これはソースツリーごとに一度だけの操作です。
mysql-server
ディレクトリで、複数のバージョンの MySQL のソースツリーをブランチできます。接続の速度によっては、最初のダウンロードを完了するのにしばらく時間がかかります。最初のツリーをダウンロードすれば、追加のツリーのダウンロードにかかる時間は大幅に短くなるはずです。
-
Bazaar ブランチからビルドするときは、アクティブなブランチのコピーを作成すると、元のブランチの内容に影響を及ぼさずに構成その他の変更を行えます。これを行うには、元のブランチからブランチ処理を実行します。
shell> bzr branch mysql-5.6 mysql-5.6-build
-
ブランチを最初にセットアップしたあとの変更を取得するには、定期的に
pull
オプションを使用して更新します。このコマンドは、ローカルコピーのトップレベルディレクトリで使用します。shell> bzr pull
ツリーの変更セットのコメントを調べるには、bzr に
log
オプションを使用します。shell> bzr log
変更セット、コメント、およびソースコードは、Launchpad MySQL Server ページでオンラインでも参照できます。
diff (変更) や疑問のあるコードがある場合は、お気軽に電子メールを MySQL
internals
メーリングリストに送信してください。セクション1.5.1「MySQL メーリングリスト」 を参照してください。パッチの貢献については、「Contributing to MySQL Server」を参照してください。 -
ローカルブランチを作成したら、MySQL Server をソースコードからビルドできます。説明はセクション2.9.2「標準ソース配布を使用して MySQL をインストールする」にありますが、配布の取得およびアンパックに関する部分はスキップします。
本番環境マシン上の配布ソースツリーからのビルドをインストールする場合は注意が必要です。インストールコマンドが、ライブリリースインストールを上書きすることがあります。MySQL がインストール済みであり、それを上書きしたくない場合は、
CMAKE_INSTALL_PREFIX
、MYSQL_TCP_PORT
、およびMYSQL_UNIX_ADDR
オプションの値を、本番環境サーバーで使用したものとは異なるものにして、CMake を実行します。複数のサーバーが相互に干渉することを防ぐ方法の詳細は、セクション5.3「1 つのマシン上での複数の MySQL インスタンスの実行」を参照してください。新しいインストールを厳密に検証します。たとえば、新機能をクラッシュさせてみてください。make test の実行から始めてみてください。セクション24.1.2「MySQL テストスイート」を参照してください。