前期准备:
下载mysql : wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.12.tar.gz/from/http://cdn.mysql.com/
必要软件包
yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake
创建mysql 用户及用户组:
groupadd mysql
useradd -r -g mysql mysql
创建目录并赋值属主:
1. mkdir /usr/local/mysql3306
2. chown mysql.mysql /usr/local/mysql3306
3. mkdir /data/mysql3306
4. chown mysql.mysql /data/mysql3306
安装步骤:
1. tar -zxvf mysql-5.6.12.tar.gz
注:若缺少cmake 可以使用如下安装方法:
http://www.cnblogs.com/zhoulf/archive/2013/02/03/2890717.html
2. cmake
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql3306 -DMYSQL_DATADIR=/data/mysql3306/ -DMYSQL_UNIX_ADDR=/data/mysql3306/mysql_3306.sock -DDEFAULT_CHARSET=utf8 -DEXTRA_CHARSETS=all -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DSYSCONFDIR=/data/mysql3306 -DMYSQL_USER=mysql -DWITH_DEBUG=0
编译参数解释:
--prefix=/usr/local/ec/mysql/:指定安装位置
--localstatedir=/usr/local/ec/mysql/data:指定数据库文件位置
--sysconfdir=/usr/local/ec/mysql:指定my.cnf文件的位置,在一个机器上有多个mysql时很有用。
--without-debug:禁用调用模式
--with-unix-socket-path=/usr/local/ec/mysql/tmp/mysql.sock:指定sock文件位置
--with-client-ldflags=-all-static:
--with-mysqld-ldflags=-all-static:以纯静态方式编译服务端和客户端
--enable-assembler:使用一些字符函数的汇编版本
--with-extra-charsets=gbk,gb2312,utf8 :gbk,gb2312,utf8字符支持
--with-pthread:强制使用pthread库(posix线程库)
3. make && make install
4. 初始化mysql
./mysql_install_db --user=mysql --datadir=/data/mysql3306 --basedir=/usr/local/mysql3306/
5. 启动mysql
mysqld_safe --user=mysql --socket=/data/mysql3306/mysql_3306.sock
--datadir=/data/mysql3306 &
6. 测试是否成功
[root@mwtec-80 mysql3306]# ps -aux|grep mysqld
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root 31738 0.0 0.0 106196 1556 pts/0 S 15:28 0:00 /bin/sh ./mysqld_safe -user=mysql -socket=/data/mysql3306/mysql3306.sock -datadir=/data/mysql3306
mysql 31863 0.0 12.0 1074184 456872 pts/0 Sl 15:28 0:02 /usr/local/mysql3306/bin/mysqld --basedir=/usr/local/mysql3306 --datadir=/data/mysql3306 --plugin-dir=/usr/local/mysql3306/lib/plugin --user=mysql -user=mysql --log-error=/data/mysql3306/mwtec-80.err --pid-file=/data/mysql3306/mwtec-80.pid
root 32547 0.0 0.0 103236 872 pts/1 S+ 16:17 0:00 grep mysqld