众所周知,mysql5.5版本之前都是通过./configure进行编译环境检查,mysql5.5之后用的是cmake(包括5.5)
安装前的准备工作:
1、安装epel源
[root@localhost ~]#wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm[root@localhost ~]#rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
2、安装开发工具包和ncurses-devel
[root@localhost ~]#yum -y groupinstall "Development Tools"[root@localhost ~]#yum -y install ncurse ncurses-devel
第一部分 编译安装
一、安装环境
1、mysql源码包
sohu镜像站:http://mirrors.sohu.com/mysql/
2、cmake
cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次不同的编译,如针对于不同平台编译。
(1)源码安装方式
https://cmake.org/download/
[root@localhost ~]# wget https://cmake.org/files/v2.8/cmake-2.8.8.tar.gz[root@localhost ~]# tar xf cmake-2.8.8.tar.gz[root@localhost ~]# cd cmake-2.8.8[root@localhost ~]# ./bootstrap[root@localhost ~]# make[root@localhost ~]# make install
(2) yum安装方式
[root@localhost ~] #yum install cmake
二、mysql5.6.28源码安装方法
[root@localhost ~]# wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.28.tar.gz[root@localhost ~]# tar -zxvf mysql-5.6.28.tar.gz[root@localhost ~]# cd mysql-5.6.28[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_ ZMEMORY_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
环境检查过程中,若出现以下错误信息:
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
解决方法为:
[root@localhost ~]# rm -f ./CMakeCache.txt[root@localhost ~]# yum -y install ncurses-devel[root@localhost ~]# echo $? 查看检查环境过程是否成功,0为成功,其它为失败
3、make编译
[root@localhost ~]# make
4、make install安装
[root@localhost ~]# make install
第二部分 配置mysql为系统服务
三、创建mysql用户和组
[root@localhost ~]# groupadd mysql[root@localhost ~]# useradd -g mysql mysql[root@localhost ~]# chown -R mysql:mysql /usr/local/mysql
四、初始化mysql数据库
[root@localhost ~]# cd /usr/local/mysql/scripts[root@localhost scripts]# lsmysql_install_db[root@localhost scripts]# ./mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
注:只要出现了两个OK代表数据库初始化成功
五、复制my.cnf与mysql.server启动文件
[root@localhost scripts]#cd ..[root@localhost mysql]# cd support-files/[root@localhost support-files]# cp my-default.cnf /etc/my.cnfcp:是否覆盖"/etc/my.cnf"? y[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld[root@localhost support-files]# chmod +x /etc/init.d/mysqld
六、开启mysqld服务
[root@localhost support-files]# service mysqld statusMySQL is not running [失败][root@localhost support-files]# service mysqld startStarting MySQL......... [确定][root@localhost ~]# chkconfig mysqld on
七、查看mysqld服务端口号
[root@localhost support-files]# netstat -tunlp | grep mysqltcp 0 0 :::3306 :::* LISTEN 47557/mysqld
八、初始化数据库密码
[root@localhost support-files]# cd ..[root@localhost mysql]# cd bin [root@localhost bin]# ./mysqladmin -u root password 'mysql'Warning: Using a password on the command line interface can be insecure.[root@localhost bin]# ./mysql -uroot -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 3Server version: 5.6.28 Source distributionCopyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || test |+--------------------+4 rows in set (0.04 sec)mysql> exit
九、修改全局环境变量
[root@localhost ~]# vim /etc/profile56 export PATH=$PATH:/usr/local/mysql/bin[root@localhost ~]#source /etc/profile[root@localhost ~]# mysql -uroot -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 4Server version: 5.6.28 Source distributionCopyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>
十、客户端免密码登录设置
[root@localhost ~]# vim .my.cnf[client]user = rootpassword = sa123456host = localhost[root@localhost ~]#