首页 > 代码库 > LNMP搭建时可能用到的各种安装参数总结

LNMP搭建时可能用到的各种安装参数总结

需要安装的依赖包

gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

 

mysql编译参数

 

-DCMAKE_INSTALL_PREFIX= 指向mysql安装目录

-DINSTALL_SBINDIR=sbin 指向可执行文件目录(prefix/sbin

-DMYSQL_DATADIR=/var/lib/mysql 指向mysql数据文件目录(/var/lib/mysql

-DSYSCONFDIR=/etc/mysql 指向mysql配置文件目录(/etc/mysql

-DINSTALL_PLUGINDIR=lib/mysql/plugin 指向插件目录(prefix/lib/mysql/plugin

-DINSTALL_MANDIR=share/man 指向man文档目录(prefix/share/man

-DINSTALL_SHAREDIR=share 指向aclocal/mysql.m4安装目录(prefix/share

-DINSTALL_LIBDIR=lib/mysql 指向对象代码库目录(prefix/lib/mysql

-DINSTALL_INCLUDEDIR=include/mysql 指向头文件目录(prefix/include/mysql

-DINSTALL_INFODIR=share/info 指向info文档存放目录(prefix/share/info

prefix官方推荐设为/usr

Storage Engine相关

类型csv,myisam,myisammrg,heap,innobase,archive,blackhole

若想启用某个引擎的支持:-DWITH_<ENGINE>_STORAGE_ENGINE=1

如:

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

若想禁用某个引擎的支持:-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1

如:

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1

-DWITHOUT_FEDERATED_STORAGE_ENGINE=1

-DWITHOUT_PARTITION_STORAGE_ENGINE=1

Library相关

-DWITH_READLINE=1 启用readline库支持(提供可编辑的命令行)

-DWITH_SSL=system 启用ssl库支持(安全套接层)

-DWITH_ZLIB=system 启用libz库支持(zibgzib相关)

-DWTIH_LIBWRAP=0 禁用libwrap库(实现了通用TCP包装的功能,为网络服务守护进程使用)

-DMYSQL_TCP_PORT=3306 指定TCP端口为3306

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 指定mysql.sock路径

-DENABLED_LOCAL_INFILE=1 启用本地数据导入支持

-DEXTRA_CHARSETS=all 启用额外的字符集类型(默认为all

-DDEFAULT_CHARSET=utf8 指定默认的字符集为utf8

-DDEFAULT_COLLATION=utf8_general_ci 设定默认排序规则(utf8_general_ci快速/utf8_unicode_ci准确)

-DWITH_EMBEDDED_SERVER=1 编译嵌入式服务器支持

-DMYSQL_USER=mysql 指定mysql用户(默认为mysql)

-DWITH_DEBUG=0 禁用debug(默认为禁用)

-DENABLE_PROFILING=0 禁用Profiling分析(默认为开启)

-DWITH_COMMENT=‘string‘ 一个关于编译环境的描述性注释

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \   #安装路径

-DMYSQL_DATADIR=/usr/local/mysql/data       \    #数据文件存放位置

-DSYSCONFDIR=/etc              \                                  #my.cnf路径

-DWITH_MYISAM_STORAGE_ENGINE=1    \       #支持MyIASM引擎

-DWITH_INNOBASE_STORAGE_ENGINE=1 \     #支持InnoDB引擎

-DWITH_MEMORY_STORAGE_ENGINE=1 \        #支持Memory引擎

-DWITH_READLINE=1                    \                         #快捷键功能(我没用过)

-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock      \   #连接数据库socket路径

-DMYSQL_TCP_PORT=3306                  \               #端口

-DENABLED_LOCAL_INFILE=1            \                #允许从本地导入数据

-DWITH_PARTITION_STORAGE_ENGINE=1  \   #安装支持数据库分区

-DEXTRA_CHARSETS=all                  \                   #安装所有的字符集

-DDEFAULT_CHARSET=utf8              \                   #默认字符

-DDEFAULT_COLLATION=utf8_general_ci

CMAKE_INSTALL_PREFIX:指定MySQL程序的安装目录,默认/usr/local/mysql

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

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

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

WITH_COMMENT:指定编译备注信息

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

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

SYSCONFDIR:初始化参数文件目录

MYSQL_DATADIR:数据文件目录

MYSQL_TCP_PORT:服务端口号,默认3306

MYSQL_UNIX_ADDRsocket文件路径,默认/tmp/mysql.sock

 

nginx编译

 

--prefix=<path> - Nginx安装路径。如果没有指定,默认为 /usr/local/nginx

--sbin-path=<path> - Nginx可执行文件安装路径。只能安装时指定,如果没有指定,默认为<prefix>/sbin/nginx

--conf-path=<path> - 在没有给定-c选项下默认的nginx.conf的路径。如果没有指定,默认为<prefix>/conf/nginx.conf

--pid-path=<path> - nginx.conf中没有指定pid指令的情况下,默认的nginx.pid的路径。如果没有指定,默认为 <prefix>/logs/nginx.pid

--lock-path=<path> - nginx.lock文件的路径。

--error-log-path=<path> - nginx.conf中没有指定error_log指令的情况下,默认的错误日志的路径。如果没有指定,默认为 <prefix>/logs/error.log

--http-log-path=<path> - nginx.conf中没有指定access_log指令的情况下,默认的访问日志的路径。如果没有指定,默认为 <prefix>/logs/access.log

--user=<user> - nginx.conf中没有指定user指令的情况下,默认的nginx使用的用户。如果没有指定,默认为 nobody

--group=<group> - nginx.conf中没有指定user指令的情况下,默认的nginx使用的组。如果没有指定,默认为 nobody

--builddir=DIR - 指定编译的目录

--with-rtsig_module - 启用 rtsig 模块

--with-select_module --without-select_module - Whether or not to enable the select module. This module is enabled by default if a more suitable method such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure.

//允许或不允许开启SELECT模式,如果 configure 没有找到更合适的模式,比如:kqueue(sun os),epoll (linux kenel 2.6+), rtsig(实时信号)或者/dev/poll(一种类似select的模式,底层实现与SELECT基本相 同,都是采用轮训方法) SELECT模式将是默认安装模式

--with-poll_module --without-poll_module - Whether or not to enable the poll module. This module is enabled by default if a more suitable method such as kqueue, epoll, rtsig or /dev/poll is not discovered by configure.

--with-http_ssl_module - Enable ngx_http_ssl_module. Enables SSL support and the ability to handle HTTPS requests. Requires OpenSSL. On Debian, this is libssl-dev.

//开启HTTP SSL模块,使NGINX可以支持HTTPS请求。这个模块需要已经安装了OPENSSL,在DEBIAN上是libssl

--with-http_realip_module - 启用 ngx_http_realip_module

--with-http_addition_module - 启用 ngx_http_addition_module

--with-http_sub_module - 启用 ngx_http_sub_module

--with-http_dav_module - 启用 ngx_http_dav_module

--with-http_flv_module - 启用 ngx_http_flv_module

--with-http_stub_status_module - 启用 "server status" 

--without-http_charset_module - 禁用 ngx_http_charset_module

--without-http_gzip_module - 禁用 ngx_http_gzip_module. 如果启用,需要 zlib 

--without-http_ssi_module - 禁用 ngx_http_ssi_module

--without-http_userid_module - 禁用 ngx_http_userid_module

--without-http_access_module - 禁用 ngx_http_access_module

--without-http_auth_basic_module - 禁用 ngx_http_auth_basic_module

--without-http_autoindex_module - 禁用 ngx_http_autoindex_module

--without-http_geo_module - 禁用 ngx_http_geo_module

--without-http_map_module - 禁用 ngx_http_map_module

--without-http_referer_module - 禁用 ngx_http_referer_module

--without-http_rewrite_module - 禁用 ngx_http_rewrite_module. 如果启用需要 PCRE 

--without-http_proxy_module - 禁用 ngx_http_proxy_module

--without-http_fastcgi_module - 禁用 ngx_http_fastcgi_module

--without-http_memcached_module - 禁用 ngx_http_memcached_module

--without-http_limit_zone_module - 禁用 ngx_http_limit_zone_module

--without-http_empty_gif_module - 禁用 ngx_http_empty_gif_module

--without-http_browser_module - 禁用 ngx_http_browser_module

--without-http_upstream_ip_hash_module - 禁用 ngx_http_upstream_ip_hash_module

--with-http_perl_module - 启用 ngx_http_perl_module

--with-perl_modules_path=PATH - 指定 perl 模块的路径

--with-perl=PATH - 指定 perl 执行文件的路径

--http-log-path=PATH - Set path to the http access log

--http-client-body-temp-path=PATH - Set path to the http client request body temporary files

--http-proxy-temp-path=PATH - Set path to the http proxy temporary files

--http-fastcgi-temp-path=PATH - Set path to the http fastcgi temporary files

--without-http - 禁用 HTTP server

--with-mail - 启用 IMAP4/POP3/SMTP 代理模块

--with-mail_ssl_module - 启用 ngx_mail_ssl_module

--with-cc=PATH - 指定 编译器的路径

--with-cpp=PATH - 指定 预处理器的路径

--with-cc-opt=OPTIONS - Additional parameters which will be added to the variable CFLAGS. With the use of the system library PCRE in FreeBSD, it is necessary to indicate --with-cc-opt="-I /usr/local/include". If we are using select() and it is necessary to increase the number of file descriptors, then this also can be assigned here: --with-cc-opt="-D FD_SETSIZE=2048".

--with-ld-opt=OPTIONS - Additional parameters passed to the linker. With the use of the system library PCRE in FreeBSD, it is necessary to indicate --with-ld-opt="-L /usr/local/lib".

--with-cpu-opt=CPU - 为特定的 CPU 编译,有效的值包括:pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64

--without-pcre - 禁止 PCRE 库的使用。同时也会禁止 HTTP rewrite 模块。在 "location" 配置指令中的正则表达式也需要 PCRE 

--with-pcre=DIR - 指定 PCRE 库的源代码的路径。

--with-pcre-opt=OPTIONS - Set additional options for PCRE building.

--with-md5=DIR - Set path to md5 library sources.

--with-md5-opt=OPTIONS - Set additional options for md5 building.

--with-md5-asm - Use md5 assembler sources.

--with-sha1=DIR - Set path to sha1 library sources.

--with-sha1-opt=OPTIONS - Set additional options for sha1 building.

--with-sha1-asm - Use sha1 assembler sources.

--with-zlib=DIR - Set path to zlib library sources.

--with-zlib-opt=OPTIONS - Set additional options for zlib building.

--with-zlib-asm=CPU - Use zlib assembler sources optimized for specified CPU, valid values are: pentium, pentiumpro

--with-openssl=DIR - Set path to OpenSSL library sources

--with-openssl-opt=OPTIONS - Set additional options for OpenSSL building

--with-debug - 启用调试日志

--add-module=PATH - Add in a third-party module found in directory PATH

 

 

php编译参数

-------------------------------------------

–prefix=/usr/local/php                      php 安装目录

–with-apxs2=/usr/local/apache/bin/apxs

–with-config-file-path=/usr/local/php/etc      指定php.ini位置

–with-mysql=/usr/local/mysql           mysql安装目录,对mysql的支持

–with-mysqli=/usr/local/mysql/bin/mysql_config    mysqli文件目录,优化支持

–enable-safe-mode                              打开安全模式

–enable-ftp                                 打开ftp的支持

–enable-zip                                 打开对zip的支持

–with-bz2                    打开对bz2文件的支持                        

–with-jpeg-dir                                 打开对jpeg图片的支持

–with-png-dir                                 打开对png图片的支持

–with-freetype-dir              打开对freetype字体库的支持

–without-iconv                关闭iconv函数,种字符集间的转换

–with-libxml-dir                 打开libxml2库的支持

–with-xmlrpc              打开xml-rpcc语言

–with-zlib-dir                                 打开zlib库的支持

–with-gd                                    打开gd库的支持

–enable-gd-native-ttf               支持TrueType字符串函数库

–with-curl                      打开curl浏览工具的支持

–with-curlwrappers                 运用curl工具打开url

–with-ttf                      打开freetype1.*的支持,可以不加了

–with-xsl            打开XSLT 文件支持,扩展了libxml2库 ,需要libxslt软件

–with-gettext                      打开gnu gettext 支持,编码库用到

–with-pear            打开pear命令的支持,php扩展用的

–enable-calendar             打开日历扩展功能

–enable-mbstring                  多字节,字符串的支持

–enable-bcmath                  打开图片大小调整,用到zabbix监控的时候用到了这个模块

–enable-sockets                  打开 sockets 支持

–enable-exif                      图片的元数据支持

–enable-magic-quotes               魔术引用的支持

–disable-rpath                     关闭额外的运行库文件

–disable-debug                  关闭调试模式

–with-mime-magic=/usr/share/file/magic.mime      魔术头文件位置

 

cgi方式安装才用的参数

–enable-fpm                     打上php-fpm 补丁后才有这个参数,cgi方式安装的启动程序

–enable-fastcgi                  支持fastcgi方式启动php

–enable-force-cgi-redirect             同上 ,帮助里没有解释

–with-ncurses                     支持ncurses 屏幕绘制以及基于文本终端的图形互动功能的动态库

–enable-pcntl           freeTDS需要用到的,可能是链接mssql 才用到mhashmcrypt算法的扩展

–with-mcrypt                     算法

–with-mhash                     算法

–with-gmp

–enable-inline-optimization

–with-openssl           openssl的支持,加密传输时用到的

–enable-dbase

–with-pcre-dir=/usr/local/bin/pcre-config    perl的正则库案安装位置

–disable-dmalloc

–with-gdbm                    dbagdbm支持

–enable-sigchild

–enable-sysvsem

–enable-sysvshm

–enable-zend-multibyte              支持zend的多字节

–enable-mbregex

–enable-wddx

–enable-shmop

–enable-soa

 

 


本文出自 “sleepcat” 博客,请务必保留此出处http://sw5720.blog.51cto.com/8812314/1530889