CentOS 6.5下编译安装MySQL 5.6.28

MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。由于其社区版的性能卓越,搭配 PHP 和 Apache 或者NGINX可组成(LAMP和LNMP架构)良好的开发环境。

  • MySQL5.6新特性包括:
    • 更好的性能和可扩展性
    改进InnoDB存储引擎所带来更好的交易吞吐量
    改良的优化所带来更好的查询执行时间和诊断能力
    
    • 在线DDL /架构操作所带来更好的应用程序可用性
    • 通过Memcached的API以NoSQL访问InnoDB所带来的更好的开发速度
    • 改进复制技术所带来的高性能和能自行修复的集群部署
    • 改进的Performance Schema所带来的更好的侦测和监测能力
    • 改进的安全控制,使您部署应用程序时不需担心
    • 其他重要的增强功能

一、卸载旧版本
1、检查是否安装有MySQL
[root@localhost ~]#rpm -qa | grep mysql
2、通过以下的命令来卸载
[root@localhost ~]#rpm -e mysql //普通卸载模式
[root@localhost ~]#rpm -e –nodeps mysql // 强力卸载模式(当普通卸载时候提示有依赖的其它文件,无法卸载情况下用该命令强行卸载)

二、安装MySQL
1、由于安装建议用源码安装Mysql,先安装相关编译包:
[root@localhost ~]# yum install -y make gcc-c++ cmake bison-devel ncurses-devel

2、下载源码包
下载mysql5.6.28链接:http://dev.mysql.com/downloads/mysql/5.6.html
解压mysql-5.6.28.tar.gz
[root@localhost local]# pwd
/usr/local
[root@localhost local]# tar vxf mysql-5.6.28.tar.gz
[root@localhost local]# cd mysql-5.6.28
3、编译安装

[root@localhost mysql-5.6.28]#cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-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.28]# make && make install

安装过程比较久

三、配置MySQL
1、创建mysql用户和组(如果存在则忽略)
[root@localhost mysql-5.6.28]# groupadd mysql
[root@localhost mysql-5.6.28]# useradd -g mysql mysql

2、设置权限
[root@localhost mysql-5.6.28]# chown -R mysql:mysql /usr/local/mysql

3、初始化配置
[root@localhost scripts]# pwd
/usr/local/mysql/scripts
[root@localhost scripts]# ./mysql_install_db –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data/ –user=mysql

4、配置坏境变量:
[root@localhost ~]# echo -e “PATH=/usr/local/mysql/bin:\$PATH\nexport PATH” >> /etc/profile
[root@localhost ~]# source /etc/profile

四、启动MySQL、设置开机启动

[root@localhost mysql]#cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql  #添加服务,复制服务脚本到init.d目录下

[root@localhost mysql]#chkconfig mysql on

[root@localhost mysql]# service mysql start  #启动MySQL
Starting MySQL..                                           [确定]

[root@localhost mysql]# ps -ef |grep mysqld
root      20503      1  0 17:52 pts/2    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/localhost.localdomain.pid
mysql     20705  20503  7 17:52 pts/2    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/var/lib/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/var/lib/mysql/localhost.localdomain.pid --socket=/var/lib/mysql/mysql.sock

[root@localhost mysql]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 33
Server version: 5.6.28-log Source distribution
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
mysql> select version();
+————+
| version() |
+————+
| 5.6.28-log |
+————+
1 row in set (0.00 sec)

Comments

2015-12-19