MySQL5.6 インストールと初期設定(CentOS 6)

CentOS 6 に MySQL5.6 を yum でインストールする方法を紹介します。

■ MySQL5.6インストール (MySQL Community版)

yum で rpmパッケージをインストールするには標準のリポジトリでなく mysql-community を使います。

mysql-community リポジトリをまだ入れていない場合は入れておきます。

# yum -y install http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

※もしMySQL5.5をインストールしたい場合はリポジトリを切り替えます。

/etc/yum.repos.d/mysql-community.repo

[mysql55-community]
name=MySQL 5.5 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/6/$basearch/
enabled=1 <こっちを 1 に
.
.
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=0 <こっちを 0 に
.
.

(1) インストール

# yum install mysql mysql-devel mysql-server mysql-utilities

(2) ファイル構成

/usr/bin/mysql*         ... プログラム諸々
/etc/my.cnf             ... 設定ファイル
/usr/share/mysql        ... 設定ファイルの雛形など
/var/lib/mysql          ... データベースが配置される
/var/lib/mysql/mysql.sock ... ソケットファイル
/var/log/mysqld.log     ... ログ
/var/lock/subsys/mysqld    ... 実行中のロックファイル
/var/run/mysqld/mysqld.pid ... 実行中のPIDファイル
/etc/init.d/mysqld      ... サービス起動シェル

この中で重要なのは設定ファイルの /etc/my.cnf くらい。
あとは変更しないので気にしなくてよい。

(3) 設定

/etc/my.cnf

[mysqld]
.
.

character-set-server = utf8

max_connections=200
thread_cache_size=20
table_open_cache=1024
key_buffer_size=32M
query_cache_size=32M
tmp_table_size=64M
max_heap_table_size=64M
innodb_buffer_pool_size=256M
innodb_log_file_size=64M
innodb_file_per_table
innodb_thread_concurrency=8
max_allowed_packet=16M
wait_timeout=30


[client]

default-character-set = utf8


自動起動設定

# chkconfig mysqld on
# chkconfig --list mysqld

MySQLを起動

起動
# /etc/rc.d/init.d/mysqld start

再起動
# /etc/rc.d/init.d/mysqld restart

(4) 運用中のMySQLの設定ファイルを変更したときの注意

/etc/my.cnf で
innodb_buffer_pool_size
innodb_log_file_size
あたりを変更したときは、

MySQLを停止
#/etc/rc.d/init.d/mysqld stop

トランザクションログファイルを削除して
# rm -rf /var/lib/mysql/ib_logfile0
# rm -rf /var/lib/mysql/ib_logfile1
# ls -l /var/lib/mysql

MySQLを起動
# /etc/rc.d/init.d/mysqld start

(5) PHP5.4(remi) PHP5.5以上(IUS) と連携時の注意

※MySQL5.6 は、php-mysql でなく php-mysqlnd でないとだめ

PHP5.4(remiリポジトリ) を使用する場合
php-mysqlnd

PHP5.5(IUSリポジトリ) を使用する場合
php55u-mysqlnd

PHP5.6(IUSリポジトリ) を使用する場合
php56u-mysqlnd

コメントを残す