# MySQL 5.6.12 インストーラ

# このスクリプトは2013.7.11の時点で動作確認を経ています
# このスクリプト一つで汎用的な設定でインストールが可能です。
# ソース配布元のURL変更などでwgetが失敗する可能性があります。
# このスクリプトを使用は自己責任で行ってください。
# このスクリプトを使用したことにより、何らかの損害が生じても、作者は一切責任を負いません。

#------------------------------------------------------------
# コンパイル環境の設定
#------------------------------------------------------------
yum -y install make gcc gcc-c++ wget
yum -y install ncurses-devel 

#------------------------------------------------------------
# bison-2.6
#------------------------------------------------------------
# ソースダウンロード先
comp_dir=/usr/local/src
# パッケージ名
pack_name=bison
# バージョン
version=-2.6
# ソースのファイル形式
ext=.tar.gz
# tar解凍時のオプション
ext_opt=z
# インストール先ディレクトリ
ins_dir=/usr/local
# ダウンロード元パッケージ
dl_uri=ftp://ftp.gnu.org/gnu/bison/bison-2.6.tar.gz
# CPU数
proc=`grep processor /proc/cpuinfo | wc -l`
 
cd ${comp_dir}
rm -rf ${pack_name}${version}
wget ${dl_uri} -O ${pack_name}${version}${ext}
tar ${ext_opt}xf ${pack_name}${version}${ext}
cd ${comp_dir}/${pack_name}${version}
 
./configure \
--prefix=${ins_dir} \
|| exit 1
make -j ${proc} && make install || exit 1
 

#------------------------------------------------------------
# cmake-2.8.9
#------------------------------------------------------------
# ソースダウンロード先
comp_dir=/usr/local/src
# パッケージ名
pack_name=cmake
# バージョン
version=-2.8.9
# ソースのファイル形式
ext=.tar.gz
# tar解凍時のオプション
ext_opt=z
# インストール先ディレクトリ
ins_dir=/usr/local
# ダウンロード元パッケージ
dl_uri=http://www.cmake.org/files/v2.8/cmake-2.8.9.tar.gz
 
cd ${comp_dir}
rm -rf ${pack_name}${version}
wget ${dl_uri} -O ${pack_name}${version}${ext}
tar ${ext_opt}xf ${pack_name}${version}${ext}
cd ${comp_dir}/${pack_name}${version}
 
./configure \
--prefix=${ins_dir} \
|| exit 1
gmake -j ${proc} && make install || exit 1
make install


#------------------------------------------------------------
# mysql 5.6.12
#------------------------------------------------------------
# ソースダウンロード先
comp_dir=/usr/local/src
# パッケージ名
pack_name=mysql
# バージョン
version=-5.6.12
# ソースのファイル形式
ext=.tar.gz
# tar解凍時のオプション
ext_opt=z
# インストール先ディレクトリ
ins_dir=/var/lib/mysql
# ダウンロード元パッケージ
dl_uri=http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.12.tar.gz/from/http://cdn.mysql.com/
# CPU数
proc=`grep processor /proc/cpuinfo | wc -l`
 
cd ${comp_dir}
rm -rf ${pack_name}${version}
# すでに必要なソースが用意されている場合は必要ありません。
wget ${dl_uri} -O ${pack_name}${version}${ext}
tar ${ext_opt}xf ${pack_name}${version}${ext}
cd ${comp_dir}/${pack_name}${version}
cmake . \
-DINSTALL_BINDIR=/usr/local/bin \
-DINSTALL_SBINDIR=/usr/local/sbin \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DCMAKE_INSTALL_PREFIX=${ins_dir} \
-DWITH_EXTRA_CHARSETS="complex" \
-DMYSQL_UNIX_ADDR=${ins_dir}/data/mysql.sock \
-DSYSCONFDIR=${ins_dir}/etc \
-DMYSQL_TCP_PORT=3306 \
|| exit 1
make -j ${proc} || exit 1
# 既存のコンパイル済みモジュールをバックアップする際に使用してください。
# /bin/mv ${ins_dir} /tmp/${pack_name}_bk`date +%Y%m%d%H%M%S`
make install || exit 1

# ユーザの作成
useradd -r mysql
# ディレクトリの移動
cd ${ins_dir}
# 設定ファイル格納先ディレクトリの作成
mkdir ./etc
# 権限変更
chown -R mysql.mysql ${ins_dir}
# 初期DBの作成
${ins_dir}/scripts/mysql_install_db --user=mysql
 
 
