標準ソース配布を使用して MySQL をインストールするには:
システムが、セクション2.9.2「ソースインストールの前提条件」にリストされるツール要件を満たすことを確認します。
配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。
このセクションの説明に従って、配布の構成、ビルド、およびインストールを実行します。
セクション2.10「インストール後のセットアップとテスト」の説明に従って、インストール後の手順を実行します。
MySQL は、すべてのプラットフォームでビルドフレームワークとして CMake を使用します。 ここに記載する説明で、動作するインストールを作成できるでしょう。 CMake を使用して MySQL をビルドする方法の詳細は、CMake による MySQL Server のビルド方法を参照してください。
ソース RPM から開始する場合は、インストールするバイナリ RPM を、次のコマンドを使用して作成します。 rpmbuild がない場合は代わりに rpm を使用します。
shell> rpmbuild --rebuild --clean MySQL-VERSION.src.rpm
結果として 1 つまたは複数の RPM パッケージが生成されます。セクション2.5.4「Oracle の RPM パッケージを使用した Linux への MySQL のインストール」の指示に従ってインストールします。
圧縮 tar ファイルまたは Zip アーカイブソース配布からのインストールのシーケンスは、ソース配布はすべてのプラットフォームで使用されること、および配布を構成してコンパイルする手順が含まれる点を除き、一般的なバイナリ配布のプロセスと同様です (セクション2.2「一般的なバイナリを使用した MySQL の Unix/Linux へのインストール」を参照してください)。 たとえば、Unix の圧縮 tar ファイルのソース配布では、基本的なインストールコマンドシーケンスは次のようになります。
# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> mkdir bld
shell> cd bld
shell> cmake ..
shell> make
shell> make install
# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> mkdir mysql-files
shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
shell> bin/mysqld --initialize --user=mysql
shell> bin/mysql_ssl_rsa_setup
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server
このあと、ソースビルド固有の手順について、より詳細に説明します。
ここに示した手順では、MySQL アカウントにパスワードは設定しません。 その手順のあとは、セクション2.10「インストール後のセットアップとテスト」に進み、インストール後のセットアップとテストを実行します。
Unix では、MySQL サーバーの実行および実行に使用する mysql
ユーザーおよびグループを設定し、データベースディレクトリを所有します。 詳細は、mysql ユーザーおよびグループの作成を参照してください。 次に、指定された場合を除き、mysql
ユーザーとして次の手順を実行します。
配布をアンパックするディレクトリを選択してそこに移動します。
配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。
配布を現在のディレクトリにアンパックします。
-
圧縮 tar ファイルをアンパックするには、tar が
z
オプションをサポートする場合、このコマンドで配布の圧縮解除とアンパックを実行できます。shell> tar zxvf mysql-VERSION.tar.gz
tar が
z
オプションをサポートしない場合は、gunzip を使用して配布をパックし、tar を使用してアンパックします。shell> gunzip < mysql-VERSION.tar.gz | tar xvf -
あるいは、CMake を使用して配布を圧縮解除してアンパックすることも可能です。
shell> cmake -E tar zxvf mysql-VERSION.tar.gz
Zip アーカイブをアンパックするには、WinZip または
.zip
ファイルを読み取ることができるその他のツールを使用します。
配布ファイルをアンパックすると、mysql-
という名前のディレクトリが作成されます。
VERSION
アンパックした配布のトップレベルのディレクトリに場所を変更します。
shell> cd mysql-VERSION
ツリーをクリーンな状態に保つために、ソースツリーの外部にビルドします。 最上位ソースディレクトリの名前が mysql-src
で、現在の作業ディレクトリの下にある場合は、同じレベルの bld
という名前のディレクトリにビルドできます。 ディレクトリを作成してそこに移動します:
shell> mkdir bld
shell> cd bld
ビルドディレクトリを構成します。 最低限の構成を行うコマンドには、構成のデフォルトをオーバーライドするオプションは含まれません。
shell> cmake ../mysql-src
ビルドディレクトリはソースツリーの外部にある必要はありません。 たとえば、トップレベルのソースツリーの下の bld
という名前のディレクトリにビルドできます。 これを行うには、現在の作業ディレクトリとして mysql-src
から開始し、ディレクトリ bld
を作成してそこに移動します:
shell> mkdir bld
shell> cd bld
ビルドディレクトリを構成します。 最低限の構成を行うコマンドには、構成のデフォルトをオーバーライドするオプションは含まれません。
shell> cmake ..
複数のソースツリーが同じレベルにある場合 (たとえば、複数のバージョンの MySQL をビルドする場合)、2 番目の方法が有利です。 最初の方法では、すべてのビルドディレクトリを同じレベルに置くため、それぞれに一意の名前が必要です。 2 番目の方法では、各ソースツリー内のビルドディレクトリに同じ名前を使用できます。 次の手順では、この 2 番目の方法を想定しています。
Windows では、開発環境を指定します。 たとえば、次のコマンドはそれぞれ 32 ビットまたは 64 ビッドの MySQL ビルドを構成します。
shell> cmake .. -G "Visual Studio 12 2013"
shell> cmake .. -G "Visual Studio 12 2013 Win64"
macOS で Xcode IDE を使用するには:
shell> cmake .. -G Xcode
cmake を実行する場合、コマンド行にオプションを追加するとよいでしょう。 次にいくつかの例を示します。
-DBUILD_CONFIG=mysql_release
: オラクルが公式な MySQL リリースのバイナリ配布を生成するために使用するのと同じビルドオプションでソースを構成します。-DCMAKE_INSTALL_PREFIX=
: 特定の場所にインストールするように配布を構成します。dir_name
-DCPACK_MONOLITHIC_INSTALL=1
: make package が、複数のファイルではなく単独のインストールファイルを生成するようにします。-DWITH_DEBUG=1
: 配付をデバッグサポート付きでビルドします。
オプションのより詳細なリストは、セクション2.9.7「MySQL ソース構成オプション」を参照してください。
構成オプションをリストするには、次のコマンドのいずれかを使用します。
shell> cmake .. -L # overview
shell> cmake .. -LH # overview with help text
shell> cmake .. -LAH # all params with help text
shell> ccmake .. # interactive display
CMake が失敗する場合は、異なるオプションで再実行して再構成する必要がある場合があります。 再構成を行う場合は、次に注意してください。
CMake を以前に実行したあとで実行すると、以前の起動時に収集した情報を使用する場合があります。 この情報は
CMakeCache.txt
に格納されています。 CMake が起動すると、情報がまだ正しいことを前提として、そのファイルが検索され、その内容 (存在する場合) が読み取られます。 この仮定は再構成した場合には無効です。CMake を実行するたびに、make を再実行して再コンパイルする必要があります。 しかし、前のビルドの古いオブジェクトファイルが異なる構成オプションでコンパイルされている場合、それらを最初に削除する場合もあります。
古いオブジェクトファイルまたは構成情報が使用されないようにするには、CMake を再実行する前に、Unix でビルドディレクトリで次のコマンドを実行します:
shell> make clean
shell> rm CMakeCache.txt
あるいは、Windows の場合:
shell> devenv MySQL.sln /clean
shell> del CMakeCache.txt
MySQL Community Slack に問い合わせる前に、CMakeFiles
ディレクトリ内のファイルで障害に関する有用な情報を確認します。 バグレポートを提出する際は、セクション1.6「質問またはバグをレポートする方法」の説明に従ってください。
Unix の場合:
shell> make
shell> make VERBOSE=1
2 番目のコマンドは、コンパイル済みの各ソースに対するコマンドを表示するため、VERBOSE
をセットします。
GNU make を使用し、それが gmake としてインストールされているシステムでは、代わりに gmake を使用します。
Windows の場合:
shell> devenv MySQL.sln /build RelWithDebInfo
コンパイル段階に進んだが、配布がビルドされない場合は、セクション2.9.8「MySQL のコンパイルに関する問題」を参照してください。 それでも問題が解決しない場合は、セクション1.6「質問またはバグをレポートする方法」を参照して、それをバグデータベースに入力してください。 必要なツールの最新バージョンをインストール済みで、構成ファイルを処理しようとしてそれらのツールがクラッシュする場合は、それもレポートしてください。 ただし、コマンドが見つかりません
というエラーや、必要なツールに関して同様の問題がある場合は、レポートしないでください。 代わりに、必要なツールがすべてインストール済みであり、シェルがそれらを検索できるように PATH
変数が正しく設定されていることを確認してください。
Unix の場合:
shell> make install
これは、ファイルを構成されたインストールディレクトリ (デフォルトでは /usr/local/mysql
) にインストールします。 コマンドを root
として実行する必要がある場合があります。
特定のディレクトリにインストールするには、コマンド行に DESTDIR
パラメータを追加します。
shell> make install DESTDIR="/opt/mysql"
あるいは、任意の場所にインストールできるインストールパッケージファイルを生成します。
shell> make package
この操作は、一般的なバイナリ配布パッケージのようにインストールできる、1 つまたは複数の .tar.gz
ファイルを生成します。 セクション2.2「一般的なバイナリを使用した MySQL の Unix/Linux へのインストール」を参照してください。 CMake を -DCPACK_MONOLITHIC_INSTALL=1
を使用して実行すると、その操作で単独のファイルが作成されます。 そうでない場合は複数のファイルが作成されます。
Windows では、データディレクトリを生成してから、.zip
アーカイブインストールパッケージを作成します。
shell> devenv MySQL.sln /build RelWithDebInfo /project initial_database
shell> devenv MySQL.sln /build RelWithDebInfo /project package
結果の .zip
アーカイブは任意の場所にインストールできます。 セクション2.3.4「noinstall
ZIP アーカイブを使用した Microsoft Windows への MySQL のインストール」を参照してください。
インストールプロセスの残りの部分は、構成ファイルのセットアップ、コアデータベースの作成、および MySQL Server の開始などです。 その手順は、セクション2.10「インストール後のセットアップとテスト」を参照してください。
MySQL の付与テーブルにリストされているアカウントには、最初はパスワードがありません。 サーバーの起動後に、セクション2.10「インストール後のセットアップとテスト」の説明に従って、それらにパスワードを設定する必要があります。