首页 > 代码库 > [原创]Centos7 从零编译配置MySQL

[原创]Centos7 从零编译配置MySQL

序言


这次玩次狠得。除了编译器使用yum安装,其他全部手动编译。哼~

看似就Nginx、PHP、MySql三个东东,但是它们太尼玛依赖别人了。

没办法,想用它们就得老老实实给它们提供想要的东西。

首先的一些模块依赖一些lib库,

如果你是懒人,就顺着下面的命令分别输入就行了。然后直接看配置篇。(不过这样安装的可不是最新版本的哟)

 

 

目录


一、Centos7 从零编译配置Nginx

二、Centos7 从零编译配置PHP

三、Centos7 从零编译配置MySQL

 

 

一、准备工作


1.1 安装或更新gcc gcc-c++

因为我安装的Centos是绝对纯洁滴。啥也没有。没辙了。只有先安装个编译器了。

# yum install gcc gcc-c++

 

1.2 创建需要使用的目录

source 是用来存放源码的文件夹。package是用来存放编译后的库文件。lnmp是我们真正需要的东西才放里面。(nginx+mysql+memcached+php)

# mkdir /source/
# mkdir /package/
# mkdir /lnmp/

  

 

二、安装mysql篇


2.1 安装cmake

[官方网站] https://cmake.org/

命令流程:

# cd /source/
# wget https://cmake.org/files/v3.8/cmake-3.8.2.tar.gz# tar -zxvf cmake-3.8.2.tar.gz# cd cmake-3.8.2# ./configure --prefix=/package/cmake# make && make install#
export PATH=/package/cmake/bin:$PATH //设置环境变量。可忽略,只是为了你以后使用cmake方便点。

 

2.2 安装ncurses

[官方网站] http://ftp.gnu.org/gnu/ncurses/

命令流程:

# cd /source/
# wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz# tar -zxvf ncurses-6.0.tar.gz# cd ncurses-6.0# ./configure --prefix=/package/ncurese# make && make install

 

2.3 安装mysql

[官方网站] http://www.mysql.com/

命令流程:

不带boost安装方式

// 这个是不带boost版本的mysql源码。你可以使用以下的参数在编译过程中自动下载boost// -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost
# cd /source/# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz# tar -zxvf mysql-5.7.18.tar.gz# cd mysql-5.7.18# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql # -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost \ //设置自动下载boost库,并放到-DWITH_BOOST指定的路径里。# -DCURSES_LIBRARY=/package/ncurses/lib/libncurses.a \ //ncurses库libncurses.a# -DCURSES_INCLUDE_PATH=/package/ncurses/include //ncurses库头文件# make && make install

 

自带boost安装方式

# cd /source/
# wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gz# tar -zxvf mysql-boost-5.7.18.tar.gz# cd mysql-5.7.18# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_BOOST=boost/boost_1_59_0 -DCURSES_LIBRARY=/package/ncurese/lib/libncurses.a -DCURSES_INCLUDE_PATH=/package/ncurses/include# make && make install

 -DCMAKE_INSTALL_PREFIX //安装位置

 -DWITH_BOOST //boost库的路径

 -DCURSES_LIBRARY //ncurses库libncurses.a

 -DCURSES_INCLUDE_PATH //ncurses库头文件

 说明:mysql从5.7版本后就需要boost库的支持了。并且非常恶心的是mysql需要指定的boost版本号,高了或低了都有可能导致编译不通过。

 

到此,使用CentOS7上常用的、全新的Web模块基本已经完成了,剩下的就是对这些软件进行配置咯。哈哈,其实代码多,但是了解后真的挺简单,就那几个命令。怎么样?是不是蛮简单的。

 

 

三、配置mysql


3.1 初始化数据库

./mysqld --initialize-insecure --user=mysql --basedir=/lnmp/mysql --datadir=/lnmp/mysql/data

 

3.2 启动mysql服务和添加开机启动mysql服务

cp /lnmp/mysql/support-files/mysql.server /etc/init.d/mysql
service mysql start

 执行命令:ps -ef|grep mysql 看到mysql服务说明启动成功

 

3.3 修改mysql的root用户密码,root初始密码为空的

./bin/mysqladmin -u root password 密码

 

 

附、常用命令


mysql常用命令

# /lnmp/nginx/sbin/nginx             //启动nginx

[原创]Centos7 从零编译配置MySQL