详解Lamp环境搭建Linux CentOS6.5编译安装mysql5.6

2019-01-16 23:58:39于丽

安装前准备

通过rpm命令检查centos上是否已经安装mysql,然后卸载已经存在的mysql版本

[root@localhost src]# rpm -qa|grep mysql mysql-libs-5.1.66-2.el6_3.i686 [root@localhost src]# rpm -e --nodeps mysql-libs-5.1.66-2.el6_3.i686

通过yum安装mysql编译需要的依赖包

[root@localhost src]# yum install gcc gcc-c++ perl

下载mysql5.6安装包,mysql5.6安装包下载地址:https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.36.tar.gz。

添加mysql用户组和用户,以及mysql的安装目录

[root@localhost src]# groupadd mysql [root@localhost src]# useradd -g mysql -s /sbin/nologin -M mysql [root@localhost src]# mkdir /usr/local/mysql [root@localhost src]# id mysql uid=501(mysql) gid=501(mysql) groups=501(mysql)

给mysql的安装目录授权

[root@localhost src]# chown -R mysql.mysql /usr/local/mysql [root@localhost src]# ll /usr/local drwxr-xr-x. 2 mysql mysql 4096 May 11 09:09 mysql

开始安装

解压缩之后进入,mysql5.6起都是通过cmake的方式进行配置的,可以直接采用默认的方式cmake .就能直接进入配置,也可以自己指定配置,下面自己执行配置,修改一些常规的mysql配置井号#后面是注释

[root@localhost mysql-5.6.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql #指定安装目录 > -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock #指定mysql.sock地址 > -DDEFAULT_CHARSET=utf8 #指定默认的字符集 > -DDEFAULT_COLLATION=utf8_general_ci #指定默认的排序字符集 > -DWITH_INNOBASE_STORAGE_ENGINE=1 #安装innodb存储引擎 > -DWITH_MYISAM_STORAGE_ENGINE=1 安装myisam存储引擎 > -DWITH_ARCHIVE_STORAGE_ENGINE=1 安装archive存储引擎 > -DWITH_BLACKHOLE_STORAGE_ENGINE=1 安装blackhole存储引擎 > -DMYSQL_DATADIR=/usr/local/mysql/data #mysql数据文件存放目录 > -DMYSQL_TCP_PORT=3306 #端口 > -DENABLE_DOWNLOADS=1

配置之后,可能会出现错误

提示错误:Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)

这里是提示找不到Curses,通过yum安装库

[root@localhost src]# yum -y install ncurses-devel

然后删除掉CMakeCache.txt重新cmake

[root@localhost mysql-5.6.36]# rm -rf CMakeCache.txt

cmake之后没报错,直接执行make&& make install

安装数据文件

mysql安装完成之后需要安装文件,在mysql的安装目录下的scripts文件夹里可以看到mysql_install_db,用来安装mysql数据文件,指定mysql用户

[root@localhost mysql]# ls /usr/local/mysql/scripts/ mysql_install_db [root@localhost mysql]# ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

启动mysql