当前位置:Gxlcms > 数据库问题 > [原创]Centos7 从零编译配置MySQL

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

时间:2021-07-01 10:21:17 帮助过:21人阅读


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

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

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

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

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

 

 

目录


一、Centos7 从零编译配置Nginx

二、Centos7 从零编译配置PHP

三、Centos7 从零编译配置MySQL

 

 

一、准备工作


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

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

  1. <span style="font-size: 14px;"># yum install gcc gcc-c++</span>

 

1.2 创建需要使用的目录

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

  1. <span style="font-size: 14px;"># <span style="color: #0000ff;">mkdir</span> /source/</span><br><span style="font-size: 14px;"># <span style="color: #0000ff;">mkdir</span> /package/</span><br><span style="font-size: 14px;"># <span style="color: #0000ff;">mkdir</span> /lnmp/</span>

  

 

二、安装mysql篇


2.1 安装cmake

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

命令流程:

  1. <span style="font-size: 14px;"><span style="color: #000000;"># <span style="color: #0000ff;">cd <span style="color: #000000;">/source/</span></span><br># <span style="color: #0000ff;">wget</span> <span style="color: #3366ff;">https://cmake.org/files/v3.8/cmake-3.8.2.tar.gz</span>
  2. # <span style="color: #0000ff;">tar</span> -zxvf cmake-3.8.2.tar.gz
  3. # <span style="color: #0000ff;">cd</span> cmake-3.8.2
  4. # ./configure --prefix=/package/cmake
  5. # <span style="color: #0000ff;">make</span> && <span style="color: #0000ff;">make install</span>
  6. #</span><span style="color: #008000;"><span style="color: #000000;"><span style="color: #0000ff;"> export</span> PATH=/package/cmake/bin:$PATH</span> //设置环境变量。可忽略,只是为了你以后使用cmake方便点。</span></span>

 

2.2 安装ncurses

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

命令流程:

  1. <span style="font-size: 14px;"># <span style="color: #0000ff;">cd</span> /source/<br># <span style="color: #0000ff;">wget</span> <span style="color: #3366ff;">http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz</span>
  2. # <span style="color: #0000ff;">tar</span> -zxvf ncurses-<span style="color: #800080;">6.0</span><span style="color: #000000;">.tar.gz
  3. # <span style="color: #0000ff;">cd</span> ncurses</span>-<span style="color: #800080;">6.0</span><span style="color: #000000;">
  4. # .</span>/<span style="color: #000000;">configure --prefix=/package/ncurese
  5. # <span style="color: #0000ff;">make</span> && <span style="color: #0000ff;">make install</span></span></span>

 

2.3 安装mysql

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

命令流程:

不带boost安装方式

  1. <span style="font-size: 14px;"><span style="color: #008000;">//</span><span style="color: #008000;"> 这个是不带boost版本的mysql源码。你可以使用以下的参数在编译过程中自动下载boost
  2. </span><span style="color: #008000;">//</span><span style="color: #008000;"> -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/package/boost</span>
  3. <br><span style="color: #000000;"># cd /source/
  4. # wget <span style="color: #3366ff;">http:</span></span><span style="color: #3366ff;">//cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz</span>
  5. # tar -zxvf mysql-<span style="color: #800080;">5.7</span>.<span style="color: #800080;">18</span><span style="color: #000000;">.tar.gz
  6. # cd mysql</span>-<span style="color: #800080;">5.7</span>.<span style="color: #800080;">18</span><span style="color: #000000;">
  7. # cmake . </span>-DCMAKE_INSTALL_PREFIX=/usr/local/<span style="color: #000000;">mysql # </span>-DDOWNLOAD_BOOST=<span style="color: #800080;">1</span> -DWITH_BOOST=/package/boost \ <span style="color: #008000;">//</span><span style="color: #008000;">设置自动下载boost库,并放到-DWITH_BOOST指定的路径里。</span>
  8. # -DCURSES_LIBRARY=/package/ncurses/lib/libncurses.a \ <span style="color: #008000;">//</span><span style="color: #008000;">ncurses库libncurses.a</span>
  9. # -DCURSES_INCLUDE_PATH=/package/ncurses/include <span style="color: #008000;">//</span><span style="color: #008000;">ncurses库头文件</span>
  10. # make && make install</span>

 

自带boost安装方式

  1. <span style="font-size: 14px;"># <span style="color: #0000ff;">cd</span> /source/<br># <span style="color: #0000ff;">wget</span> <span style="color: #3366ff;">http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gz</span>
  2. # <span style="color: #0000ff;">tar</span> -zxvf mysql-boost-<span style="color: #800080;">5.7</span>.<span style="color: #800080;">18</span><span style="color: #000000;">.tar.gz
  3. # <span style="color: #0000ff;">cd</span> mysql</span>-<span style="color: #800080;">5.7</span>.<span style="color: #800080;">18</span><span style="color: #000000;">
  4. # <span style="color: #0000ff;">cmake</span> . </span>-DCMAKE_INSTALL_PREFIX=/usr/local/<span style="color: #000000;">mysql </span>-DWITH_BOOST=boost/boost_1_59_0 -DCURSES_LIBRARY=/package/ncurese/lib/libncurses.a -DCURSES_INCLUDE_PATH=/package/ncurses/include
  5. <span style="color: #000000;"># <span style="color: #0000ff;">make</span> && <span style="color: #0000ff;">make install</span></span></span>

 -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 初始化数据库

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

 

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

  1. <span style="font-size: 14px;">cp /lnmp/mysql/support-files/mysql.server /etc/init.d/mysql</span><br><span style="font-size: 14px;">service mysql start</span>

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

 

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

  1. <span style="font-size: 14px;">./bin/mysqladmin -u root password <span style="color: #800000;">‘</span><span style="color: #800000;">密码</span><span style="color: #800000;">‘</span></span>

 

 

附、常用命令


mysql常用命令

  1. <span style="font-size: 14px;"># /lnmp/nginx/sbin/nginx <span style="color: #008000;">//启动nginx</span></span><span style="font-size: 14px;"><br></span>

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

标签:str   最新版   常用   其他   16px   san   lan   lin   class   

人气教程排行