热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

CentOS7源码编译MariaDB5.5.46

预备知识:MySQL/MariaDB的源码编译需要借助于:cmake:cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个

预备知识:
    MySQL/MariaDB的源码编译需要借助于:cmake:
    cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中
    而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以进行多次
    不同的编译,如针对于不同平台编译。

cmake基础简介:
        使用cmake编译mariadb-5.5
        cmake指定编译选项的方式不同于make,其实现方式对比如下:
        ./configure           cmake .
        ./configure --help    cmake . -LH or ccmake .

        指定安装文件的安装路径时常用的选项:
        -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
        -DMYSQL_DATADIR=/data/mysql
        -DSYSCOnFDIR=/etc

        默认编译的存储引擎包括:csv、myisam、myisammrg和heap。若要安装其它存储引擎,可以使用类似如下编译选项:
        -DWITH_INNOBASE_STORAGE_ENGINE=1
        -DWITH_ARCHIVE_STORAGE_ENGINE=1
        -DWITH_BLACKHOLE_STORAGE_ENGINE=1
        -DWITH_FEDERATED_STORAGE_ENGINE=1

        若要明确指定不编译某存储引擎,可以使用类似如下的选项:
        -DWITHOUT__STORAGE_ENGINE=1
        比如:
        -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
        -DWITHOUT_FEDERATED_STORAGE_ENGINE=1
        -DWITHOUT_PARTITION_STORAGE_ENGINE=1

        如若要编译进其它功能,如SSL等,则可使用类似如下选项来实现编译时使用某库或不使用某库:
        -DWITH_READLINE=1
        -DWITH_SSL=system
        -DWITH_ZLIB=system
        -DWITH_LIBWRAP=0

        其它常用的选项:
        -DMYSQL_TCP_PORT=3306
        -DMYSQL_UNIX_ADDR=/tmp/mysql.sock
        -DENABLED_LOCAL_INFILE=1
        -DEXTRA_CHARSETS=all
        -DDEFAULT_CHARSET=utf8
        -DDEFAULT_COLLATION=utf8_general_ci
        -DWITH_DEBUG=0
        -DENABLE_PROFILING=1

        如果想清理此前的编译所生成的文件,则需要使用如下命令:
        make clean
        rm CMakeCache.txt

#######################################################################

                                OK,现在正式开始

#######################################################################

1、安装依赖包:

 
    # yum install ncurses-devel openssl-devel libevent-devel jemalloc-devel cmake

    #jemalloc-devel 在epel源中,其他的都在base源中已提供;

 

    # cmake也可以使用源码进行编译安装:
    cmake是一个跨平台编译器:

        # tar xf cmake-2.8.8.tar.gz
        # cd cmake-2.8.8
        # ./bootstrap
        # make 
        # make install

 

2、安装开发环境:
    # yum groupinstall "Development Tools" "Server Platform Development"

    新添磁盘,建立LVM作为mysql的数据目录:

 
    # fdisk -l /dev/sdb
        Disk /dev/sdb: 53.7 GB, 53687091200 bytes, 104857600 sectors
        Units = sectors of 1 * 512 = 512 bytes
        Sector size (logical/physical): 512 bytes / 512 bytes
        I/O size (minimum/optimal): 512 bytes / 512 bytes
        Disk label type: dos
        Disk identifier: 0x6e65abc7
           Device Boot      Start         End      Blocks   Id  System
        /dev/sdb1            2048    41945087    20971520   8e  Linux LVM

    #######################################################################

    #创建逻辑卷:

        # pvcreate /dev/sdb1
var cpro_id = "u6885494";
推荐阅读
author-avatar
28划生12_928
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有