MySQL 5.5 编译详解

2014-11-24 18:53:56 · 作者: · 浏览: 0

说明蓝色=命令名称


浅绿=命令参数


浅蓝=选项


紫色=目录


一、安装简介


用户名:mysql
安装目录:/usr/local/mysql-5.5.20
数据库目录:/data/mysql/data
源码包:
mysql-5.5.21.tar.gz


二、安装准备


添加用户
useradd -s
/sbin/nologin mysql


建立所需目录
mkdir -p /data/mysql/data
chown -R mysql:mysql
/data/mysql


安装编译所需文件或程序
yum install
gcc gcc-c++ cmake ncurses-devel bison


下载源码包
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.21.tar.gz/from/http://mirror.services.wisc.edu/mysql/ -P
/usr/local/src


三、编译安装


cd /usr/local/src
tar xvf mysql-5.5.21.tar.gz
cd
mysql-5.5.21


CFLAGS="-O3" CXX=gcc
CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
cmake -DMYSQL_USER=mysql \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.21 \
-DMYSQL_DATADIR=/data/mysql/data \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0
注:详细参数见下文补充内容。


make -j 2 && make install
注:-j 用来指定CPU核心数,可加快编译速度,不加也可以。


chown -R mysql:mysql /usr/local/mysql-5.5.21/


mv /usr/local/src/mysql-5.5.21/support-files/my-large.cnf /etc/my.cnf
注:在/usr/local/src/mysql-5.5.21/support-files/文件夹中有多个my-****.cnf 配置文件,具体用那一个配置文件根据自己实际情况。可以通过查看配置文件的头部信息来了解配置问价适合的配置。例如
[root@localhost support-files]# head /usr/local/src/mysql-5.5.21/support-files/my-huge.cnf
# Example MySQL config file for very large systems.
#
# This is for a large system with memory of 1G-2G where the system runs mainly
# MySQL.


mv /usr/local/src/mysql-5.5.21/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --level 345 mysqld
on


/usr/local/mysql-5.5.21/scripts/mysql_install_db --user=mysql \
--defaults-file=/etc/my.cnf \
--basedir=/usr/local/mysql-5.5.21/ \
--datadir=/data/mysql/data/


echo "export PATH=/usr/local/mysql-5.5.21/bin:$PATH" >>/etc/profile
source /etc/profile

补充:
从mysql5.5起,mysql源码安装开始使用cmake。下面是 mysql 5.5 与以前的参数对照: