Linux(centOS)手动安装删除Apache+MySQL+PHP+Memcached原创无错版
===================
第一步:Apache安装
===================
下载 去 http://www.apache.org 自己找最新的 国内有很多镜像点例如人人和163
-------------------------------------------------
#wget http://labs.renren.com/apache-mirror/httpd/httpd-2.2.21.tar.gz
#tar zxvf httpd-2.2.21.tar.gz
#cd httpd-2.2.21
#./configure --prefix=/usr/local/apache2/ --enable-proxy --enable-ssl --enable-cgi --enable-rewrite --enable-so --enable-module=so
#make
#make install
说明:如果make不成功,那么是configure不成,例如你缺少ssl组件,可以去掉
--enable-ssl
----------
如果Make: command not found
看看是不是make没装
# rpm -qa|grep make
如果没有信息那么说明make没装
#yum install make 即可
-------------------
手动启动
# /usr/local/apache2/bin/apachectl start
重启
# /usr/local/apache2/bin/apachectl restart
--------------------------
YUM自动安装的启动
#service httpd restart
输入这个会提示出错 httpd未被被识别的服务
这个请见本博客另一篇介绍
-------------------------
这就说明安装成功了。
自己在浏览器输入:http://localhost/
这样就说明成功了!
------------------------------------------
增加权限和文件格式转换(不然apache会报没权限执行文件)
#chmod +x 文件
#dos2unix 文件
------------------------------------------
卸载apache
如果是源码安装
#rm -rf 你的apache安装路径
同样作用于其他
========================
YUM方式安装的,这样卸载:
#yum remove httpd
否则要用
#rpm -qa|grep httpd
一个个删除
# rpm -e ......
===================
第二步 Mysql安装
===================
第一种方法:使用yum自动安装
#yum -y install mysql-server
----------------------------------------
第二种:下载源码编译安装
#wget http://mysql.cdpa.nsysu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.57.tar.gz
#tar zxvf mysql-5.1.57.tar.gz
#cd mysql-5.1.57
#./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql --with-charset=gbk --bindir=/usr/local/bin --sbindir=/usr/local/sbin --with-plugins=innobase --with-partition
#make
#make install
#cd /usr/local/mysql
#mysql_install_db
#chown -R mysql:mysql *
#cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
#/etc/rc.d/mysql start (加入到/etc/rc.local 以便系统重启后自动启动mysql)
修改/etc/rc.local
说明:请修改mysql配置文件my.cnf中wait_timeout = 600(有些程序执行时间较长,mysql超时时间如果太短的话,容易发生mysql server has go away的错误)
注意事项:
安装完成后,需要拷贝一份my.cnf到ect目录下,使用support-files目录中的一个作为模板。在这个目录中有4个模板文件,是根据不同机器的内存定制的。
#cp support-files/my-medium.cnf /etc/my.cnf
===================
第三步 PHP安装
===================
去www.php.net找最新的版本
#wget http://cn2.php.net/get/php-5.3.8.tar.gz/from/this/mirror
#tar zxvf php-5.3.8.tar.gz
#cd php-5.3.8
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql-dir=/usr/local/mysql
如果失败 可能原因有各种各样
-------------------------------
如果提示:Cannot find MySQL header files under /date/mysql.
这个是缺少了 mysql-devel 安装包,用
yum -y install mysql-devel 即可解决!
#yum -y install mysql-devel
-------------------------------
如果提示:xml2-config not found. Please check your libxml2 installation.
需要安装libxml2
#yum install libxml2-devel
-------------------------------
如果提示:Try adding --with-zlib-dir=<DIR>试着添加一下 zlib的路径,如下
#./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql-dir=/usr/local/mysql --with-zlib-dir=/usr/local/zlib
------------------------------
完全成功才可以编译安装
#make
#make install
复制php.ini配置文件
参考此文http://blog.csdn.net/21aspnet/article/details/7001344
注意php新版本此文件名有变更
#cp php.ini-production /usr/local/php/lib/php.ini
------------------------------
在apache的配置文件httpd.conf
增加
AddType application/x-httpd-php .php
===================
第四步 Memcached安装
===================
可以参考http://timke.blog.163.com/blog/static/1015873062009111094715315/
说明必须先安装libevent
官网 http://libevent.org/ 找最新的版本
#wget https://github.com/downloads/libevent/libevent/libevent-2.0.16-stable.tar.gz
#tar xzvf libevent-2.0.16-stable.tar.gz
#cd libevent-2.0.16-stable
#./configure --prefix=/usr
#make
#make install
--------------------------------------------
第二步 安装memcached
# wget http://memcached.googlecode.com/files/memcached-1.4.9.tar.gz
#tar xzvf memcached-1.4.9.tar.gz
#cd memcached-1.4.9
#./configure --prefix=/usr/local/memcached --with-libevent=/usr
#make
#make install
启动
#/usr/local/memcached/bin/memcached -d -m 100 -uroot -l 0.0.0.0 -p 11211 -c 512 -P /usr/local/memcached/memcached.pid
查看详情
#ps aux|grep mem
输出pid
#cat /usr/local/memcached/memcached.pid
查看内存使用
#top -n 1 |grep Mem
-------------------------------------------
第三步 安装memcached的php扩展memcache
#wget http://pecl.php.net/get/memcache-2.2.6.tgz
#tar vxzf memcache-2.2.6.tgz
#cd memcache-2.2.6
#/usr/local/php/bin/phpize
此处出错可以参考 http://blog.csdn.net/21aspnet/article/details/7001182
#./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
或者
#./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir=/usr
#make
#make install
#vi /usr/local/php/lib/php.ini
php.ini添加
extension=memcache.so
<完>
-------------------
重启
# /usr/local/apache2/bin/apachectl restart
---------------
测试
- $memcache = new Memcache; //创建一个memcache对象
- $memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
- $memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
- $get_value = $memcache->get('key'); //从内存中取出key的值
- echo $get_value;
--------------
或者手动指定
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
- class MemCache {
- var $mem = null;
- private static $isLibLoad = false;
- //put your code here
- public function Com_MemCache(){
- if(!self::$isLibLoad){
- dl("memcache.so");
- self::$isLibLoad = true;
- }
- $this->mem = new Memcache();
- $this->mem->connect("127.0.0.1", 11211);
- }
- public function set($key,$value,$flag = null,$expire = 5000){
- $this->mem->set($key, $value, $flag, $expire);
- }
- public function get($key){
- return $this->mem->get($key);
- }
- function __destruct(){
- $this->mem->close();
- }
- }
调用
- $cache = new MemCache();
- $mm = $cache ->get("A");
- if($mm==null){
- $cache->set('A', date('Y-m-j').' '.date('G:i:s'),null,15);
- }
- echo $mm;
因为MemCache.php有 dl("memcache.so");所以在php.ini中不需要extension=memcache.so了,但是前一句extension_dir是要的。
Linux(centOS)手动安装删除Apache+MySQL+PHP+Memcached原创无错版的更多相关文章
- Linux CentOS下安装、配置mysql数据库
假设要在Linux上做j2ee开发.首先得搭建好j2ee的开发环境.包含了jdk.tomcat.eclipse的安装(这个在之前的一篇随笔中已经有具体解说了Linux学习之CentOS(七)--Cen ...
- 在linux下手动安装 apache, php, mysql--终极版
在linux下手动安装 apache, php, mysql: 参考: http://www.cnblogs.com/lufangtao/archive/2012/12/30/2839679.html ...
- CENTOS手动安装修复python ,YUM
CENTOS手动安装修复YUM
CENTOS手动安装修复YUM 2019年3月8日 杨宇 Comments 0 Comment 目录 [hide] 一.问题场景 二.手动修复 2.1 下载 rpm 包 2.2 安装 rpm 包 ...
- Linux CentOS下安装Tomcat9
本文讲解在Linux CentOS下安装Tomcat9,以及Web项目的部署发布. 环境:阿里云ECS 云服务器Linux CentOS 使用XShell客户端连接服务器,进行操作实践. 1.下载To ...
- 在 Linux 多节点安装配置 Apache Zookeeper 分布式集群
规划: 三台物理服务器就形成了(法定人数).对于高可用性集群,您可以使用高于3的任何奇数.例如,如果设置5台服务器,则集群可以处理两个故障节点等. 物理服务器需要开启的端口 2888 , 3888 和 ...
- 阿里云CentOs服务器 安装与配置mysql数据库
阿里云CentOs服务器 安装与配置mysql数据库 以上为Linux安装mysql数据库 Linux 安装mysql 数据库 一下为mysql 安装教程 Using username "r ...
- 在一台Linux服务器上安装多个MySQL实例(一)--使用mysqld_multi方式
(一)MySQL多实例概述 实例是进程与内存的一个概述,所谓MySQL多实例,就是在服务器上启动多个相同的MySQL进程,运行在不同的端口(如3306,3307,3308),通过不同的端口对外提供服务 ...
- NoSql1 在Linux(CentOS)上安装memcached及使用
前言: 今天是初五,生活基本要从过年的节奏中回归到正常的生活了,所以想想也该想想与工作有关的事情了.我之前在工作中会经常使用memcached和redis,但是自己一直没有时间系统的好好看 ...
- Linux(CentOs)下安装Phantomjs + Casperjs
Linux(CentOs)下安装Phantomjs + Casperjs 是参照cnMiss's Blog http://ju.outofmemory.cn/entry/70691的博客进行安装的 1 ...
随机推荐
- [Node.js] 4. Modules
4.2 Missing Exports Notice the two different files: high_five.js on the left side andapp.js on the r ...
- ES PS TS 流的区别
http://fengqing888.blog.163.com/blog/static/330114162012111805717584/ ES是原始码流,包含视频.音频或数据的连续码流.TS是传输流 ...
- input 禁止 复制 粘贴 剪切 操作
1.代码 <Input onCopy={(e)=>{ // 禁止拷贝 e.preventDefault(); }} onPaste={(e)=>{ // 禁止粘贴 e.prevent ...
- mmap 函数
头文件:#include <unistd.h> #include <sys/mman.h> 定义函数:void *mmap(void *start, size_t len ...
- 正则表达式总结 java 等
这个经常用的到,就来总结一下 #一下是JAVA中的正则表达式 在 JDK1.4 里有了自己的正则表达式 API 包,JAVA 程序员可以免去找第三方提供的正则表达式库的周折了,我们现在就马上来了解一下 ...
- centos时间调整的操作(转)
在我们使用CentOS系统的时候,也许时区经常会出现问题,有时候改完之后还是会出错,下面我们就来学习一种方法来改变这个状况. 如果没有安装,而你使用的是 CentOS系统 那使用命令 yum ins ...
- 磁盘io和吞吐量
磁盘的 IOPS,也就是在一秒内,磁盘进行多少次 I/O 读写. 磁盘的吞吐量,也就是每秒磁盘 I/O 的流量,即磁盘写入加上读出的数据的大小. IOPS 与吞吐量的关系每秒 I/O 吞吐量= IOP ...
- Windows Mobile自动更新
private static string m_CurrentPath; //取得作业平台 private static string Platform { get { return Environm ...
- NPM 模块收集
cross-env https://www.npmjs.com/package/cross-env 在package.json设置环境变量的时候,会有兼容性问题,如: { "scripts& ...
- python 日志的配置,python对日志封装成类,日志的调用
# python 日志的配置,python对日志封装成类,日志的调用 import logging # 使用logging模块: class CLog: # --------------------- ...