現状のCentOSなどでは、yumでインストールされるMysqlのバージョンが5.1.67のため、
MySQL5.6以降のInnoDBの性能向上などを考えて、Mysqlの最新GAバージョンをインストールしたい。
- CentOS6.4の64bitがインストールされていること
- 以下の操作はrootで実行することを想定していること
とりあえずJaistとかのミラーからrpmを取ってくるのが早いかも。
http://ftp.jaist.ac.jp/pub/mysql/Downloads/
cd /opt
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-client-5.6.10-1.el6.x86_64.rpm
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-server-5.6.10-1.el6.x86_64.rpm
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-shared-5.6.10-1.el6.x86_64.rpm
wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-devel-5.6.10-1.el6.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-test-5.6.10-1.el6.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-shared-compat-5.6.10-1.el6.x86_64.rpm
# wget http://ftp.jaist.ac.jp/pub/mysql/Downloads/MySQL-5.6/MySQL-embedded-5.6.10-1.el6.x86_64.rpm
yum install MySQL-*.rpm -y
※ MySQLのオフィシャルページに、sharedを入れた場合はshared-compatを入れないようになどの記載あり。
詳細は未確認だが、通常の利用においては上側4つのパッケージで問題ないはず。
service mysql start
rootユーザのパスワードを変えないと何もできないようになっている。
# デフォルトで指定されているMySQLのrootユーザのパスワードを確認
cat ~/.mysql_secret
# デフォルトのパスワードでログインして、パスワードを変更
mysql -u root -p
SET PASSWORD FOR root@localhost=PASSWORD('password');
exit
# 設定したパスワードでログインできる事を確認
mysql -u root -p
# secure_installationで安心してインストール
mysql_secure_installation
Change the root password? [Y/n] n # 今変えたてなので、nでそのまま
Remove anonymous users? [Y/n] Y # 余計なユーザを削除
Disallow root login remotely? [Y/n] Y # Remoteからのroot権限アクセスはセキュリティ的に禁止
Remove test database and access to it? [Y/n] Y # testDBは要らないので削除
Reload privilege tables now? [Y/n] Y # たぶんリロードしといて良い
# 自動起動を設定
chkconfig mysql on
# 設定を確認
chkconfig mysql --list
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
以上で、今回はMySQL5.6.10をインストール完了
my.cnfは、MySQL5.1系頃までは/etc/my.cnfに、MySQL5.5系以降は/usr/my.cnfに存在する。
# originalのmy.cnfをバックアップ
cp /usr/my.cnf /usr/my.conf.origin
# 設定を編集
vi /usr/my.cnf
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8
# 再起動して設定を反映
service mysql restart
デフォルトでinnoDBをストレージエンジンとして利用するように設定
# my.cnfを編集
vi /usr/my.cnf
[mysqld]
innodb_file_per_table
default-storage-engine=InnoDB
# 再起動して設定を反映
service mysql restart
# 設定を編集した際は、反映するために再起動
service mysql restart