以前一直用5.1版本的,由于新业务需要用5.6的,就安装并做了笔记
MySQL5.6部分新特性:
InnoDB现在可以限制大量表打开的时候内存占用过多的问题(第三方已有补丁)
InnoDB性能加强。如分拆kernel mutex;flush操作从主线程分离;多个perge线程;大内存优化等
InnoDB死锁信息可以记录到 error 日志,方便分析
MySQL5.6支持延时复制,可以让slave跟master之间控制一个时间间隔,方便特殊情况下的数据恢复。
表分区功能增强
MySQL行级复制功能加强,可以降低磁盘、内存、网络等资源开销(只记录能确定行记录的字段即可)
Binlog实现 crash-safe
复制事件采用crc32校验,增强master/slave 复制数据一致性
新增 log_bin_basename (以前variables里面没有binlog位置信息,对数据库的监管很不方便)
[root@localhost tools]# tar xvf mysql-5.6.19.tar.gz
[root@localhost tools]# cd mysql-5.6.19
[root@localhost mysql-5.6.19]# groupadd mysql
[root@localhost mysql-5.6.19]# useradd mysql -g mysql -M -s /sbin/nologin
[root@localhost mysql-5.6.19]# cmake
-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_TCP_PORT=3306 \#端口
-DENABLED_LOCAL_INFILE=1 \#允许从本地导入数据
-DWITH_PARTITION_STORAGE_ENGINE=1 \#安装支持数据库分区
-DEXTRA_CHARSETS=all \#安装所有的字符集
-DDEFAULT_CHARSET=utf8 \#默认字符
-DDEFAULT_COLLATION=utf8_general_ci
[root@localhost mysql-5.6.19]# make && make install
[root@localhost mysql-5.6.19]# cd /usr/local/mysql/
[root@localhost mysql]# chown -R mysql:mysql .
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
[root@localhost mysql]# chown -R root:mysql .
[root@localhost mysql]# chown -R mysql:mysql ./data
[root@localhost mysql]# chmod -R ug+rwx .
[root@localhost mysql]# cp support-files/my-default.cnf /etc/my.cnf
[root@localhost mysql]# bin/mysqld_safe --user=mysql &
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# chmod 755 /etc/init.d/mysql
[root@localhost mysql]# echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile
[root@localhost mysql]# source /etc/profile