Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.2Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  ...  /  標準ソース配布を使用して MySQL をインストールする

2.9.2 標準ソース配布を使用して MySQL をインストールする

標準ソース配布を使用して MySQL をインストールするには:

  1. システムが、セクション2.9「ソースから MySQL をインストールする」にリストされるツール要件を満たすことを確認します。

  2. 配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。

  3. このセクションの説明に従って、配布の構成、ビルド、およびインストールを実行します。

  4. セクション2.10「インストール後のセットアップとテスト」の説明に従って、インストール後の手順を実行します。

MySQL 5.6 では、すべてのプラットフォームで CMake がビルドフレームワークとして使用されます。ここに記載する説明で、動作するインストールを作成できるでしょう。CMake を使用して MySQL をビルドする方法の詳細は、CMake による MySQL Server のビルド方法を参照してください。

ソース RPM から開始する場合は、インストールするバイナリ RPM を、次のコマンドを使用して作成します。rpmbuild がない場合は代わりに rpm を使用します。

shell> rpmbuild --rebuild --clean MySQL-VERSION.src.rpm

結果として 1 つまたは複数の RPM パッケージが生成されます。セクション2.5.5「RPM パッケージを使用して MySQL を Linux にインストールする」の指示に従ってインストールします。

圧縮 tar ファイルまたは Zip アーカイブソース配布からのインストールのシーケンスは、ソース配布はすべてのプラットフォームで使用されること、および配布を構成してコンパイルする手順が含まれる点を除き、一般的なバイナリ配布のプロセスと同様です (セクション2.2「一般的なバイナリを使用した MySQL の Unix/Linux へのインストール」を参照してください)。たとえば、Unix の圧縮 tar ファイルのソース配布では、基本的なインストールコマンドシーケンスは次のようになります。

# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> cmake .
shell> make
shell> make install
# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data
shell> bin/mysqld_safe --user=mysql &
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

mysql_install_db は、my.cnf という名前のデフォルトオプションファイルを基本インストールディレクトリに作成します。このファイルは my-default.cnf という名前の配布パッケージに含まれるテンプレートから作成されます。詳細は、セクション5.1.2.2「サンプルのデフォルトサーバー構成ファイルの使用」 を参照してください。

このあと、ソースビルド固有の手順について、より詳細に説明します。

注記

ここに示した手順では、MySQL アカウントにパスワードは設定しません。その手順のあとは、セクション2.10「インストール後のセットアップとテスト」に進み、インストール後のセットアップとテストを実行します。

構成前のセットアップの実行

Unix では、MySQL Server を実行してデータベースディレクトリを所有する、mysql ユーザーおよびグループをセットアップします。詳細は、セクション2.2「一般的なバイナリを使用した MySQL の Unix/Linux へのインストール」mysql システムユーザーおよびグループの作成を参照してください。次に、指定された場合を除き、mysql ユーザーとして次の手順を実行します。

配布の取得とアンパック

配布をアンパックするディレクトリを選択してそこに移動します。

配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。

配布を現在のディレクトリにアンパックします。

  • 圧縮 tar ファイルをアンパックするには、tarz オプションをサポートする場合、このコマンドで配布の圧縮解除とアンパックを実行できます。

    shell> tar zxvf mysql-VERSION.tar.gz

    tarz オプションをサポートしない場合は、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

ソースディレクトリを構成します。最低限の構成を行うコマンドには、構成のデフォルトをオーバーライドするオプションは含まれません。

shell> cmake .

Windows では、開発環境を指定します。たとえば、次のコマンドはそれぞれ 32 ビットまたは 64 ビッドの MySQL ビルドを構成します。

shell> cmake . -G "Visual Studio 10 2010"
shell> cmake . -G "Visual Studio 10 2010 Win64"

OS X で 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.4「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 を再実行して再コンパイルする必要があります。しかし、前のビルドの古いオブジェクトファイルが異なる構成オプションでコンパイルされている場合、それらを最初に削除する場合もあります。

古いオブジェクトファイルまたは構成情報が使用されることを予防するために、Unix では CMake を再実行する前に次のコマンドを実行します。

shell> make clean
shell> rm CMakeCache.txt

あるいは、Windows の場合:

shell> devenv MySQL.sln /clean
shell> del CMakeCache.txt

ソースツリーからビルドする場合 (あとで説明します)、CMakeCache.txt ファイルおよびすべてのビルドファイルはビルドディレクトリにあるため、オブジェクトファイルおよびキャッシュされた構成情報を削除するには、そのディレクトリを削除します。

MySQL メーリングリストにメールを送信して構成の支援を依頼する場合は、CMakeFiles ディレクトリのファイルで、失敗に関する有用な情報をまずチェックしてください。バグレポートを提出する際は、セクション1.7「質問またはバグをレポートする方法」の説明に従ってください。

配布のビルド

Unix の場合:

shell> make
shell> make VERBOSE=1

2 番目のコマンドは、コンパイル済みの各ソースに対するコマンドを表示するため、VERBOSE をセットします。

GNU make を使用し、それが gmake としてインストールされているシステムでは、代わりに gmake を使用します。

Windows の場合:

shell> devenv MySQL.sln /build RelWithDebInfo

ソースツリーからビルドして、ツリーをクリーンな状態に保つことができます。トップレベルのソースディレクトリが、現在の作業ディレクトリの下の mysql-src という名前のディレクトリの場合、次のように、同じレベルの bld という名前のディレクトリにビルドできます。

shell> mkdir bld
shell> cd bld
shell> cmake ../mysql-src

ビルドディレクトリは、実際にソースツリーの外部になければならないわけではありません。たとえば、ディレクトリ内にビルドするには、トップレベルのソースツリーの下の bld という名前のディレクトリにビルドできます。そのためには、現在の作業ディレクトリとして mysql-src から開始します。

shell> mkdir bld
shell> cd bld
shell> cmake ..

複数のソースツリーが同じレベルにある場合 (たとえば、複数のバージョンの MySQL をビルドする場合)、2 番目の方法が有利です。最初の方法では、すべてのビルドディレクトリを同じレベルに置くため、それぞれに一意の名前が必要です。2 番目の方法では、各ソースツリー内のビルドディレクトリに同じ名前を使用できます。

コンパイル段階に進んだが、配布がビルドされない場合は、セクション2.9.5「MySQL のコンパイルに関する問題」を参照してください。それでも問題が解決しない場合は、セクション1.7「質問またはバグをレポートする方法」を参照して、それをバグデータベースに入力してください。必要なツールの最新バージョンをインストール済みで、構成ファイルを処理しようとしてそれらのツールがクラッシュする場合は、それもレポートしてください。ただし、コマンドが見つかりませんというエラーや、必要なツールに関して同様の問題がある場合は、レポートしないでください。代わりに、必要なツールがすべてインストール済みであり、シェルがそれらを検索できるように 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.5「非インストール Zip アーカイブを使用して Microsoft Windows に MySQL をインストールする」を参照してください。

インストール後のセットアップの実行

インストールプロセスの残りの部分は、構成ファイルのセットアップ、コアデータベースの作成、および MySQL Server の開始などです。手順は、セクション2.10「インストール後のセットアップとテスト」を参照してください。

注記

MySQL の付与テーブルにリストされているアカウントには、最初はパスワードがありません。サーバーの起動後に、セクション2.10「インストール後のセットアップとテスト」の説明に従って、それらにパスワードを設定する必要があります。


User Comments
  Posted by Anoop Viswanath on July 2, 2014
Detailed instructions for compiling MySQL Server from source code on Linux.
http://howtolamp.com/lamp/mysql/5.6/installing/

This one worked for me.

It also fixes the following errors with Googlemock.
Googlemock was not found. gtest-based unit tests will be disabled. You can run cmake . -DENABLE_DOWNLOADS=1 to automatically download and build required components from source.
OR
CMake Error: Problem with tar_extract_all(): Invalid argument
CMake Error: Problem extracting tar: /usr/src/mysql-5.6.19/source_downloads/gmock-1.6.0.zip

Thanks to the author.
  Posted by Shahriyar Rzayev on June 29, 2015
With MySQL 5.7.7-rc if you try to use mysql_install_db it will throw an error indicating that, this script is deprecated:

[root@centos7_vm mysql]# bin/mysql_install_db --user=mysql
2015-06-29 11:24:11 [WARNING] mysql_install_db is deprecated. Please consider switching to mysqld --initialize
2015-06-29 11:24:11 [ERROR] The data directory needs to be specified.

Also, if you initialized MySQL to different datadir rather than default:

[root@centos7_vm mysql]# bin/mysqld --initialize --user=mysql --datadir=/opt/mysql/datadir

And after try to use bin/mysql_ssl_rsa_setup:

[root@centos7_vm mysql]# bin/mysql_ssl_rsa_setup
2015-06-29 11:42:28 [ERROR] Failed to normalize the argument for --datadir: /var/lib/mysql

As a workaround try to specify --datadir with mysql_ssl_rsa_setup too:

[root@centos7_vm mysql]# bin/mysql_ssl_rsa_setup --datadir=/opt/mysql/datadir
OpenSSL 1.0.1e-fips 11 Feb 2013

Sign Up Login You must be logged in to post a comment.