気ままなDevLog

webとかプログラミングについての雑記帳

MySQL 5.1のインストールメモ

インストール

バイナリパッケージのダウンロード

MySQLのサイトからmysql-5.1.24-rc-linux-i686-glibc23.tar.gzを入手する。
http://dev.mysql.com/downloads/

ダウンロードしたファイルを展開し、インストール対象ディレクトリに移動する。
# tar zxvf mysql-5.1.24-rc-linux-i686-glibc23.tar.gz
# mv mysql-5.1.24-rc-linux-i686-glibc23 /usr/mysql

初期設定

データファイル、設定ファイル、ログファイルすべて/var/mysql/data以下に置くことにしてみる。

ユーザとグループの作成
# groupadd mysql
# useradd -g mysql -d /home/mysql mysql
# passwd mysql パスワード
所有者の変更
# chown -R mysql:mysql /usr/mysql
権限DBの作成
# mkdir -p /var/mysql/data
# chown mysql:mysql /var/mysql/data

mysqlユーザになってインストールシェルを実行

$ cd /usr/mysql
$ ./scripts/mysql_install_db --datadir=/var/mysql/data
my.cnfの作成と設定
# cp /usr/mysql/support-files/my-medium.cnf /var/mysql/data/my.cnf
# vi /var/mysql/data/my.cnf

my.cnfのmysqldディレクティブを編集

[mysqld]
user = mysql
basedir = /usr/mysql
datadir = /var/mysql/data
port = 3306
socket = /var/mysql/data/mysql.sock
mysqld起動
$ cd /usr/mysql
$ ./bin/mysqld_safe --defaults-file=/var/mysql/data/my.cnf >> /var/mysql/data/mysqld_safe.log 2>&1 &
データベースユーザの作成

初期登録されているユーザを削除し、新たに管理者ユーザを作成する。

$ /usr/mysql/bin/mysql --user=root --socket=/var/mysql/data/mysql.sock

mysql> TRUNCATE TABLE mysql.user;
mysql> FLUSH PRIVILEGES;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'パスワード' WITH GRANT OPTION;

データベースの作成と利用ユーザの作成

mysql> CREATE DATABASE hoge;
mysql> GRANT ALL PRIVILEGES ON hoge.* TO hogeuser IDENTIFIED BY 'パスワード';

作成したユーザで接続してみる

$ /usr/mysql/bin/mysql --user=hogeuser --password=パスワード --socket=/var/mysql/data/mysql.sock hoge
mysqld停止
$ /usr/mysql/bin/mysqladmin shutdown --user=root --password=パスワード --socket=/var/mysql/data/mysql.sock