[セットトップ]DayDayUP_Linux運行メンテナンス学習_MySQL 5.6.27ソースコードコンパイルインストール


1準備
1.1 mysqlのダウンロード
1.1.1ソース版(共通)
# wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.27.tar.gz

1.1.2バイナリ版(共通)
# wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.27-linux-glibc2.5-i686.tar.gz

1.1.3その他のバージョン
http://dev.mysql.com/downloads/  //          

2 mysqlのインストール(ソースインストール)
2.1新規ユーザーとディレクトリ
# groupadd mysql
# useradd -r -g mysql mysql //-r            ,       
# mkdir -p /usr/local/mysql
# mkdir -p /data/mysql
# chown -R mysql:mysql /data/mysql
# chown -R mysql:mysql /usr/local/mysql

または
# useradd -s /sbin/nologin -M mysql // -s      ,-M      
# chown -R mysql:mysql  //mysql mysql   

2.2インストールと構成
注意:mysql 5から5後にconfigureの代わりにcmakeで
2.2.1 cmakeの取り付け
ダウンロードアドレス:http://www.cmake.org/
tar zxvf cmake-2.8.4.tar.gz
cd cmake-2.8.4
./configure
make
make install

または
# yum -y install cmake  //    centos redhat  

cmakeパラメータ
-DCMAKE_INSTALL_PREFIX= mysql
-DINSTALL_SBINDIR=sbin (prefix/sbin)
-DMYSQL_DATADIR=/var/lib/mysql mysql (/var/lib/mysql)
-DSYSCONFDIR=/etc/mysql mysql (/etc/mysql)
-DINSTALL_PLUGINDIR=lib/mysql/plugin (prefix/lib/mysql/plugin)
-DINSTALL_MANDIR=share/man man (prefix/share/man)
-DINSTALL_SHAREDIR=share aclocal/mysql.m4 (prefix/share)
-DINSTALL_LIBDIR=lib/mysql (prefix/lib/mysql)
-DINSTALL_INCLUDEDIR=include/mysql (prefix/include/mysql)
-DINSTALL_INFODIR=share/info info (prefix/share/info)
例えばcmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql\

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_DATADIR=/db/mysql/data\

-DMYSQL_USER=mysql \

-DMYSQL_TCP_PORT=3306

詳細は以下を参照してください.http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html http://waynerqiu.com/7/153.html
2.3コンパイルインストール
# tar -zxvf mysql-5.6.22.tar.gz
# cd mysql-5.6.22/
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

エラーが発生した場合は、対応するライブラリをインストールし、yumを使用してインストールし、再cmakeはmake cleanを実行する必要があります.
the C compiler identification is unknown
the CXX compiler identification is unknown
-- Could NOT find Threads (missing: Threads_FOUND)
-- Could NOT find Threads (missing: Threads_FOUND)
# yum -y install gcc
# yum -y install gcc-c++
# yum install -y ncurses-devel
# yum -y install bison

または、以下を実行します.
# yum -y install gcc gcc-c++ gcc-g77 bison autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake

インストールを続行
# rm -f CMakeCache.txt 
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
# make 
# make install 

2.4構成
# cd /usr/local/mysql
# cp support-files/my-default.cnf /etc/my.cnf 
# cp support-files/mysql.server /etc/init.d/mysqld
# vim /etc/init.d/mysqld 
  
basedir=/usr/local/mysql
datadir=/data/mysql
# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

2.5 mysqlサービスの開始
# /etc/init.d/mysqld start

2.5.1正常に起動したかどうかを確認する
# ps aux |grep mysql //     mysql  
# netstat -lnp |grep 3306 //      mysql 3306  

2.5.2 mysqlパスの追加
# vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin/
# source /etc/profile
# mysql 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.6.27 Source distribution

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

エラーの場合
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
実行
# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock 

2.6 chkconfigにmysqlサービスを管理させる
# chkconfig --add mysqld
# chkconfig mysqld on //     ,  
# service mysql start|restart|stop

2.7 rootパスワードの追加
# mysqladmin -uroot password
再登録
#mysql -hlocalhost -uroot -p
2.8リモート・ログインの設定
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.27 Source distribution

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;