MySQL5 インストール・初期設定・起動と停止

 

■MySQL5のソースをダウンロードする

RPMではなく、バイナリでもなく、ソースを落としてくる。

http://dev.mysql.com/downloads/mysql/5.0.html#source

 

 ■MySQL5をインストールする

makeに30分くらいかかった。(Celeron766MHzで) 

$ tar zxvf mysql-5.0.41.tar.gz 
$ cd mysql-5.0.41
$ ./configure --with-charset=utf8 --with-extra-charsets=all --with-mysqld-user=mysql
--prefix=/usr/local/mysql
$ make
$ su
# make install

 

■MySQL5インストール後の初期化と設定

初期設定ファイルとして/etc/my.cnfに、my-medium.cnfをコピーして置く。 

# chown -R mysql:mysql /usr/local/mysql
# cd /usr/local/mysql
# cp share/mysql/my-medium.cnf /etc/my.cnf
# bin/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql:mysql var

確認する。

# ls -l
合計 40
drwxr-xr-x  2 root  mysql 4096  7月  8 21:19 bin
drwxr-xr-x  3 root  mysql 4096  7月  8 21:19 include
drwxr-xr-x  2 root  mysql 4096  7月  8 21:35 info
drwxr-xr-x  3 root  mysql 4096  7月  8 21:19 lib
drwxr-xr-x  2 root  mysql 4096  7月  8 21:20 libexec
drwxr-xr-x  4 root  mysql 4096  7月  8 21:19 man
drwxr-xr-x  8 root  mysql 4096  7月  8 21:20 mysql-test
drwxr-xr-x  3 root  mysql 4096  7月  8 21:19 share
drwxr-xr-x  5 root  mysql 4096  7月  8 21:19 sql-bench
drwx------  4 mysql mysql 4096  7月  8 23:59 var

データをしまうvarを確認する。

# ls -l var
合計 600
drwx------ 2 mysql mysql 4096 7月 8 23:59 mysql
-rw-rw---- 1 mysql mysql 14701 7月 8 23:59 mysql-bin.000001
-rw-rw---- 1 mysql mysql 578125 7月 8 23:59 mysql-bin.000002
-rw-rw---- 1 mysql mysql 38 7月 8 23:59 mysql-bin.index
drwx------ 2 mysql mysql 4096 7月 8 23:59 test

mysql: システムデータベースをしまうディレクトリ。

 

■MySQLデータベースの起動と停止

マニュアルで起動する。

# /usr/local/mysql/bin/mysqld_safe --user=mysql &

 マニュアルで停止する。

# /usr/local/mysql/bin/mysqladmin shutdown 

 

■起動スクリプトを用意する

 起動スクリプトのサンプルをコピーして利用する。

# cp share/mysql/mysql.server /etc/init.d/mysqld

 自動起動にするには、rc2, rc3, rc4, rc5 にシンボリックリンクをはるか、chkconfigで行う。

# chkconfig mysqld on

 起動スクリプトから、MySQLを起動する。

# /etc/init.d/mysqld start

 

 ■MySQLのrootパスワードを設定する

MySQLのrootユーザのパスワードを設定する。

$ /usr/local/mysql/bin/mysqladmin -u root password 'XXXXXX'

rootのパスワードを設定する。

 

 

■ログインしてMySQLの無名ユーザを削除する

ログイン方法: mysql -u ユーザ名 -p

$ /usr/local/mysql/bin/mysql -u root -p
Enter password: XXXXXX

mysql> select user, password, host from mysql.user;

mysql> delete from mysql.user where user="";

 

 

■Statusを見てキャラクタセットを確認しておく

mysql> status
--------------
/usr/local/mysql/bin/mysql Ver 14.12 Distrib 5.0.41, for pc-linux-gnu (i686) using
EditLine wrapper

Connection id: 4
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.0.41-log Source distribution
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /tmp/mysql.sock
Uptime: 14 min 23 sec

Threads: 1 Questions: 13 Slow queries: 0 Opens: 12 Flush tables: 1 Open tables: 6
Queries per second avg: 0.015
--------------

 

■MySQLのパス(PATH)を指定しておく

毎回、/usr/local/mysql/bin/mysql で起動するよりは、mysqlだけで起動したい。

/etc/profileの最後に次の1行を追加するか、各ユーザの.bash_profileに追加する。

 export PATH=/usr/local/mysql/bin:$PATH

 

 

■データベースを作成

データベースに文字コードを指定する場合は、

mysql> create databaase xxxdb default character set utf8;  

 

通常のデータベース作成の場合は、

mysql> create database xxxdb;

 

■ユーザを作成して権限を与える

tanakaユーザを作って、パスワードはpassに設定する。

 mysql> grant all privileges on xxxdb.* to tanaka@localhost identified by 'pass';

 

 ■権限の確認

 mysql> show grants for tanaka@localhost;