オラクル社は、MySQL の一連のバイナリ配布を提供しています。 これらには、多数のプラットフォーム用の圧縮 tar ファイル (.tar.xz
拡張子を持つファイル) の形式の汎用バイナリ配布、および選択したプラットフォーム用のプラットフォーム固有のパッケージ形式のバイナリが含まれます。
このセクションでは、Unix/Linux プラットフォームでの圧縮 tar ファイルバイナリディストリビューションからの MySQL のインストールについて説明します。 その他のプラットフォーム固有のバイナリパッケージ形式については、このマニュアルの他のプラットフォーム固有のセクションを参照してください。 たとえば、Windows の配布は セクション2.3「Microsoft Windows に MySQL をインストールする」 を参照してください。 様々な配布形式で MySQL を取得する方法については、セクション2.1.3「MySQL の取得方法」 を参照してください。
MySQL 圧縮 tar ファイルのバイナリ配布の名前の形式は mysql-
で、VERSION
-OS
.tar.xz
は数値 (VERSION
8.0.29
など) で、OS
は配布対象のオペレーティングシステムのタイプを示します (pc-linux-i686
や winx64
など)。
Linux 汎用バイナリ配布用の MySQL 圧縮 tar ファイルの「「最小インストール」」バージョンもあり、mysql-
という形式の名前が付けられています。 最小インストール配布では、デバッグバイナリが除外され、デバッグシンボルが取り除かれて、通常のバイナリ配布より大幅に小さくなります。 最小限のインストール配布をインストールする場合は、次の手順のファイル名形式の違いに合わせて調整してください。
VERSION
-OS
-GLIBCVER
-ARCH
-minimal.tar.xz
-
Yum や APT などのオペレーティングシステムのネイティブパッケージ管理システムを使用して以前に MySQL をインストールした場合、ネイティブバイナリを使用したインストールで問題が発生することがあります。 以前の MySQL インストールが (パッケージ管理システムを使用して) 完全に削除されていること、および古いバージョンのデータファイルなどの追加ファイルも削除されていることを確認します。 また、
/etc/my.cnf
や/etc/mysql
ディレクトリなどの構成ファイルを確認して削除する必要があります。サードパーティパッケージを公式の MySQL パッケージに置き換える方法の詳細は、関連する「APT ガイド」または Yum guide を参照してください。
-
MySQL には、
libaio
ライブラリへの依存関係があります。 このライブラリがローカルにインストールされていない場合、データディレクトリの初期化および後続のサーバー起動ステップは失敗します。 必要に応じて、適切なパッケージマネージャーを使用してインストールします。 たとえば、Yum ベースのシステムでは次のようにします。shell> yum search libaio # search for info shell> yum install libaio # install library
または、APT ベースのシステムの場合:
shell> apt-cache search libaio # search for info shell> apt-get install libaio1 # install library
-
Oracle Linux 8 / Red Hat 8 (EL8): これらのプラットフォームでは、デフォルトでファイル
/lib64/libtinfo.so.5
はインストールされません。これは、パッケージmysql-VERSION-el7-x86_64.tar.gz
およびmysql-VERSION-linux-glibc2.12-x86_64.tar.xz
の MySQL クライアント bin/mysql に必要です。 この問題を回避するには、ncurses-compat-libs
パッケージをインストールします:shell> yum install ncurses-compat-libs
圧縮された tar ファイルのバイナリ配布をインストールするには、選択したインストール場所 (通常は/usr/local/mysql
) で解凍します。 これにより、次の表に示すディレクトリが作成されます。
表 2.3 一般的な Unix/Linux バイナリパッケージの MySQL インストールのレイアウト
ディレクトリ | ディレクトリの内容 |
---|---|
bin |
mysqld サーバー、クライアントプログラムおよびユーティリティプログラム |
docs |
情報形式の MySQL マニュアル |
man |
Unix マニュアルページ |
include |
インクルード (ヘッダー) ファイル |
lib |
ライブラリ |
share |
データベースインストールのエラーメッセージ、ディクショナリおよび SQL |
support-files |
その他のサポートファイル |
mysqld バイナリのデバッグバージョンは、mysqld-debug として利用可能です。 ソース配布から独自のデバッグバージョンの MySQL をコンパイルするには、適切な構成オプションを使用してデバッグのサポートを有効にします。 セクション2.9「ソースから MySQL をインストールする」を参照してください。
MySQL バイナリ配布をインストールして使用する場合、コマンドシーケンスは次のようになります:
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
shell> cd /usr/local
shell> tar xvf /path/to/mysql-VERSION-OS.tar.xz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd 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
この手順では、システムへの root
(管理者) アクセスがあるものとします。 または、sudo (Linux) または pfexec (Solaris) コマンドを使用して、各コマンドに接頭辞を付けることもできます。
mysql-files
ディレクトリは、インポートおよびエクスポート操作を特定のディレクトリに制限する secure_file_priv
システム変数の値として使用する便利な場所を提供します。 セクション5.1.8「サーバーシステム変数」を参照してください。
バイナリ配布のインストールに関する前述の説明を、次に詳細に説明します。
mysql ユーザーおよびグループの作成
mysqld の実行に使用するユーザーおよびグループがシステムにまだない場合は、作成する必要がある場合があります。 次のコマンドは、mysql
グループおよび mysql
ユーザーを作成します。 ユーザーやグループを mysql
のではなく別の名前に変更したい場合があります。 その場合は、以降の説明では適切な名前に置き換えてください。 useradd および groupadd の構文は、Unix/Linux のバージョンによって若干異なる場合や、adduser や addgroup などの名前が異なる場合があります。
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
ユーザーは所有権の目的でのみ必要であり、ログイン目的では必要ないため、useradd コマンドは -r
および -s /bin/false
オプションを使用して、サーバーホストへのログイン権限を持たないユーザーを作成します。 useradd でサポートされていない場合は、これらのオプションを省略します。
配布の取得とアンパック
配布をアンパックするディレクトリを選択してそこに移動します。 この例では、配布を /usr/local
の下にアンパックします。 したがって、この説明では /usr/local
にファイルおよびディレクトリを作成する許可があるものとします。 そのディレクトリが保護されている場合は、インストールを root
として実行する必要があります。
shell> cd /usr/local
配布ファイルを セクション2.1.3「MySQL の取得方法」 の説明に従って取得します。 所定のリリースでは、すべてのプラットフォームのバイナリの配布は同じ MySQL のソース配布でビルドされています。
ディストリビューションを解凍すると、インストールディレクトリが作成されます。z
オプションがサポートされている場合、tar は配布を解凍して解凍できます:
shell> tar xvf /path/to/mysql-VERSION-OS.tar.xz
tar コマンドが mysql-
という名前のディレクトリを作成します。
VERSION
-OS
圧縮された tar ファイルのバイナリ配布から MySQL をインストールするには、配布を解凍する GNU XZ Utils
と、それを解凍する適切な tar がシステムに必要です。
MySQL Server 8.0.12 で圧縮アルゴリズムが Gzip から XZ に変更され、汎用バイナリファイル拡張子が .tar.gz から .tar.xz に変更されました。
GNU tar が機能することが知られています。 一部のオペレーティングシステムで提供される標準の tar は、MySQL 配布内の長いファイル名をアンパックできません。 GNU tar をダウンロードしてインストールするか、プリインストールバージョンの GNU tar が利用可能であればそれを使用します。 通常、これは gnutar、gtar、または tar という名前です (/usr/sfw/bin
または /usr/local/bin
などの GNU または Free Software ディレクトリ内)。 GNU tar は、http://www.gnu.org/software/tar/ から入手可能です。
tar で xz
形式がサポートされていない場合は、xz コマンドを使用してディストリビューションを解凍し、tar を使用して解凍します。 前述の tar コマンドを次の代替コマンドに置き換えて、配布を展開して抽出します。
shell> xz -dc /path/to/mysql-VERSION-OS.tar.xz | tar x
次に、tar によって作成されたインストールディレクトリへのシンボリックリンクを作成します:
shell> ln -s full-path-to-mysql-VERSION-OS mysql
ln
コマンドは、インストールディレクトリへのシンボリックリンクを作成します。 これにより、より簡単に/usr/local/mysql
と呼ぶことができます。 MySQL を使用しているときに常にクライアントプログラムのパス名を入力する必要がないようにするには、/usr/local/mysql/bin
ディレクトリを PATH
変数に追加します:
shell> export PATH=$PATH:/usr/local/mysql/bin
インストール後のセットアップの実行
インストールプロセスの残りの部分では、配布の所有権とアクセス権限の設定、データディレクトリの初期化、MySQL サーバーの起動および構成ファイルの設定を行います。 その手順は、セクション2.10「インストール後のセットアップとテスト」を参照してください。