安装编译数据库源码

来源:互联网 发布:福州爆米花网络 编辑:程序博客网 时间:2024/06/06 07:05

安装编译数据库源码

1、 安装关于编译数据库的工具

1) 安装cmake

a) 获得cmake的源码

wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

b) 解压源码文件

tar zxvf cmake-2.8.5.tar.gz

cd cmake-2.8.5

c) 生成Makfile文件

./configure

d) 编译安装cmake

make && make install

2、 安装数据库

1) 获得数据库MySQL源码

wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.15.tar.gz (当然还是推荐去官网下载最新版)

2) 解压源码文件

tar zxvf mysql-5.5.15.tar.gz

cd mysql-5.5.15

3) 使用cmake生成Makefile文件

a) cmake图形界面配置

键入命令:

ccmake .

 

CCMAKE使用说明:

i. 方向键:选择配置选项

ii. 回车键:编辑配置选项

iii. C键:编辑ccmake

iv. H键:弹出帮助对话框

v. T键:开启或关闭高级配置模式

vi. G键:生成Makefile并退出

vii. Q键:直接退出

 

CCMAKE部分配置信息说明

i. CMAKE_C_COMPILER:C编译器,默认为/usr/lib/ccache/gcc(更改时需要填写绝对路径)

ii. CMAKE_CXX_COMPILER:C++编译器,默认为/usr/lib/ccache/c++(更改时需要填写绝对路径)

iii. CMAKE_LINKER:链接器,默认为/usr/bin/ld(更改时需要填写绝对路径)

iv. CMAKE_NM:列出目标文件的符号清单

v. CMAKE_OBJCOPY:拷贝一个目标文件的内容到另一个目标文件中

vi. CMAKE_OBJDUMP:查看目标文件或者可执行的目标文件的构成的GCC工具

vii. CMAKE_RANLIB:对静态库的符号索引表进行更新

viii. CMAKE_AR:创建静态库

ix. CMAKE_STRIP:减少目标文件的大小。strip 命令从目标文件中有选择地除去行号信息、重定位信息、调试段、typchk 段、注释段、文件头以及所有或部分符号表。一旦您使用该命令,则很难调试文件的符号;因此,通常应该只在已经调试和测试过的生成模块上使用 strip 命令。使用 strip 命令减少对象文件所需的存储量开销。

x. CMAKE_INSTALL_PREFIX:指定MySQL的安装目录,默认为/usr/local/mysql

xi. DEFAULT_CHARSET:指定服务器默认字符集,默认latin1

xii. DEFAULT_COLLATION:指定服务器默认的校对规则,默认latin1_general_ci

xiii. ENABLED_LOCAL_INFILE:指定是否允许本地执行LOAD DATA INFILE,默认OFF

xiv. WITH_COMMENT:指定编译备注信息

xv. WITH_xxx_STORAGE_ENGINE:指定静态编译到mysql的存储引擎,MyISAM,INNOBASE,ARCHIVE以及BLACKHOLE四种引擎默认即被编译至服务器,不需要特别指定。

xvi. WITHOUT_xxx_STORAGE_ENGINE:指定不编译的存储引擎

xvii. SYSCONFDIR:配置文件所在目录,默认/etc

xviii. MYSQL_DATADIR:数据文件目录

xix. MYSQL_TCP_PORT:服务端口号,默认3306

xx. MYSQL_UNIX_ADDR:socket文件路径,默认/tmp/mysql.sock

xxi. 待续。。。。。。(求众高手补充下)

b) cmake命令行配置

CMAKE参数简介

i. -D<type>=<value>: 创建一个CMake的缓存条目。当cmake第一次运行于一个空的构建数时,它会创建一个CMakeCache.txt文件,并且使用可定制的工程设置来填充这个文件。这个选项可以用来指定优先级高于工程的默认值的工程设置值。这个参数可以被重复多次,用来填充所需要数量的缓存条目(cache entries)。

ii. 详见<cmake手册讲解>

 

CMAKE编译命令

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

#安装目录

-DMYSQL_DATADIR=/usr/local/mysql/data \

#数据库存放目录

-DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \

#Unix socket 文件路径

-DWITH_MYISAM_STORAGE_ENGINE=1 \

#安装 myisam 存储引擎

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

#安装 innodb 存储引擎

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

#安装 archive 存储引擎

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

#安装 blackhole 存储引擎

-DWITH_PARTITION_STORAGE_ENGINE=1 \

#安装数据库分区

-DENABLED_LOCAL_INFILE=1 \

#允许从本地导入数据

-DWITH_READLINE=1 \

#快捷键功能

-DWITH_SSL=yes \

#支持 SSL

-DDEFAULT_CHARSET=utf8 \

#使用 utf8 字符

-DDEFAULT_COLLATION=utf8_general_ci \

#校验字符

-DEXTRA_CHARSETS=all \

#安装所有扩展字符集

-DMYSQL_TCP_PORT=3306 \

#MySQL 监听端口