MySQL5.6二进制软件包编译安装详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL5.6二进制软件包编译安装详解相关的知识,希望对你有一定的参考价值。

一、软件环境

[[email protected] ~]# uname -r
3.10.0-862.el7.x86_64
[[email protected] ~]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 

二、安装部署过程详解

  1. mysql安装3种方式:
    1>rpm包安装
    应用文件默认安装在/usr/local 目录下
    2>源码编译
    需要定制文件路径和参数
    3> 二进制免编译方式
    优点是可以指定文件安装路径,不存在依赖包问题
  2. 下载安装包到/usr/local/src
    [[email protected]ost ~]# cd /usr/local/src/
    [[email protected] src]# wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

    技术分享图片

  3. 解压tar安装包
    [[email protected] src]# tar -zxvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz

    查看解压过程是否存在报错

    [[email protected] src]# echo $?
    0

    说明:返回0表示解压成功,否则解压失败
    技术分享图片

  4. 移动重命名,注意执行这条命令时,/usr/local/下面是没有mysql目录的
[[email protected] src]# mv  mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql
[[email protected] src]# ll
total 321176
-rw-r--r-- 1 root root 328882304 Dec  9  2017 mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
[[email protected] src]# ll /usr/local/mysql/

技术分享图片
5.创建mysql用户和用户组

[[email protected] src]# cd /usr/local/mysql/
[[email protected] mysql]# useradd mysql

6.创建数据库目录/data/mysql

[[email protected] mysql]# mkdir /data/mysql

7.初始化数据库

[[email protected] mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/date/mysql
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper

报错分析:
初始化mysql数据库报这个错,是因为缺少Data::Dumper这个模块

解决办法1:安装aotuconf库

yum -y install autoconf  

技术分享图片

解决办法2:模糊搜索perl和dumper这两个软件包

[[email protected] mysql]# yum list | grep perl |grep -i dumper

技术分享图片
出现4个Dumper相关的软件包,如果在不知道缺少哪个包的前提下,建议依次yum安装每个软件包,然后再执行数据库初始化命令看返回结果

再来执行数据库初始化命令,可以从两个方面判断数据库初始化是否成功
a.执行数据库初始化过程出现两个OK
技术分享图片
b.执行echo $?返回值是否为0
技术分享图片

说明:echo $?的作用是检查上一条命令执行状态,成功返回0,失败返回非0

8.复制mysql5.6的配置文件模板

[[email protected] mysql]# cp ./support-files/my-default.cnf /etc/my.cnf
编辑/etc/my.cnf
datadir = /data/mysql
socket = /tmp/mysql.sock

9.把mysql5.6数据库的启动脚本移动到/etc/init.d/mysqld

技术分享图片

编辑数据库启动脚本/etc/init.d/mysqld,修改
basedir=
datadir=
参数为
basedir=/usr/local/mysql

datadir=/data/mysql

在centos7.5上,如果想要把mysql数据库启动脚本加入到系统开机启动,执行下面命令
技术分享图片
10.启动MySQL数据库,执行

[[email protected] mysql]# service mysqld start
Starting MySQL.Logging to ‘/data/mysql/localhost.localdomain.err‘.
................. SUCCESS!
或者
[[email protected] mysql]# /etc/init.d/mysqld restart
Shutting down MySQL.. SUCCESS!
Starting MySQL. SUCCESS!
[[email protected] mysql]#
此时可查看到mysql数据库进程
[[email protected] mysql]# ps -ef |grep mysqld

技术分享图片

查看数据库监控的端口为3306
[[email protected] mysql]# netstat -nlpt

技术分享图片
11.从命令行启动mysql服务

[[email protected] mysql]# /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/localhost.localdomain.pid &
[[email protected] ~]# ps -ef |grep mysqld
root      20630  17325  0 02:09 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/localhost.localdomain.pid
mysql     20767  20630  0 02:09 pts/0    00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=localhost.localdomain.err --pid-file=/data/mysql/localhost.localdomain.pid --socket=/tmp/mysql.sock
root      20861  20802  0 02:10 pts/1    00:00:00 grep --color=auto mysqld

以上是关于MySQL5.6二进制软件包编译安装详解的主要内容,如果未能解决你的问题,请参考以下文章

mysql5.6二进制安装

mysql5.6 安装部署

软件包管理详解

mysql5.6快速安装及参数详解

mysql5.7安装

Linux/Centos 源码编译安装Mysql5.6