源码编译安装lnmp环境
首先说明源码安装的好处 速度快,可自定义路径主要有三步:
1.配置
进入源码安装包 ./configure --prefix=/uer/local/nginx 可指定参数--prefix为安装路径
2.编译
相当于rpm包 make
3.安装 make install如果安装出错,先清楚一下
make clean,然后重新配置编译安装
1.安装可能需要的依赖环境,
yum
-y install libxml2-devel gd-devel libmcrypt-devel libcurl-devel openssl-devel
bison zlib-devel wget ncurses-devel gcc gcc-c++ cmake;wget
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz编译安装3.安装nginxwget
nginx官网链接地址解压tar
-zxvf nginx进入nginx解析./configure
--prefix=/usr/local/nginx 安装路径编译安装make
&& make install建立软链接,可在任意地方启动,类似快捷方式ln
-s /usr/local/nginx/sbin/nginx(nginx安装路径) /sbin重启nginx无缝重启nginx
-s reload 或者先杀死进程 killall nginx 再nignx
1.安装phpwget
php官网链接地址2.解压phptar
-zxvf php3.配置./configure
--prefix=/usr/local/php --with-config-file-path=/usr/local/php \
--with-mysql=/usr/local/mysql \ 没有安装mysql 可先不写
--with-mysqli
\
--with-pdo-mysql \
--with-gd \
--with-freetype-dir \
--with-curl
\
--with-xmlrpc \
--with-curl \
--with-iconv=/usr/local/libiconv-1.14
\
--with-zlib \
--with-jpeg-dir \
--with-png-dir \
--with-openssl
\
--with-libxml-dir \
--with-mcrypt=/usr/local/libmcrypt-2.5.7
\
\
\
--enable-fpm \ 这个参数必须写
--enable-static
\
--disable-inline-optimization \
--enable-sockets \
--enable-zip
\
--enable-calendar \
--enable-bcmath \
--enable-soap \
--enable-ftp
\
--enable-mbstring \
--enable-shared \
--disable-fileinfo ;4.编译安装make
&& make install5.配置php信息
php.ini默认位置为lib目录cp
php.ini-production(development) /usr/local/php/lib/php.ini6.配置php
配置文件cp
etc/php-fpm.conf.default etc/php-fpm.conf建立软链接ln
-s /usr/local/php/bin/php-fpm /sbin启动php
killall php-fpm
相关文件或者目录 phpize php-config1.下载文件wget
pecl.php.net链接地址2.解压(此时目录里面应该没有configure文件)tar
-zxvf redis3.php扩展支持,进入目录,输入phpize,运行这个命令(如果不存在输入绝对路径/usr/local/php/bin/phpize)phpize 或者
/usr/local/php/bin/phpize(原因)phpize扩展安装,源包需要有config.m4这个配置文件,当前扩展的源码包没有,所以需要运行phpize再进行安装4.配置,此时发现目录下已经存在configure文件,如果已经配置过环境变量可不写参数./configure
--with-php-config=/usr/local/php/bin/php-config5.编译安装make
&& make install6.配置php.ini,加入扩展extension=redis.so7.重启phpkillall
php-fpm php-fpm8.直接安装pecl install xxx
php设置环境变量1.export
PATH=$PATH:/usr/local/php/bin 临时环境变量,重启后失效2.vi
/.bash_profile 编辑文件,加入PATH把/usr/local/php/bin
加入到PATH=$PATHHOME/bin 这行后面
1.检查是否安装过rpm
-qa | grep mysql如果有通过以下命令卸载rpm
-e mysql //删除普通模式 rpm -e --nodeps mysql 强力删除2.安装mysql
需要注意的是mysql5.6以后是通过cmake来编译的3.下载安装包4.解压tar
-zxvf mysql-5.6.26.tar.gz说明:如果目录中没有cmake文件,说明已经编译过了,可以直接使用。5.编译cmake
\
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
\
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc
\
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1
\
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1
\
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306
\
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1
\
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8
\
-DDEFAULT_COLLATION=utf8_general_cimysql参数详解-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
//mysql安装路径
-DINSTALL_DATADIR=/usr/local/mysql/data
//数据库存放目录
-DSYSCONFDIR=/etc
//配置文件路径
-DWITH_MYISAM_STORAGE_ENGINE=1 \
//启用myisam引擎支持
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
//启用innodb引擎支持
-DWITH_MEMORY_STORAGE_ENGINE=1 \
//启用memory引擎支持
-DWITH_PARTITION_STORAGE_ENGINE=1 \
//启用partition引擎支持
-DWITH_READLINE=1
\ //启用readline库支持(提供可编辑的命令行)
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock
\ //指定mysql.sock路径
-DMYSQL_TCP_PORT=3306 \
//默认端口号
-DDEFAULT_CHARSET=utf8
//使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci
//校验字符
-DEXTRA_CHARSETS=all
//安装所有扩展字符集
-DENABLED_LOCAL_INFILE=1
//允许从本地导入数据注意事项:重新编译时,需要清除旧的对象文件和缓存信息make
cleanrm
-f CMakeCache.txtrm
-rf /etc/my.cnf6.解压安装make
&& make install 或者 make -j 2 && make install-j
用来指定CPU核心数,可加快编译速度7.设置权限使用下面的命令查看是否有mysqly用户和用户组cat
/etc/passwd 查看用户列表cat
/etc/group 查看用户组列表如果没有创建useradd
-g mysql mysql 创建用户组为mysql的用户mysqlgroup
mysql 创建用户组mysql修改/usr/local/mysql权限chown
-R mysql:mysql /usr/local/mysql8.初始化配置cd
/usr/local/mysql进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表scripts/mysql_install_db
--basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql说明:在CentOS
6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,因为在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。9.设置开机自启cp
support-files/mysql.server /etc/init.d/mysqlchkconfig
mysql on启动mysqlservice
mysql start10.配置用户,设置之前先设置PATH,否则无法直接调用mysql,修改
/etc/profile文件vi
/etc/profile在末尾添加PATH=/usr/local/mysql/bin:$PATH
export
PATH退出,运行下面的命令,让配置立即生效source
/etc/peofile11.进入mysql
默认mysql用户为root,密码为空mysql
-uroot修改密码SET
PASSWORD = PASSWORD('123456');设置用户远程访问12.配置防火墙
或者直接关闭防火墙vi
/etc/sysconfig/iptables添加端口号-A
INPUT -m state --state NEW -m tcp -p -dport 3306 -j ACCEPT退出重启防火墙service
iptables restart补充说明:CentOS
7中默认使用Firewalld做防火墙,所以修改iptables后,在重启系统后,根本不管用。Firewalld中添加端口方法如下:firewall-cmd
--zone=public --add-port=3306/tcp --permanentfirewall-cmd
--reloadservice
mysql start --启动MySQL
源码编译安装lnmp环境的更多相关文章
- 源码编译安装LNMP环境及配置基于域名访问的多虚拟主机
实验环境及软件版本: CentOS版本: 6.6(2.6.32.-504.el6.x86_64) nginx版本: nginx-1.6.2 mysql版本: Mysql-5.6.23 php版本: ...
- centos6源码编译安装lnmp环境
操作系统 版本 64位 CentOS-6.6 10.0.0.20 安装环境所需依赖包 yum -y install gcc automake autoconf libtool make gcc- ...
- 源码编译安装lnmp环境(nginx-1.14.2 + mysql-5.6.43 + php-5.6.30 )------踩了无数坑,重装了十几次服务器才会的,不容易啊!
和LAMP不同的是,LNMP中的N指的是Nginx(类似于Apache的一种web服务软件),并且php是作为一个独立服务存在的,这个服务叫做php-fpm,Nginx直接处理静态请求,动态请求会转发 ...
- WordPress安装篇(5):源码编译安装LNMP并部署WordPress
与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...
- 源码编译搭建LNMP环境
LNMP源码编译 1.LNMP介绍 LNMP=Linux Nginx Mysql PHP Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器.Ng ...
- 源码编译安装LAMP环境及配置基于域名访问的多虚拟主机
实验环境及软件版本: CentOS版本: 6.6(2.6.32.-504.el6.x86_64) apache版本: apache2.2.27 mysql版本: Mysql-5.6.23 php版本 ...
- 年终福利,PHP7+Apache2.4+MySQL5.6 源码编译安装,环境配置,搭建你自己的LAMP环境
PHP7 都出来了,你还在玩PHP5吗? MySQL5.6 早都出来了,你还在玩MySql5.2吗? Apache2.4 早都出来了,你还在玩Apache2.2吗? 笔者不才,愿意亲自搭建环境,供搭建 ...
- centos7源码编译安装LNMP+ZABBIX4.0LTS(1)——nginx
环境:192.168.117.132--zabbix server192.168.117.133--zabbix proxy 安装路径为/zabbix 安装nginx 1.安装包下载http://ng ...
- 源码编译安装 LNMP及论坛
一.安装Nginx服务 systemctl stop firewalld systemctl disable firewalld setenforce 0 1.安装依赖包 yum -y install ...
随机推荐
- CuratorBarrier
一.DistributedDoubleBarrier 同时开始,同时结束 package bjsxt.curator.barrier; import java.util.Random; import ...
- f5 主备模式切换
f5 主备模式 主机down自动切换到备 原主机重新启动,自动切换到原主机
- MAC shell ps 命令详解(转)
ps命令为我们提供了一次性的查看进程结果,它所提供的查看结果不是动态连续的:如果想对进程时间监控,应该用top工具 Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当 ...
- 新建一个项目,如何使用abp用户登录系统
1.首先参考Framework.Web里的packages.config,把相关的包都安装好. 2.App_Start文件夹下的xxxModule.cs和Startup.cs拷过来,修改下命名空间. ...
- ORACLE数据库测试数据插入速度[z]
一,没有优化的速度:Executed in 69.436 seconds drop table t purge;create table t(x int);/*清空共享池,注意在生产环境中千万不能做这 ...
- java【基础】正则表达式
1 字符串判断 java的正则使用的是Pattern以及Matcher来配合使用的. 如果只是用来判断输入的字符串是否符合格式,推荐使用Matcher的matches方法. public static ...
- TensorFlow笔记之常见七个参数
对TensorFlow深度学习中常见参数的总结分析 神经网络中常见的参数有:初始学习率.学习率衰减率.隐藏层节点数量.迭代轮数.正则化系数.滑动平均衰减率.批训练数量七个参数. 对这七个参数,大部分情 ...
- python之全局变量和局部变量
一.定义 1.全局变量 定义在函数外部一级代码的变量,叫全局变量,全局能用. 2.局部变量 定义在函数内的变量,只能在局部生效 二.用法 1.在函数内部可以引用全局变量,如果全局和局部都有一个变量na ...
- Json 简记
JSON : JavaScript Object Notation ---- JavaScript 对象表示语法 Json 比 XML 小,比 xml 快 ==================== ...
- java web+模板
这次测试需要在java web的基础上套入模板,在测试的过程中我遇到了许多问题,现在我可以使用模板来美化网页的许多格式.但是模板的许多代码我还是看不懂,其中有jquery的许多代码.在今后我会学习相关 ...