CentOS 5.5(X64)下编译安装LAMP平台

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:
CentOS 5.5(X64)下编译安装LAMP平台

软件版本都是最新稳定版本:apache 2.2.19 mysql 5.5.14 php 5.3.6
软件源代码包存放位置                /home/baison/src
源码包编译安装位置(prefix)        /usr/local/webserver
脚本以及维护程序存放位置        /home/baison/script

1、移除系统自带的rpm包的http mysql php
yum remove httpd mysql mysql-server php php-cli php-common php-devel php-gd  -y
 
2  安装必备的开发包
yum -y install ntp vim-enhanced gcc gcc-c++ flex bison autoconf automake bzip2-devel \
ncurses-devel zlib-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel libXpm-devel \
gettext-devel  pam-devel libtool libtool-ltdl openssl openssl-devel fontconfig-devel \
libxml2-devel curl-devel  libicu libicu-devel libmcrypt libmcrypt-devel libmhash libmhash-devel 
 
sudo权限配置 ,为了系统的安装生产环境下一般为普通用户配置 sudo权限,进行系统管理
#useradd baison   //创建baison用户
#passwd baison   //为baison用户设置密码
#rpm -q sudo    //确认软件包安装
#visudo        //在配置文件最后一行添加下面一行,授予baison用户具有管理员权限
 
baison   ALL=(ALL) ALL 
 
保存退出
我们一般登录系统进行维护的时候不适用root,防止权限过大误操作造成系统数据丢失,所以我们一般使用普通用户登录系统,然后需要root权限加上sudo就会有root权限
#su –   baison  //切换baison用户进行编译安装
cd /home/baison
mkdir src script   //创建二个目录分别放源码包和脚本
mkdir /usr/local/webserver //软件安装位置
 
4 同步系统时间:
#sudo vim /etc/ntp.conf  // 添加下面三行内容(19行下面添加)
 
server 3.cn.pool.ntp.org
server 3.asia.pool.ntp.org
server 0.asia.pool.ntp.org
 
#sudo /sbin/service ntpd stop
#sudo /usr/sbin/ntpdate  cn.pool.ntp.org   //更新时间
#sudo /sbin/service ntpd start
sudo /sbin/chkconfig ntpd on
 
5 Install mysql编译安装mysql
 编译环境前提(mysql 5.5.x 不再用 configure,而用cmake)
#cd /home/baison/src
wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
 #tar xvf  cmake-2.8.4.tar.gz
 # cd cmake-2.8.4
 # ./configure 
sudo make
sudo make install
 
cd /home/baison/src
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.14.tar.gz/from/http://mysql.stu.edu.tw/
 # tar zxvf mysql-5.5.14.tar.gz
 # cd mysql-5.5.14
 # cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \
         -DMYSQL_DATADIR=/data/mysql/data \
         -DWITH_MYISAM_STORAGE_ENGINE=1 \
         -DWITH_INNOBASE_STORAGE_ENGINE=1 \
         -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
         -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
         -DENABLED_LOCAL_INFILE=1 \
         -DDEFAULT_CHARSET=utf8 \
         -DDEFAULT_COLLATION=utf8_general_ci \
         -DEXTRA_CHARSETS=all \
         -DMYSQL_TCP_PORT=3306 
         
# sudo make 
# sudo make install
 
mysql 配置
 #userdel -r mysql
 # sudo groupadd -g 3306 mysql
 # sudo useradd -u 3306 -g mysql -M -s /sbin/nologin mysql
 #sudo  mkdir -p /data/mysql/data
 # sudo mkdir -p /data/mysql/log
 # sudo chown -R mysql:mysql /data/mysql
 # sudo chmod -R 755 /data/mysql
 # sudo cp support-files/my-medium.cnf /etc/my.cnf
 #sudo /usr/local/webserver/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/webserver/mysql --datadir=/data/mysql/data &   //初始化数据库
 # sudo cp support-files/mysql.server /etc/init.d/mysqld
 # chmod +x /etc/init.d/mysqld
 # sudo /sbin/chkconfig --add mysqld
 # sudo /sbin/chkconfig mysqld on
 #sudo /sbin/service  mysqld start
 # netstat -tnlp |grep 3306
 
# cd /usr/local/bin //进入用户的默认搜索路径下建立mysql命令的软连接,可以直接执行mysql命令
 # sudo ln -s /usr/local/webserver/mysql/bin/mysql mysql
 # sudo ln -s /usr/local/webserver/mysql/bin/mysqldump mysqldump
 # sudo ln -s /usr/local/webserver/mysql/bin/mysqladmin  mysqladmin
 
 # mysqladmin -u root -p password '123456'  //设置数据库密码
 # mysql -u root -p
 mysql> flush privileges;
 
sudo vim /etc/my.cnf  //Mysql 优化,在[mysqld]配置参数下面添加下面几行(大概37行下面) ,根据服务器不同配置进行不同的设置
max_allowed_packet = 500M  //先找到这行内容,修改成500
innodb_file_per_table
log-bin-trust-function-creators=1
skip-name-resolv //禁用DNS解析
sync-binlog=1
lower_case_table_names=1
max_connections = 1500 (默认100)
log-error=/data/mysql/log/mysql.err.log  //指定错误日志位置
max_heap_table_size = 256M
join_buffer_size = 128M
thread_cache_size = 1200     //线程缓存
thread_concurrency = 4  //设置成cpu数x2,只有一个设置2
thread_stack = 256K  
query_cache_type = 1   //指定是否使用查询缓冲,可以设置为0、1、2,该变量是SESSION级的变量
query_cache_size = 512M   //查询缓冲大小
query_cache_limit = 4M   //单个查询缓冲大小。默认1M
query_cache_min_res_unit = 4k    //指定分配缓冲区空间的最小单位,缺省为4K        
tmp_table_size = 256M       
myisam_sort_buffer_size = 64M
back_log = 1024 //设定缓存队列数,节省连接开销
long_query_time = 3  
open_files_limit    = 10240
interactive_timeout = 120
wait_timeout = 120
external-locking = FALSE //禁用文件系统外部锁
table_cache = 1024 //高速缓存大小,4G内存设置为2048
修改配置文件里下面的参数,去掉前面的#
innodb_buffer_pool_size = 2048M (默认16M,可以为系统内存50%~70%)
innodb_additional_mem_pool_size = 256M (默认2M)
innodb_log_file_size = 512M    (默认5M,innodb_buffer_pool_size的四分之一)
innodb_log_buffer_size = 16M  //设置位每秒的数据量
innodb_max_dirty_pages_pct = 90
innodb_file_io_threads = 4
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 0
innodb_flush_method=O_DIRECT
innodb_open_files=4096
innodb_lock_wait_timeout = 120
innodb_file_per_table=1
 
:wq // 保存退出
sudo rm -rvf  /data/mysql/data/ib_logfile * //删除原来的默认文件
sudo /sbin/service mysqld restart
 
6、 apache安装
cd /home/baison/src
wget http://labs.renren.com/apache-mirror//httpd/httpd-2.2.19.tar.gz
tar xvf httpd-2.2.19.tar.gz
cd httpd-2.2.19
./configure --prefix=/usr/local/webserver/apache \
--enable-so --enable-rewrite \
 --enable-mods-shared=most 
 
sudo make 
sudo make install
 
sudo /usr/local/webserver/apache/bin/apachectl start
sudo netstat -tnlp |grep httpd
sudo cp /usr/local/webserver/apache/bin/apachectl /etc/init.d/httpd
sudo /sbin/service  httpd start
netstat -tnlp |grep 80
sudo vim /etc/init.d/httpd (第二行添加注释信息,添加为系统服务)
 
# chkconfig: 35 61 61
# description: Apache
 
:wq 保存退出
sudo /sbin/chkconfig --add httpd
 sudo /sbin/chkconfig httpd on
cd /home/baison/src
wget  http://cn.php.net/get/php-5.3.6.tar.gz/from/this/mirror
tar xvf php-5.3.6.tar.gz
cd php-5.3.6
sudo ./configure --prefix=/usr/local/webserver/php \
--mandir=/usr/local/share/man \
--infodir=/usr/local/share/info \
--with-apxs2=/usr/local/webserver/apache/bin/apxs \
--enable-cgi --with-mysql=/usr/local/webserver/mysql/ \
--with-config-file-path=/usr/local/webserver/php/etc \
--with-pdo-mysql=/usr/local/webserver/mysql \
--with-mysqli=/usr/local/webserver/mysql/bin/mysql_config \
--enable-zip --enable-sqlite-utf8 -enable-sockets \
--enable-soap --enable-pcntl --enable-mbstring \
--enable-intl --enable-calendar --enable-bcmath \
--enable-exif --with-mcrypt --with-mhash --with-gd \
--with-png-dir --with-jpeg-dir --with-freetype-dir \
--with-libxml-dir --with-curl --with-curlwrappers \
--with-zlib   --with-openssl --with-kerberos=shared \
--with-gettext=shared --with-xmlrpc=shared 
 
sudo make
sudo make install
 
sudo cp php.ini-recommended /usr/local/webserver/php/etc/php.ini   //拷贝配置文件
整合Apache与PHP及系统初始化配置
sudo vim /usr/local/apache/conf/httpd.conf
查找AddType application/x-gzip .gz .tgz,在该行下面添加
AddType application/x-httpd-php .php
查找DirectoryIndex index.html 把该行修改成
DirectoryIndex index.html index.htm index.php
 
:wq 保存退出
测试apache和php是否整合成功, 下面我们测试apache和php是否整合成功,在apache文档跟目录下新建一个小小的php程序
# cd /usr/local/webserver/apache/htdocs
# sudo vi index.php  // 在index.php文件中写入下面三行
 
<?php
phpinfo();
?>
 
重启apache服务
sudo /sbin/service  httpd restart
访问,在浏览器中输入http://localhost/index.php 出现php信息界面则说明整合成功


本文转自 张玉坡 51CTO博客,原文链接:http://blog.51cto.com/fighter/606686
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
Linux 开发工具 C语言
Centos8下编译安装最新版ffmpeg解决方案(含Centos8换源阿里云)
Centos8下编译安装最新版ffmpeg解决方案(含Centos8换源阿里云)
167 3
|
4天前
|
Linux 测试技术 数据安全/隐私保护
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
CentOS安装MeterSphere并实现无公网IP远程访问本地测试平台
|
12天前
|
Shell
CentOS6.5自动化安装LAMP脚本
CentOS6.5自动化安装LAMP脚本
|
26天前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
17 0
|
26天前
|
关系型数据库 MySQL Linux
Centos7 yum安装lAMP 环境 php版本5.6.38 mysql版本5.7.22
Centos7 yum安装lAMP 环境 php版本5.6.38 mysql版本5.7.22
19 0
|
8月前
|
关系型数据库 MySQL Linux
|
4月前
|
Linux Shell
开源日志平台GrayLog5.1.10 CentOS7一键安装脚本
开源日志平台GrayLog5.1.10 CentOS7一键安装脚本
104 0
|
4月前
|
Linux
开源日志平台GrayLog5.1.7 CentOS7一键安装脚本
开源日志平台GrayLog5.1.7 CentOS7一键安装脚本
89 1
|
4月前
|
Linux C语言
centos 7 下使用高版本gcc编译安装
centos 7 下使用高版本gcc编译安装
119 0
|
5月前
|
Linux Python
百度搜索:蓝易云【CentOS 7.8编译安装python 3.7教程。】
请注意,编译安装Python可能需要一些时间,并需要较高的系统性能和网络连接。在安装过程中,请确保按照提示和错误信息进行相应的操作和解决方案。
86 1

热门文章

最新文章