Lammp安装过程
- 创建mysql数据库的lvm环境
- 安装repo环境
- 安装开发环境包
#yum groupinstall "Server Platform Development"
- 开始编译:
- 编译过程中,可能会出现的问题:apr-util/apr/pcre没有安装,则安装对应的软件即可
- apr软件安装
- ./configure --prefix=/usr/local/apr && make && make install
- apr-util软件安装
- ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install
- pcre直接通过yum install pcre-devel安装
- httpd启动和配置文件
环境变量修改
export PATH=/usr/local/apache/bin:$PATH
#vim /etc/rc.d/init.d/httpd
apachectl=/usr/local/apache/bin/apachectl
修改配置文件,启用最基本的httpd,并测试
#vim /etc/httpd/httpd.conf
Directoryindex index.html
- 关于php-fcgi的修改(若没有启用php-fcgi,则不需此步)[需要配合php编译中的php-fcgi参数]
- 修改httpd配置文件,启动httpd代理模块和fcgi模块
- 添加文件格式
- 添加php支持页
- 修改虚拟主机
- 示例:
<VirtualHost *:80>
DocumentRoot "/www/magedu.com"
ServerName magedu.com
ServerAlias www.magedu.com
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/www/magedu.com/$1
<Directory "/www/magedu.com">
Options none
AllowOverride none
Require all granted
</Directory>
</VirtualHost>
- 解压,赋予权限:
#tar xf mysql-***.tar.gz
- 复制、修改配置文件
datadir = /mydata/data
basedir = /usr/local/mysql
#修改线程(修改为物理cpu核心的2倍)
thread_concurrency = 2
- 复制脚本文件
- 库/头/环境变量设置#ln -sv /usr/local/mysql/include /usr/include 有时候不可以,则用下面命令
ln -sv /usr/local/mysql/include/* /usr/local/include [加载php的pdo-mysql的时候需要此步骤]
#vim /etc/ld.so.conf.d/mysql.conf
/usr/local/mysql/lib
#ldconfig -v | grep mysql
#vim /etc/profile.d/mysql.sh
export PATH=/usr/local/mysql/bin:$PATH
#. /etc/profile.d/mysql.sh
- 初始化msyql数据库
#./mysql_install_db --user=mysql --datadir=/mydata/data --basedir=/usr/local/mysql
报错:/usr/local/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决:安装libaio-devel和libaio包
#chown -R mysql:mysql /mydata/data
#chmod -R 700 /mydata/data
- 授权httpd可以远程登录mysql(mysql单独分离则需此步骤)[远程授权,还需要配合php中的PDO-mysql模块]
#chown -R mysql:mysql /mydata/data/dbname
#chmod -R 700 /mydata/data/dbname
#mysqladmin -uroot password 123456
#mysql -uroot -p123456
>GRANT ALL PRIVILEGES ON dbname.* TO 'admin'@'http_ip' IDENTIFIED BY 'password' [with grant option];
>FLUSH PRIVILEGES;
- 安装libevent
memcached依赖于libevent API,因此要事先安装之,项目主页:http://libevent.org/,读者可自行选择需要的版本下载。本文采用的是目前最新版本的源码包libevent-2.0.21-stable.tar.gz。安装过程:
# cd libevent-2.0.21
# ./configure --prefix=/usr/local/libevent
# make && make install
# echo "/usr/local/libevent/lib" > /etc/ld.so.conf.d/libevent.conf
# ldconfig -v | grep libevent
- 安装配置memcached
# cd memcached-1.4.15
# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
# make && make install
启动脚本创建及修改
#vim /etc/profile.d/memcached.sh 创建环境变量
export PATH=/usr/local/memcached/bin:$PATH
#cp scripts/memcached.sysv /etc/rc.d/init.d/memcached
#chmod +x /etc/rc.d/init.d/memcached
#vim /etc/rc.d/init.d/memcached 内含启动时所用账户/内存大小
添加. /etc/profile.d/memcached.sh 添加环境变量 --默认启动脚本会去/bin下找memcached,故需在启动脚本中加入
修改USER=root 修改启动账户
#mkdir /var/run/memcached 创建pid路径
- 启动memcached
#service memcached start
- 测试
# telnet 127.0.0.1 11211
add命令格式(添加一个缓存):add keyname flag timeout datasize --flag标示号 timeout存储时间s datasize字段长度
如:添加
add mykey 0 10 12 --add添加
Hello world! --输入12字节的存储信息
如:获取
VALUE mykey 0 12
Hello world!
END
- 进入安装目录,并编译安装#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts --enable-fpm --enable-fpm --with-http_stub_status_module
- --with-mcrypt 加密工具(libmcrypt,mhash),phpmyadmin需要
- --with-apxs2 apache钩子,意思就是将php改成模块化
- --enable-maintainer-zts 表明支持apache_mpm的worker和event(若apache是prefork,则不需添加)
- --enable-fpm 使php支持fastcgi模式(若php不工作在fcgi模式下,则不需添加)
- --with-config-file-scan-dir=/etc/php.d 表明php在读取配置文件的时候,同时读取php.d下的*.ini额外配置文件,一般模块配置文件存放此处
- 复制配置文件
#mkdir /etc/php.d
- 关于php-fcgi的修改(若没有启用php-fcgi,则不需此步)[需要配合httpd服务,且需要修改httpd配置]:
- 复制php源码目录中的启动脚本
#chkconfig --add php-fpm
#chkconfig php-fpm on
#chmod u+x /etc/rc.d/init.d/php-fpm

首行加入[ -f /etc/rc.d/init.d/function ] && . /etc/rc.d/init.d/function
在case $1 in
start)
daemon ***
- 复制配置文件
pm.start_servers = 5 启动时创建的工作线程
pm.min_spare_servers = 2 空闲时保留的最小工作线程
pm.max_spare_servers = 8 空闲时保留的最大工作线程
- 关于php加速器xcache(可不安装,建议安装)
- 进入xcache安装包,执行phpize程序,以来识别xcache
- 编译
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/
- 配置文件
- 测试
- 关于php与远程mysql相连(若http与mysql同一台设备,则无需此步)[需要配合mysql远程授权]
- 进入pdo_mysql安装包,执行phpize程序,以来识别pdo
- 编译
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/
- 配置文件
vim /etc/php.d/pdo_mysql.ini
extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/pdo_mysql.so
- service php-fpm restart
- 关于php与memcached相连(原因在于memcached属于半客户端、半服务端,所用如果php不支持,是无法缓存php程序的)[需要配合memcached服务器]
- 编译安装模块memcache(是memcache而不是memcached)
#cd memcache/
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20100525/
- 配置文件
vim /etc/php.d/memcache.ini
extension = /usr/local/php/lib/php/extensions/no-debug-zts-20100525/memcache.so
- service php-fpm restart
- 测试
创建php测试页
<?php
$mem = new Memcache;$mem->connect("127.0.0.1", 11211) or die("Could not connect");$version = $mem->getVersion();echo "Server's version: ".$version."<br/>\n";$mem->set('hellokey', 'Hello World', 0, 600) or die("Failed to save data at the memcached server");echo "Store data in the cache (data will expire in 600 seconds)<br/>\n";$get_result = $mem->get('hellokey');echo "$get_result is from memcached server.";
?>
Store data in the cache (data will expire in 600 seconds)Hello World is from memcached server.
Lammp安装过程的更多相关文章
- webstorm下载&&安装过程&&打开项目
一.webstorm下载 WebStorm 是jetbrains公司旗下一款JavaScript 开发工具.被广大中国JS开发者誉为"Web前端开发神器"."最强大的HT ...
- vagrant 1.8.6 安装过程及总结遇到的坑
下面先总结遇到的问题,这些问题如果你也遇到,可能需要搜索很多次才能找到原因. 如果想看安装过程,可以先直接跳到后面第二部分部分. 1 问题汇总: 1.1 vagrant版本过高问题. vagrant ...
- 安装过程错误[INS-30131]
问题:Oracle Database 安装过程错误[INS-30131] 原因:安装用户没有对临时文件夹的读写权限 解决方案: 1.以管理员身份运行cmd.exe 2.输入命令(需启动Se ...
- TortoiseGIT的安装过程详解
TortoiseGIT简介 TortoiseGIT 是Git版本控制系统的一个免费开源客户端,它是git版本控制的 Windows 扩展.可以使你避免使用枯燥而且不方便的命令行.它完全嵌入 Windo ...
- RabbitMQ 集群安装过程详解
一.安装Erlang 1.rabbitMQ是基于erlang的,所以首先必须配置erlang环境. 从erlang官网下载 otp 18.3.下载链接:http://erlang.org/downlo ...
- JAVA安装过程中出现的“javac不是内部或外部指令”的解决方法
近来重新安装了JAVA,安装过程中出现问题,网上找到解决办法,汇总发布. 解决流程: 1.确定自己的环境变量设置没问题,没有出现遗漏 : . 等情况 (具体环境变量设置百度) 2.环境变量设置后 ,d ...
- LNMP安装过程
LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora.Debian/Ubuntu/Raspbian/Deepin VPS或独 ...
- hbase 1.1.7在centor6.5安装过程
1.自己安装的最新版一直没成功,换成了1.1.7稳定版的.中间遇到的问题记录下 1) jdk 用的1.7版本的,安装过程省略. 2)下载hbase zip包:https://mirrors.tuna ...
- 2016最新cocoapods安装流程,安装过程中遇到的问题及解决方法
现在的cocoapods与之前比较.有很多不一样的地方.自己试了一试,终于搞定.现在大概纪录一下. 1.首先查看ruby是否是最新版的. ruby是通过rvm安装的所以需要先安装rvm后查看ruby是 ...
随机推荐
- python - num1 -初识python
一.了解python python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...
- NAS4Free 安装配置(四)配置硬盘
配置硬盘 磁盘管理 进入磁盘管理界面:Disks|Management 磁盘管理 点击Import disks导入磁盘 把第4个4G的DOM盘删掉,因为我们不在这个盘上存放数据 点Apply chan ...
- Java中的日期处理类
在Java中可以使用Date类和Calendar类来处理日期 但是Date类很多方法都过时了,推荐使用Canlendar类来处理日期,并对日期的格式化做了介绍.下面的部分将会逐一介绍 Date类 Ja ...
- Tuning Radio Resource in an Overlay Cognitive Radio Network for TCP: Greed Isn’t Good
好吧,这是09年七月发布在IEEE Communications Magazine的一篇文章. 核心二个词:overlay cognitive radio network,tcp 讲的是,在认知无线网 ...
- windows下删除Linux
在Windows下删除Linux系统的方法(附修复MBR的工具下载) 我的电脑安装了双系统,Windows和Linux,不过由于Linux在最近一段时间内不会使用,所以我打算删除Linux. 删除 ...
- 【转】一个从32位机器移植到64位机器时的c问题
原文网址:http://www.jiancool.com/article/96402954887/ 最近工作中遇到了一个讨厌的问题,在32位机器上运行的好好的,但是在64位机器上,出现了诡异的 Seg ...
- Word Break II 解答
Question Given a string s and a dictionary of words dict, add spaces in s to construct a sentence wh ...
- Spring框架下的单元测试方法
介绍在Spring的框架下,做单元测试的两种办法. 一.使用spring中对Junit框架的整合功能 除了junit4和spring的jar包,还需要spring-test.jar.引入如下依赖: & ...
- iOS面试知识点
1 iOS基础 1.1 父类实现深拷贝时,子类如何实现深度拷贝.父类没有实现深拷贝时,子类如何实现深度拷贝. 深拷贝同浅拷贝的区别:浅拷贝是指针拷贝,对一个对象进行浅拷贝,相当于对指向对象的指针进行复 ...
- c++之 变量
变量的基本操作 变量就是一个可以变化的量,变量由变量类型.变量名.初始值(可选)组成,例如: int abc = 10; 变量类型:int 变量名:abc 初始值:10 // 该值为可选项,在创建变量 ...