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

ychristysl00 2017-05-12

安装前准备

通过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

[root@localhost mysql]# /usr/local/mysql/support-files/mysql.server start
Starting MySQL.. SUCCESS!

登录mysql

[root@localhost mysql]# /usr/local/mysql/bin/mysql -uroot

第一次登陆不需要密码,需要通过mysqladmin设置root登录密码、

[root@localhost mysql]# /usr/local/mysql/bin/mysqladmin -uroot password '111111'

查看mysql配置文件

[root@localhost mysql]# /usr/local/mysql/bin/mysql --verbose --help |grep -A 1 'Default options'
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf

可以看到mysql的配置文件是存放在多个位置的,读取的顺序依次是

/etc/my.cnf 、/etc/mysql/my.cnf 、/usr/local/mysql/etc/my.cnf 、~/.my.cnf

那么我们复制mysql安装目录下的support-files文件夹中的my-default.cnf配置文件到/etc/my.cnf即可

[root@localhost support-files]# cp my-default.cnf /etc/my.cnf

如果存在直接覆盖就好了,这里最好把/etc/my.cnf改变下所有者

环境变量的配置,便于使用

将mysql服务启动放在/etc/init.d/下

[root@localhost support-files]# cp mysql.server /etc/init.d/mysqld

将/usr/local/mysql/bin/目录添加到环境变量中,vim编辑vim /etc/profile永久添加环境变量,重启生效

export PATH=$PATH:/usr/local/mysql/bin

如果不想重启,也可以在在编辑完vim /etc/profile之后,执行脚本

[root@localhost support-files]# export PATH=$PATH:/usr/local/mysql/bin

此种方式终端关闭之后就会失效

相关推荐