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 のインストールと更新  /  一般的なバイナリを使用した MySQL の Unix/Linux へのインストール

2.2 一般的なバイナリを使用した MySQL の Unix/Linux へのインストール

オラクル社は、MySQL の一連のバイナリ配布を提供しています。これには、多数のプラットフォーム向けの圧縮 tar ファイル (.tar.gz 拡張子を持つファイル) の形式のバイナリ配布、および選ばれたプラットフォーム向けのプラットフォーム固有のパッケージ形式のバイナリが含まれます。

このセクションでは、圧縮 tar ファイルのバイナリ配布からの MySQL のインストールについて説明します。その他のプラットフォーム固有のパッケージについては、その他のプラットフォーム固有のセクションを参照してください。たとえば、Windows の配布は セクション2.3「Microsoft Windows に MySQL をインストールする」 を参照してください。

MySQL を取得するには、セクション2.1.3「MySQL の取得方法」 を参照してください。

MySQL の圧縮 tar ファイルのバイナリ配布は、mysql-VERSION-OS.tar.gz という形式の名前を持ちます。ここで、VERSION は数字 (5.6.23 など)、OS は配布が対象とするオペレーティングシステムのタイプ (pc-linux-i686 または winx64 など) です。

MySQL を圧縮 tar ファイルのバイナリ配布からインストールするには、配布を展開するための GNU gunzip、およびそれをアンパックするための妥当な tar がシステムになければなりません。使用している tar プログラムが z オプションをサポートする場合は、ファイルの展開とアンパックの両方を実行できます。

GNU tar が機能することが知られています。一部のオペレーティングシステムで提供される標準の tar は、MySQL 配布内の長いファイル名をアンパックできません。GNU tar をダウンロードしてインストールするか、プリインストールバージョンの GNU tar が利用可能であればそれを使用します。通常、これは gnutargtar、または tar という名前です (/usr/sfw/bin または /usr/local/bin などの GNU または Free Software ディレクトリ内)。GNU tar は、http://www.gnu.org/software/tar/ から入手可能です。

警告

yum または apt-get などの、使用しているオペレーティングシステムのネイティブパッケージ管理システムを使用して MySQL を以前にインストールしたことがある場合は、ネイティブバイナリを使用してインストールすると問題が生じる場合があります。(パッケージ管理システムを使用して) 以前の MySQL のインストールが完全に削除され、データファイルの古いバージョンなどの追加ファイルもすべて削除されていることを確認してください。/etc/my.cnf などの構成ファイルの存在や、/etc/mysql ディレクトリが削除されていることもチェックしてください。

警告

MySQL には、libaio ライブラリへの依存関係があります。mysql_install_db および後続の mysqld_safe の手順は、このライブラリがローカルにインストールされていない場合は失敗します。必要に応じて、適切なパッケージマネージャーを使用してインストールします。たとえば、Yum ベースのシステムでは次のようにします。

shell> yum search libaio  # search for info
shell> yum install libaio # install library

または、apt-get ベースのシステムでは次のようにします。

shell> apt-cache search libaio # search for info
shell> apt-get install libaio1 # install library

問題が発生してバグをレポートする必要が生じた場合には、セクション1.7「質問またはバグをレポートする方法」 の手順に従ってください。

Unix では、圧縮 tar ファイルのバイナリ配布をインストールするには、選択したインストールの場所 (通常 /usr/local/mysql) でアンパックします。これにより、次の表に示すディレクトリが作成されます。

表 2.3 一般的な Unix/Linux バイナリパッケージの MySQL インストールのレイアウト

ディレクトリ ディレクトリの内容
bin クライアントプログラムおよび mysqld サーバー
data ログファイル、データベース
docs Info 形式のドキュメント
man Unix マニュアルページ
include インクルード (ヘッダー) ファイル
lib ライブラリ
scripts mysql_install_db
share エラーメッセージ、サンプル構成ファイル、データベースインストールのための SQL を含む種々のサポートファイル
sql-bench ベンチマーク

mysqld バイナリのデバッグバージョンは、mysqld-debug として利用可能です。ソース配布から独自のデバッグバージョンの MySQL をコンパイルするには、適切な構成オプションを使用してデバッグのサポートを有効にします。ソースからのコンパイルの詳細は、セクション2.9「ソースから MySQL をインストールする」 を参照してください。

MySQL バイナリ配布をインストールして使用するには、基本的なコマンドシーケンスは次のようになります。

shell> groupadd mysql
shell> useradd -r -g mysql mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd 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「サンプルのデフォルトサーバー構成ファイルの使用」 を参照してください。

バイナリ配布のインストールに関する前述の説明を、次に詳細に説明します。

注記

この手順では、システムへの root (管理者) アクセスがあるものとします。あるいは、sudo (Linux) または pfexec (OpenSolaris) コマンドを使用して、各コマンドにプリフィクスを付けることができます。

手順では、MySQL アカウントにパスワードはセットアップしません。その手順のあとは、セクション2.10.2「最初の MySQL アカウントのセキュリティー設定」 に進みます。

mysql ユーザーおよびグループの作成

使用しているシステムに、実行するための mysqld のユーザーおよびグループがまだない場合は、作成する必要があるでしょう。次のコマンドは、mysql グループおよび mysql ユーザーを作成します。ユーザーやグループを mysql のではなく別の名前に変更したい場合があります。その場合は、以降の説明では適切な名前に置き換えてください。useradd および groupadd の構文は、Unix のバージョンによって多少異なる場合があり、また adduser および addgroup などの別な名前を使用している場合もあります。

shell> groupadd mysql
shell> useradd -r -g mysql mysql
注記

このユーザーは、ログイン目的ではなく所有の目的で必要なだけであるため、useradd コマンドでは -r オプションを使用して、サーバーホストへのログイン権限を持たないユーザーを作成します。ユーザーにログインを許可する場合 (または useradd がこのオプションをサポートしない場合) は、このオプションを省略します。

配布の取得とアンパック

配布をアンパックするディレクトリを選択してそこに移動します。この例では、配布を /usr/local の下にアンパックします。したがって、この説明では /usr/local にファイルおよびディレクトリを作成する許可があるものとします。そのディレクトリが保護されている場合は、インストールを root として実行する必要があります。

shell> cd /usr/local

配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。所定のリリースでは、すべてのプラットフォームのバイナリの配布は同じ MySQL のソース配布でビルドされています。

配布をアンパックすると、インストールディレクトリが作成されます。次に、そのディレクトリへのシンボリックリンクを作成します。tarz オプションをサポートする場合、配布の展開とアンパックを実行できます。

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql

tar コマンドが mysql-VERSION-OS という名前のディレクトリを作成します。ln コマンドがそのディレクトリへのシンボリックリンクを作成します。これにより、インストールディレクトリを /usr/local/mysql として、より簡単に参照できるようになります。

tarz オプションをサポートしない場合は、gunzip を使用して配布をパックし、tar を使用してアンパックします。前述の tar コマンドを次の代替コマンドに置き換えて、配布を展開して抽出します。

shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -

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

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

注記

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


User Comments
  Posted by Rohit M on March 16, 2011
This step will be helpful in Installation of MySQL.One needs to follow additional step of changing the file ownership.

Even after executing following command as mentioned in the document:
chown -R mysql .
chgrp -R mysql .
There are four symbolic link files whose ownership is not changed(/usr/mysql/lib).
lrwxrwxrwx 1 7155 staff 24 Mar 9 06:28 libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
lrwxrwxrwx 1 7155 staff 24 Mar 9 06:28 libmysqlclient.so -> libmysqlclient.so.16.0.0
lrwxrwxrwx 1 7155 staff 26 Mar 9 06:28 libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0
lrwxrwxrwx 1 7155 staff 26 Mar 9 06:28 libmysqlclient_r.so -> libmysqlclient_r.so.16.0.0

In order to change ownership of these files one needs to use following command.
chown -h mysql:mysql libmysqlclient.so.16 libmysqlclient.so libmysqlclient_r.so.16 libmysqlclient_r.so

  Posted by Andrew Carr on March 21, 2011
The previous comment depends on which operating system you are using. I am running slackware w/ kernel 2.6.33.4-smp and I did not have to specifically rename the symbolic links.

  Posted by on December 13, 2011
In CentOS 6 (the only version I have studied deeply so far) the following commands change the owner of all files (even hidden ones and symbolic links):

chown -R mysql .
chgrp -R mysql .

I did it in one step, though:
chown -R mysql:mysql .

So, despite the fact that Rohit Mahambre's comments might be helpful when using other distros, in CentOS 6 there is no need to use more commands.

This is the output of ls -la for my lib subdirectory:
[george@CentOS-6-host lib]$ ls -la
total 224776
drwxr-xr-x. 3 mysql mysql 4096 Dec 12 18:56 .
drwxr-xr-x. 13 mysql mysql 4096 Dec 12 18:59 ..
-rw-r--r--. 1 mysql mysql 14768868 Nov 23 10:32 libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 16 Dec 12 18:56 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 17 Dec 12 18:56 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx. 1 mysql mysql 17 Dec 12 18:56 libmysqlclient_r.so.18 -> libmysqlclient.so
lrwxrwxrwx. 1 mysql mysql 17 Dec 12 18:56 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so
lrwxrwxrwx. 1 mysql mysql 20 Dec 12 18:56 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx. 1 mysql mysql 24 Dec 12 18:56 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
-rwxr-xr-x. 1 mysql mysql 6844990 Nov 23 10:32 libmysqlclient.so.18.0.0
-rw-r--r--. 1 mysql mysql 103358370 Nov 23 10:36 libmysqld.a
-rw-r--r--. 1 mysql mysql 104165746 Nov 23 10:26 libmysqld-debug.a
-rw-r--r--. 1 mysql mysql 9584 Nov 23 10:28 libmysqlservices.a
-rw-r--r--. 1 mysql mysql 997127 Nov 23 10:21 libtcmalloc_minimal.so
drwxr-xr-x. 3 mysql mysql 4096 Dec 12 18:55 plugin
  Posted by Steven Garner on February 17, 2013
On Ubuntu 12-04 LTS, you will need to perform:

cp support-files/my-default.cnf /etc/mysql/my.cnf

instead of the step:

cp support-files/my-medium.cnf /etc/my.cnf
  Posted by Jose Luis Bernal Zambrano on June 15, 2015
Alternatively to:

chown -R mysql .
chgrp -R mysql .

With this method isn't needed to do inside specific directory
chown -R mysql:mysql /usr/local/mysql/
Sign Up Login You must be logged in to post a comment.