源码编译并安装MySQL

原创 2018年04月16日 08:20:25

源码编译并安装MySQL

说明:本文需要用到的资源可以去官网下载。

笔者已将下载好的资源放于百度云中,链接: https://pan.baidu.com/s/14-gEhzD9DkcgVc-sSgl8CQ 密码: sxa3

系统要求

  • CMake

  • 一个优秀的make工具,推荐使用GNU make 3.75或以上版本。

  • 一个可以工作的ANSI C++ 编译器,比如gcc或者g++或者gcc-c++。

  • Boost C++库,必须安装Boost1.59.0 (实践证明,源码build mysql-5.7.21时,使用其他版本的Boost库会build失败)。可以从Boost C++库的官方网站获得Boost及其安装说明。安装好Boost库之后,通过定义CMake的 WITH BOOST选项,来告诉build系统已经安装好的Boost库文件所在的位置。例如,

    shell> cmake . -DWITH_BOOST=/usr/local/boost_1_59_0
  • ncurses库。(CentOS推荐sudo yum intall ncurses-devel

  • 足够的内存空间。如果您在编译较大的源文件时遇到类似“Internal compiler error”这样的问题,极有可能是您的系统内存空间太小。如果您是在一台虚拟机上面进行的编译工作,请尝试增加虚拟机的内存。

  • 如果执行测试脚本,那么系统应当按照好Perl。大多数类Unix系统都自带Perl,如果您使用的是Windows系统,可以安装ActiveState Perl

基本步骤

# Preconfiguration setup
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
# Beginning of source-build specific instructions
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
shell> mkdir bld
shell> cd bld
shell> cmake .. -DWITH_BOOST=/usr/local/boost_1_59_0
shell> make
shell> make install
# End of source-build specific instructions
# Postinstallation setup
shell> cd /usr/local/mysql
shell> mkdir mysql-files
shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
shell> bin/mysqld --initialize --user=mysql 
shell> bin/mysql_ssl_rsa_setup              
shell> bin/mysqld_safe --user=mysql & #或者support-files/mysql.server start --user=mysql
# Next command is optional
shell> cp support-files/mysql.server /etc/init.d/mysql.server

详细步骤

  1. 创建mysql用户和mysql组,用于管理和运行mysql服务器。
shell> groupadd mysql
shell> useradd -r -g mysql -s /bin/false mysql
  1. 解压源代码压缩包,并进入到解压出来的文件夹的最顶层目录。
shell> tar zxvf mysql-VERSION.tar.gz
shell> cd mysql-VERSION
  1. 在源代码文件夹内创建一个文件夹bld并进入该文件夹。文件夹bld作为build源代码的工作区,这样做的好处是避免直接在上一层源码文件夹内build,从而保证源码文件夹下的内容干净。
shell> mkdir bld
shell> cd bld
  1. 配置(Configure) build 目录。具体配置build mysql时,CMake命令有哪些可用的选项,可以查看:MySQL Source-Configuration Options。下面的命令属于最小化的配置命令。
cmake ..  -DWITH_BOOST=/usr/local/boost_1_59_0

​ 注意:-DWITH_BOOST=/usr/local/boost_1_59_0Boost C++库的安装路径,请根据实际安装路径调整。

  1. Build mysql源代码。
shell> make
  1. 编译完成之后,安装mysql服务器。
make install

这一步会把已编译好的文件安装在之前CMake配置的安装目录(默认位于/use/local/mysql),可能进行这一步操作时您需要root权限。如果要指定安装目录,可以在命令行中添加DESTDIR参数,例如:

shell> make install DESTDIR="/opt/mysql"

后续配置

一、初始化MySQL中的数据目录

在安装好MySQL之后,必须初始化MySQL数据库中的数据目录以及相应数据表。

  1. 进入到MySQL的顶层安装目录(默认是/usr/local/mysql
shell> cd /usr/local/mysql

​ 在这个目录中,可以看到许多文件和文件夹,特别是bin文件夹,它里面包含mysql服务器(mysqld)和客户端(mysql)等工具程序。

  1. 创建一个文件夹提供给secure_file_priv系统变量,该变量将mysql的导入导出操作限制在这个特定的文件夹内。
shell> mkdir mysql-files

​ 为新创建的文件夹设置权限:

shell> chown mysql:mysql mysql-files
shell> chmod 750 mysql-files
  1. 初始化MySQL中的数据目录,创建包含用户权限表在内的mysql数据库。
shell> bin/mysqld --initialize --user=mysql

​ 注意:初始化完成之后,系统会提供一个临时root密码,这个临时root密码需要记一下,因为之后再次修改root密码时需要提供原始密码(而且mysql强制用户修改初始分配的临时root密码)。

  1. 【可选步骤】如果要让MySQL自动支持安全连接,可使用mysql_ssl_rsa_setup工具来创建默认的SSLRSA文件。
shell> bin/mysql_ssl_rsa_setup
  1. 可以在/etc/my.cnf或者/etc/mysql/my.cnf内指定相关选项(比如端口号),来配置MySQL服务器。若不在这个文件内指定选项,那么启动MySQL的时候,MySQL会按照默认配置进行设置。

二、启动MySQL

shell> cd /usr/local/mysql
shell> support-files/mysql.server start --user=mysql #表示用mysql这个用户来运行mysql服务器

三、停止MySQL

shell> cd /usr/local/mysql
shell> support-files/mysql.server stop

四、查看MySQL运行状况

shell> cd /usr/local/mysql
shell> support-files/mysql.server status

Linux入门到精通视频教程(安装JDK,Tomcat,Mysql)

-
  • 1970年01月01日 08:00

MySQL5.7.13源码编译安装与配置

原文链接:http://blog.csdn.net/xyang81/article/details/51792144安装环境:CentOS7 64位 MINI版官网源码编译安装文档:http://de...
  • xyang81
  • xyang81
  • 2016-07-01 01:09:00
  • 21434

MySQL 5.7.9源码编译安装步骤

CentOS下MySQL 5.7.9编译安装步骤详解 MySQL 5.7.9编译安装方法与其它版本安装是一样了,我信下面就来给各位介绍CentOS下MySQL 5.7.9编译安装步骤,希望此篇文...
  • wulantian
  • wulantian
  • 2016-03-09 09:56:45
  • 6169

centos mysql-5.6.34 编译安装

centos mysql-5.6.34 编译安装: 准备工作: yum install gcc gcc-c++ ncurses-devel perl 安装cmake: yum in...
  • hxmcnu
  • hxmcnu
  • 2016-11-21 23:20:03
  • 1603

源码编译安装mysql-5.7.14

源码编译安装mysql 5.7
  • casewhenthenelseend
  • casewhenthenelseend
  • 2016-08-11 12:09:48
  • 948

mac os源码编译MYSQL

一、brew安装 确保系统已经安装xcode,打开终端,使用下面行命令安装依赖管理工具Homebrew。 ruby -e "$(curl -fsSL https://raw.githubusercon...
  • weiganliu
  • weiganliu
  • 2016-01-08 20:00:23
  • 1373

源码编译mysql 5.5+ 安装过程全记录

前言:从mysql 5.5版本开始,mysql源码安装开始使用cmake了,编译安装跟以前的版本有点不一样了。 一,安装步骤:     1.安装前准备工作        a.下载mysql源代码...
  • aidenliu
  • aidenliu
  • 2011-07-05 21:52:07
  • 12695

记一次痛苦的过程-------源码编译安装apache+php5+mysql

当时有我们准备做一个项目,于是我就自己搭建了lamp服务器,直接yum install所有文件,因为centos是一个比较稳重的系统,所以它上面所有软件都不是最新的,apache是2.2.15版本,p...
  • tianlihua306
  • tianlihua306
  • 2014-04-17 18:55:53
  • 2482

Mac下自己编译安装的MySQL启动方法速记

Mac下自己编译安装的MySQL启动方法 sudo /usr/local/mysql/bin/mysqld_safe ctrl+z mysql -h localhost -u root -p...
  • maray
  • maray
  • 2015-08-12 12:18:39
  • 1668

mysql源码编译安装 mysql-5.5.30.tar.gz

1. 需要用到的软件包: cmake-2.6.4-5.el6.x86_64.rpm mysql-5.5.30.tar.gz 2. 安装cmake [root@localhost~]# rpm ...
  • anhuizhiqiang
  • anhuizhiqiang
  • 2016-05-29 16:18:31
  • 1043
收藏助手
不良信息举报
您举报文章:源码编译并安装MySQL
举报原因:
原因补充:

(最多只允许输入30个字)