1. MySQL 5.5 のソースからのインストール
公式ドキュメント:
MySQL 5.5 Installing from Source Distribution
1.1 必要パッケージのインストール
yum install ncurses-devel
1.2 インストール先ディレクトリの作成とユーザー設定
mkdir /usr/local/mysql
groupadd mysql
adduser -g mysql -d /usr/local/mysql/data mysql
1.3 ソースの展開およびビルド
- ソースアーカイブの展開
/usr/local/bin/cmake -E tar zxvf mysql-5.5.35.tar.gz
- 展開したディレクトリへ移動
cd mysql-5.5.35
- cmake によるビルド設定
CFLAGS="-m64 -march=native -g -O3" \ CXXFLAGS="-m64 -march=native -g -O3" \ /usr/local/bin/cmake . \ -DCMAKE_CXX_COMPILER=g++ \ -DCMAKE_CC_COMPILER=gcc \ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DINSTALL_LAYOUT=STANDALONE \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DCOMPILATION_COMMENT="自己流" \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DENABLE_DEBUG_SYNC=0 \ -DENABLE_DTRACE=true \ -DENABLE_GCOV=true \ -DENABLED_LOCAL_INFILE=true \ -DENABLED_PROFILING=true \ -DWITH_DEBUG=false \ -DWITH_EMBEDDED_SERVER=1 \ -DWITH_EXTRA_CHARSETS=complex
- コンパイルとインストール
make -j make install
1.4 初期設定
- インストール先ディレクトリへ移動し、所有権を変更
cd /usr/local/mysql chown -R mysql .
chgrp -R mysql .
- 初期データベースの作成
scripts/mysql_install_db --user=mysql
- 所有権の再設定
chown -R root . chown -R mysql data
- 設定ファイルの配置
cp support-files/my-huge.cnf /etc/my.cnf
- サーバの起動
bin/mysqld_safe --user=mysql &
- 起動スクリプトの配置
cp support-files/mysql.server /etc/init.d/mysql
2. MySQL の汎用インストール手順
公式サイト:
MySQL
2.1 コンパイルに必要なツールのインストール
yum install bison flex compat-libtermcap libtermcap-devel ncurses-devel
2.2 インストール先ディレクトリの作成とユーザー設定
mkdir /usr/local/mysql
groupadd mysql
adduser -g mysql -d /usr/local/mysql/var mysql
2.3 コンパイル設定
MySQL のビルドオプションは、使用する文字コードに応じて以下のように設定します。
2.3.1 cp932 の場合
CC=gcc \
CFLAGS="-O3 -msse3 -march=core2 -mtune=core2 -I/usr/local/include -fPIC" \
CXX=gcc \
CXXFLAGS="-O3 -msse3 -march=core2 -mtune=core2 -felide-constructors -I/usr/local/include -fPIC" \
LDFLAGS="-L/usr/local/lib" \
./configure \
--prefix=/usr/local/mysql \
--with-mysqld-user=mysql \
--with-charset=cp932 \
--with-extra-charsets=complex \
--enable-thread-safe-client \
--enable-local-infile \
--enable-assembler \
--disable-shared \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--without-debug \
--with-big-tables \
--with-pic \
--with-plugins=partition,heap,innobase,innodb_plugin,myisam
2.3.2 eucjpms の場合
CC=gcc \
CFLAGS="-O3 -msse3 -march=core2 -mtune=core2 -I/usr/local/include -fPIC" \
CXX=gcc \
CXXFLAGS="-O3 -msse3 -march=core2 -mtune=core2 -felide-constructors -I/usr/local/include -fPIC" \
LDFLAGS="-L/usr/local/lib" \
./configure \
--prefix=/usr/local/mysql \
--with-mysqld-user=mysql \
--with-charset=eucjpms \
--with-extra-charsets=complex \
--enable-thread-safe-client \
--enable-local-infile \
--enable-assembler \
--disable-shared \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--without-debug \
--with-big-tables \
--with-pic \
--with-plugins=partition,heap,innobase,innodb_plugin,myisam
その後、コンパイルおよびインストールを実行します。
make
make install
2.4 MySQL 5.1 innodb_plugin 設定例
2.4.1 cp932 の場合
CC=gcc \
CFLAGS="-O3 -I/usr/local/include -fPIC" \
CXX=gcc \
CXXFLAGS="-O3 -felide-constructors -I/usr/local/include -fPIC" \
LDFLAGS="-L/usr/lib -L/usr/lib64 -L/usr/local/lib -L/usr/local/lib64" \
./configure \
--prefix=/usr/local/mysql \
--with-mysqld-user=mysql \
--with-charset=cp932 \
--with-extra-charsets=complex \
--with-pic \
--with-plugins=partition,heap,innobase,innodb_plugin,myisam,myisammrg \
--without-debug \
--with-mysqlmanager \
--with-embedded-server \
--with-big-tables \
--with-readline \
--enable-thread-safe-client \
--enable-profiling \
--enable-local-infile \
--enable-assembler \
--without-docs \
--without-man
2.4.2 utf8 の場合
CC=gcc \
CFLAGS="-O3 -march=native -mtune=native -I/usr/local/include -fPIC" \
CXX=gcc \
CXXFLAGS="-O3 -march=native -mtune=native -felide-constructors -I/usr/local/include -fPIC" \
LDFLAGS="-L/usr/lib -L/usr/lib64 -L/usr/local/lib -L/usr/local/lib64" \
./configure \
--prefix=/usr/local/mysql \
--with-mysqld-user=mysql \
--with-charset=utf8 \
--with-extra-charsets=complex \
--with-pic \
--with-plugins=partition,heap,innobase,innodb_plugin,myisam,myisammrg \
--without-debug \
--with-mysqlmanager \
--with-embedded-server \
--with-big-tables \
--with-readline \
--enable-thread-safe-client \
--enable-profiling \
--enable-local-infile \
--enable-assembler \
--without-docs \
--without-man
補足:
プラグイン設定の際、以下のオプションは除外してください。
--with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static --disable-shared
また、innodb_plugin
関連の設定例として、設定ファイルに下記パラメータを記述することが可能です。
innodb_file_per_table
ignore-builtin-innodb
plugin-load=innodb=ha_innodb_plugin.so;innodb_trx=ha_innodb_plugin.so;innodb_locks=ha_innodb_plugin.so;innodb_lock_waits=ha_innodb_plugin.so;innodb_cmp=ha_innodb_plugin.so;innodb_cmp_reset=ha_innodb_plugin.so;innodb_cmpmem=ha_innodb_plugin.so;innodb_cmpmem_reset=ha_innodb_plugin.so
groonga_default_parser=TokenMecab
skip-character-set-client-handshake
character-set-server=cp932
skip-name-resolve
max_connections=100
max-user-connections=100
max_connect_errors=100000
3. MySQL 初期設定および起動
3.1 データベースの初期化
/usr/local/mysql/bin/mysql_install_db --user=mysql
3.2 ディレクトリの所有者変更
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql/var
3.3 設定ファイルの配置
サポートファイルから設定ファイルを配置します。
cd support-files
cp mysql.server /etc/rc.d/init.d/mysql
chmod 755 /etc/rc.d/init.d/mysql
cp my-huge.cnf /etc/my.cnf
3.4 自動起動設定
システム起動時に MySQL を自動起動するよう設定します。
chkconfig mysql on
3.5 サーバ起動と root パスワードの設定
- サーバの起動
/usr/local/mysql/bin/mysqld_safe --user=mysql &
- root ユーザーのパスワード設定
/usr/local/mysql/bin/mysqladmin -u root password '新しいパスワード'