(このページは書きかけです。しばらくお待ち下さい!)

MySQL Community Server版 (Ver.5.0) を、ソースからインストールする方法です。
ここでは、rootユーザで実行しています。

1. MySQL用のユーザーとグループの作成

まず、MySQLが動作するためのユーザーおよびグループのアカウントを作成する。
ここでは、
  • ユーザー名:mysql
  • グループ名:mysql
とする。

(1) グループ、ユーザーの作成
ユーザーアカウントを作成するに先だって、グループを作成する。
# groupadd mysql

ユーザを作成する。
# useradd -g mysql -d /usr/local/mysql -s /bin/sh mysql

(2) ホームディレクトリの作成
通常は、ユーザ作成時にディレクトリも自動的に作られているはずですが、もし作成されていなかった場合は、手動でホームディレクトリを作成します。
(ホームディレクトリが作成済みの場合は、この項目はとばして下さい。)

ここでは、「/usr/local/mysql」とする。
# mkdir /usr/local/mysql

ホームディレクトリのオーナーとグループを「mysql」に変更。
# chown -R mysql:mysql /usr/local/mysql

2. MySQLのインストール

(1) MySQLのソースの入手
以下のURLにアクセスします。
http://dev.mysql.com/downloads/

MySQL Downloadsページが表示されます。
ここで、左側のメニューより、「MySQL Community Server」をクリックすると、メニューが展開され、バージョン番号の一覧が表示されます。
デフォルトでは「5.1」となっていますので、その下の「5.0」をクリックします。

ページの一番下に「Source downloads」というカテゴリーがありますので、
  • Compressed GNU TAR archive (tar.gz)
をダウンロードします。
※このページを記載時の最新バージョンは、5.0.84となっています。
この行の右端にある「Pick a mirror」のリンクをクリックすると、ログイン画面が表示されます。
ここで、ログインIDを持っていない場合は、その下の
  • No thanks, just take me to the downloads!
のリンクをクリックします。
Mirror Siteの一覧が表示されますので、好きなサイトからダウンロードして下さい。
日本の場合は、
  • Japan [Internet Initiative Japan Inc.] HTTP FTP
  • Japan [JAIST] HTTP FTP
の2つがあります。

(2) MySQLソースの解凍
ダウンロードしたソースファイル(ここでは、mysql-5.0.84.tar.gz)を解凍します。
# tar xvfz mysql-5.0.84.tar.gz

(3) コンパイル
ソースファイルをコンパイルします。
ここでは、「/usr/local/mysql」へインストールするものとします。

まず、解凍してできたディレクトリに移動します。
# cd mysql-5.0.84

次に「configure」ファイルを実行します。
なお、オプションは任意ですので、この通りでなくても構いません。
# ./configure --prefix=/usr/local/mysql \
--localstatedir=/usr/local/mysql/data \
--with-mysqld-ldflags=-all-static \
--with-client-ldflags=-all-static \
--enable-assembler \
--enable-thread-safe-client \
--with-extra-charsets=complex \
--with-charset=utf8 \
--with-readline \
--with-mysqld-user=mysql \
--with-libwrap=/usr \
--with-zlib-dir=/usr \
--enable-local-infile \
--with-pic \
--with-fast-mutexes \
--with-big-tables \
--with-archive-storage-engine \
--with-blackhole-storage-engine \
--with-ndbcluster \
--with-csv-storage-engine \
--with-example-storage-engine \
--with-federated-storage-engine \
--with-innodb

ここで、CentOS環境で上記コマンドを実行した場合、
checking for termcap functions library... configure: error: No curses/termcap library found
のようなエラーが発生することがあります。
curses/termcap library が見つからないと怒られたので、
# yum install ncurses-devel
で必要なライブラリをインストールすれば良いです。
※Redhat Enterprise Linux4系だとyumがないので、up2dateを使用して下さい。

Thank you for choosing MySQL!
とメッセージが表示されれば、コンパイル完了!

(4) インストール
makeとインストールを実行します。
# make
# make install

(5) 共有ライブラリ検索パスに追加
共有ライブラリ検索パスにmysqlのライブラリディレクトリを追加します。
ここでは「/etc/ld.so.conf.d」ディレクトリに「mysql.conf」というファイルを作成します。
# cd /etc/ld.so.conf.d
# vi mysql.conf

ライブラリディレクトリ名を追加します。
/usr/local/mysql/lib/mysql

保存終了したら、更新を実行します。

# ldconfig

(6) MySQLの初期化
MySQLの初期化を行います。
これは、インストール後に1回だけ必要で、これを実行することにより、「localstatedir」で指定したディレクトリ(ここでは、/usr/local/mysql/data)、および初期データベース「mysql」、「test」が作成される。

# /usr/local/mysql/bin/mysql_install_db --user=mysql

次に、この初期化でデータベース保存ディレクトリのオーナーを変更する。

# chown -R mysql:mysql /usr/local/mysql/data

3. MySQLの接続確認

(1) MySQLデーモンの起動
MySQLのデーモンを起動します。

# /usr/local/mysql/bin/mysqld_safe &

ここでもし、正常に起動しない場合は、データベースディレクトリ(ここでは、/usr/local/mysql/data)の「(HOSTNAME).err」という名前のファイルにログが記録されているので、それを確認して原因を解決します。

(2) MySQLの接続確認
MySQLにアクセスできるかどうか確認します。

# su - mysql
$ mysql -u root
※ ユーザをmysqlに変更すること

以下のようなメッセージが表示されればOKです。
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.84 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
一方、「Access denied for user: 'root@localhost' to database mysql」などとエラーが表示される場合には、データベースディレクトリ(ここでは、/usr/local/mysql/data)の「(HOSTNAME).err」を確認して、エラーの原因を調べて下さい。
MySQLのデーモンが何らかの原因で停止している可能性もあります。

(3) 管理者パスワードの設定
MySQLの管理者ユーザrootは、初期設定ではパスワードが設定されていないので、直ぐに設定をする必要があります。

mysql> set password for root=password('任意のパスワード');
mysql> flush privileges;
※「任意のパスワード」の箇所に、パスワード文字列を入力すること






最終更新:2009年10月27日 11:58