#1、安装说明
本套安装方式适用于:CentOS6.X 或CentOS7.X系列的OS安装,此方法适用于MySQL5.6.xx版本的安装,如果是5.7版本的话不适合该配置。
#2、准备安装环境
# No1:关闭:iptables selinux
# No2:下载好安装包(这里使用 mysql-5.6.38.tar.gz 包安装)
# No3:安装依赖包
yum install -y ncurses-devel libaio-devel
# No4:安装cmake软件 [ 说明:MySQL5.5版本以后使用编译安装需要安装 cmake ]
yum install cmake -y
# No5:创建MySQL管理的虚拟用户
useradd -s /sbin/nologin -M mysql
id mysql
# No6:创建tools目录,导入MySQL安装包并解压
mkdir /server/tools -p && cd /server/tools/
tar xf mysql-5.6.38.tar.gz
cd mysql-5.6.38 ###进入解压之后的目录
#3、执行cmake命令进行安装前的配置
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38
-DMYSQL_DATADIR=/application/mysql-5.6.38/data
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_EXTRA_CHARSETS=all
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITH_ZLIB=bundled
-DWITH_SSL=bundled
-DENABLED_LOCAL_INFILE=1
-DWITH_EMBEDDED_SERVER=1
-DENABLE_DOWNLOADS=1
-DWITH_DEBUG=0
补充说明:
## 补充说明3:
cmake干了什么?
1、做了些预配置
2、影响了编译后的程序(编译过程会将cmake指定的配置信息硬编码到程序文件中)
mysqld、mysql、mysql_install_db、mysqldump、mysqladmin、mysql_safe 等。
#4、进行编译安装
make && make install
#5、编译安装完整之后操作
# 创建软连接
ln -s /application/mysql-5.6.38/ /application/mysql
# 将/etc/ 下面的存在的my.cnf* 配置文件
rm -rf /etc/my.cnf*
************************************
或者把/application/mysql/support-files/my*.cnf配置文件覆盖/etc/my.cnf
cp /application/mysql/support-files/my*.cnf /etc/my.cnf
或者:mv /etc/my.cnf /tmp/
************************************
# 初始化数据(注意:这种方式仅限于5.7版本以前,和MySQL5.7以后初始化有区别)
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql
# 修改软件路径归属:
chown -R mysql.mysql /application/mysql/
*************************************************************
CentOS6.X系列启动脚本设置(如果想CentOS7.X启动脚本设置查看后面MySQL5.7.20版本安装)
# 拷贝启动脚本到sys-v模式目录
cp support-files/mysql.server /etc/init.d/mysqld
# 修改权限
chmod 700 /etc/init.d/mysqld
# 设置开机自启动
chkconfig mysqld on
chkconfig --list mysqld
*************************************************************
# 启动数据库
/etc/init.d/mysqld start
# 查看数据库端口号
netstat -lntup | grep 3306
# 设置环境变量
echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
tail -1 /etc/profile
source /etc/profile
echo $PATH
##、 报错处理
安装过程中出现的问题:
*****************************************************************************
No1:
命令:/application/mysql/bin/mysqld_safe &
Logging to '/application/mysql/data/db01.err'.
181114 14:44:44 mysqld_safe Directory '/application/mysql-5.6.38/tmp' for UNIX socket file don't exists.
[1]+ Exit 1 ./mysqld_safe
解决办法:
mkdir /application/mysql-5.6.38/tmp
chown -R mysql.mysql /application/mysql/
*****************************************************************************