20131026 mysql 5.6.12编译安装
需要源码文件下载
mysql5.6.12 ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/
cmake http://www.cmake.org/cmake/resources/software.html
1、首先安装cmake ,从mysql5.5 开始用cmake代替./configure(挺费时间的)
tar zxf cmake-2.8.11.2.tar.gz
./bootstrap && make && make install
2、建立mysql用户及组
groupadd -r mysql
useradd -g mysql -r -s /sbin/nologin mysql
3、建立mysql数据目录
mkdir -p /mydata/data
4、编译安装mysql5.6.12
tar zxvf mysql-5.6.12.tar.gz
cd mysql-5.6.12
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_bin
提示:
CMake Warning:
Manually-specified variables were not used by the project:
WITH_MEMORY_STORAGE_ENGINE
WITH_READLINE
#####注释######
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径
-DMYSQL_DATADIR=/usr/local/mysql/data \ #数据文件存放位置
-DSYSCONFDIR=/etc \ #my.cnf路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MyIASM引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 \ #支持Memory引擎
-DWITH_READLINE=1 \ #快捷键功能(我没用过)
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径
-DMYSQL_TCP_PORT=3306 \ #端口
-DENABLED_LOCAL_INFILE=1 \ #允许从本地导入数据
-DWITH_PARTITION_STORAGE_ENGINE=1 \ #安装支持数据库分区
-DEXTRA_CHARSETS=all \ #安装所有的字符集
-DDEFAULT_CHARSET=utf8 \ #默认字符
-DDEFAULT_COLLATION=utf8_general_ci #默认校对规则
utf8_general_ci 不区分大小写
utf8_general_cs 区分大小写
5、修改目录属主、权限
cd /mydata
chown -R mysql .
chgrp -R mysql .
chown -R root .
6、mysql服务脚本
cp support-files/mysql.server /etc/init.d/mysqld #复制脚本
chmod +x /etc/init.d/mysqld #增加可执行权限
chkconfig --add mysqld #增加至sysV服务
chkconfig mysqld on #开机自启动
7、初始化mysql
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/mydata/data --user=mysql
可以cp support-files/my-medium.cnf /etc/my.cnf
或直接编辑编译自动生成的/usr/local/mysql/my.cnf
[root@mysql mysql]# vim my.cnf
#增加如下内容
binlog-format=ROW
log-bin=master-bin.log
log-slave-updates=true
gtid-mode=on
enforce-gtid-consistency=true
master-info-repository=TABLE
relay-log-info-repository=TABLE
sync-master-info=1
slave-parallel-workers=2
binlog-checksum=CRC32
master-verify-checksum=1
slave-sql-verify-checksum=1
binlog-rows-query-log_events=1
server-id=1
report-port=3306
port=3306
datadir=/mydata/data
socket=/tmp/mysql.sock
8、启动mysql
service mysqld start
9、mysql命令添加到环境变量中
# vim /etc/profile.d/mysql.sh
exportPATH=$PATH:/usr/local/mysql/bin
# source /etc/profile #重新读取环境变量