MySQL 5.1.30

(最終更新日時:2009-01-03 15:01:13)
オープンソースのリレーショナルデータベース管理システム(RDBMS) MySQL Community Server をインストールします。

ダウンロード

MySQL Community Server 5.1
Source Compressed GNU TAR archive (tar.gz) 5.1.30
mysql-5.1.30.tar.gz

インストール

MySQLの実行用グループとユーザーを作成します。
# groupadd -g 27 mysql
# useradd  -u 27 mysql -M -g mysql -s /sbin/nologin -d /home/database/mysql
# mkdir -p /home/database/mysql
# chown mysql.mysql /home/database/mysql
# chmod 750 /home/database/mysql
/usr/local/srcディレクトリでアーカイブを展開し、コンパイルおよびインストールを行います。
# cd /usr/local/src
# tar zxvf ダウンロード先/mysql-5.1.30.tar.gz
# cd mysql-5.1.30
# ./configure \
>   --localstatedir=/home/database/mysql \               データベースの格納先を指定します
>   --enable-thread-safe-client \                        スレッドセーフなクライアントライブラリを作成します
>   --with-low-memory \                                  コンパイル時のメモリ/スワップスペース不足対策です
>   --with-charset=utf8 \                                デフォルトの文字セットに UTF-8 を指定します
>   --with-extra-charsets=all \                          すべての文字セットを使用可能にします
>   --with-ssl \                                         SSL接続を有効にします
>   --with-mysqld-user=mysql                             起動ユーザーを mysql にします
# make
# make install
共有ライブラリにmysqlライブラリのリンクを登録します。
# vi /etc/ld.so.conf.d/mysql.conf

/usr/local/lib/mysql

# ldconfig

設定

定義ファイルを編集します。
# cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
# vi /etc/my.cnf

     :
# Disable Federated by default
#skip-federated                                          コメントアウトます
     :
[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates
default-character-set=utf8                               mysqlコマンドの文字セットをUTF-8にしています
データベースを初期化します。
# cd /home/database/mysql
# su mysql -s /bin/bash
$ /usr/local/bin/mysql_install_db --user=mysql
$ exit

# chown -R mysql.mysql /home/database/mysql
自動起動設定を行います。
# cp /usr/local/share/mysql/mysql.server /etc/rc.d/init.d/mysql
# chmod 755 /etc/rc.d/init.d/mysql
# chkconfig mysql on

# service mysql start
ユーザー設定を行います。
# mysqladmin -u root password "パスワード"               MySQLユーザー root のパスワードを設定します
# mysql -u root -p
Enter password: 設定したMySQLユーザー root のパスワード
       :
mysql> USE mysql;
       :
Database changed

-- パスワードのない初期ユーザを削除します
mysql> DELETE FROM user WHERE password = '';
mysql> FLUSH PRIVILEGES;
       :
mysql> exit

運用

ユーザーデータベースを作成します。
# mysql -u root -p
Enter password: MySQLユーザー root のパスワード
       :
mysql> CREATE DATABASE データベース名;
       :
mysql> GRANT ALL ON データベース名.*                     -- 管理ユーザを作成します
    -> TO 管理ユーザー名@localhost
    -> IDENTIFIED BY 'パスワード';
       :
mysql> exit
ユーザーデータベースを操作します。
# mysql -u 管理ユーザー名 -p データベース名
Enter password: MySQL管理ユーザーのパスワード
       :
mysql> 操作コマンド;
       :
mysql> exit
バックアップを行います。
# mysqldump -A -Q --flush-privileges -u root -p > バックアップファイル名
Enter password: MySQLユーザー root のパスワード
バックアップファイルからリストアを行います。
# mysql -u root < バックアップファイル名

メジャーバージョンアップ

インストール済MySQLのメジャーバージョンを上げる場合は、以下の手順で行います。
# (# バージョンアップ版のコンパイルを行います)
# cd /usr/local/src
# tar zxvf ダウンロード先/mysql-5.1.30.tar.gz
# cd mysql-5.1.30
# ./configure \
       :                                                 インストール手順の configure を行います
# make

# (# make install前にバックアップを取得します)
# mysqldump -A -Q --opt -u root -p > バックアップファイル名
Enter password: MySQLユーザー root のパスワード

# (# サービスを停止します)
# service mysql stop

# (# 念のためデータベースフォルダごとバックアップします)
# mv /home/database/mysql /home/database/mysql_backup

# (# 新バージョンのデータベースフォルダを作成します)
# mkdir -p /home/database/mysql
# chown mysql.mysql /home/database/mysql
# chmod 750 /home/database/mysql

# (# バージョンアップ版のインストールを行います)
# make install

# (# 定義ファイルを編集します)
# cp -f /usr/local/share/mysql/my-medium.cnf /etc/my.cnf
# vi /etc/my.cnf
       :                                                 インストール手順の定義ファイルの編集を行います

# (# データベースを初期化します)
# cd /home/database/mysql
# su mysql -s /bin/bash
$ /usr/local/bin/mysql_install_db --user=mysql
$ exit

# (# サービスを開始します)
# service mysql start

# (# リストアを行います)
# mysql -u root < バックアップファイル名
# mysql -u root
       :
mysql> FLUSH PRIVILEGES;
       :
mysql> exit
a System House to build an Accounting system by the Computer Technology