mysql 最新的版本都需要cmake编译安装,估计以后的版本也会采用这种方式,所以特地记录一下安装步骤及过程,以供参考。
一. 用 wget 下载需要的软件,保存到目录 /usr/local/src/ 下
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.11.tar.gz/from/http://mysql.he.net/
wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
wget http://ftp.gnu.org/gnu/bison/bison-2.4.3.tar.gz
二. 安装 cmake
cd /usr/local/src
tar zxvf cmake-2.8.4.tar.gz
cd cmake-2.8.4
./bootstrap
make
make install
cd ../
tar zxvf bison-2.4.3.tar.gz
cd bison-2.4.3
./configure
make
make install
cd ../
三. 编译安装 MySQL 5.5.11
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
tar xvf mysql-5.5.11.tar.gz
cd mysql-5.5.11/
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/var/mysql/data \
-DMYSQL_USER=mysql
make
make install
chmod +w /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
可选:ln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
mkdir -p /var/mysql/
mkdir -p /var/mysql/data/
mkdir -p /var/mysql/log/
chown -R mysql:mysql /var/mysql/
cd support-files/
cp my-large.cnf /var/mysql/my.cnf(如果是debian,my.conf需要放在/etc/mysql/下面)
cp mysql.server /etc/init.d/mysqld
四. 配置启动MySQL 5.5.11
1. 若有需要请先修改 mysql 的配置 my.cnf
vi /var/mysql/my.cnf
2. mysql 初始化安装
cp /usr/local/mysql/scpript/mysql_install_db /usr/local/mysql/.
chmod 777 /usr/local/mysql/data
/usr/local/mysql/scripts/mysql_install_db \
–defaults-file=/var/mysql/my.cnf \
–basedir=/usr/local/mysql \
–datadir=/var/mysql/data \
–user=mysql
3. 将 mysql 加入开机启动
chmod +x /etc/init.d/mysqld
vi /etc/init.d/mysqld (编辑此文件,查找并修改以下变量内容:)
basedir=/usr/local/mysql
datadir=/var/mysql/data
chkconfig –add mysqld
chkconfig –level 345 mysqld on
4. 启动 mysql
/usr/local/mysql/bin/mysqld_safe &
或者 /etc/init.d/mysql start
在安装过程中可能你还会遇到很多不同的问题,故意看出错提示或者查看错误日志文件(.err结尾,一般错误提示都有说明)
安装最新版的目的主要是想测试下handlersocket的性能