CentOS 6.3编译安装LAMP环境笔记

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了CentOS 6.3编译安装LAMP环境笔记脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

最近抽空在虚拟机上测试成功了LamP各个最新版本的整合编译安装,算是把之前的博文整合精简,以下内容均在CentOS6.3(安装minimal desktop和认开发包)下测试安装成功,并做了相应优化配置,如有遗漏,还请留言指教。
 
LINUX操作系统:centOS6.3 64bIT(安装了系统认开发包)
apache:httpd-2.4.4
MysqL:mysql-5.6.10
PHP:PHP-5.4.13
注:推荐安装centos6.3系统时,在系统安装向导中。将认开发包勾上,避免后期编译报错

一.安装开发包(使用认CENTOS更新源):


# yum -y install wget gcc-c++ ncurses ncurses-devel @R_788_1512@ make PErl bison openssl openssl-devel gcc* libXMl2 libxML2-devel curl-devel libjpeg* libpng* freetype*

二.关闭iptables和SELINUX


# service iptables stop
# setenforce 0
# vi /etc/Sysconfig/selinux
---------------
SELINUX=disabled
---------------

三.安装MysqL数据库

1.下载编译包:


 
2.安装前的初始配置工作:

# useradd -d /usr/local/MysqL/ MysqL   #创建一个MysqL用户,指定家目录到/use/local目录下。
# mkdir /usr/local/MysqL/data         
# mkdir /usr/local/MysqL/LOG           #新建MysqL下data和log子目录
# chown -R MysqL:MysqL /usr/local/MysqL/data/
# chown -R MysqL:MysqL /usr/local/MysqL/log/
# chmod 750 /usr/local/MysqL/data     
# chmod 750 /usr/local/MysqL/log       #修改目录的所属者以及所属组

3.解包编译安装

# tar -zxv -f mysql-5.6.10.tar.gz     
# cd mysql-5.6.10 
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/MysqL \
-DMysqL_UNIX_ADDR=/tmp/MysqL.sock \
-DDEFAULT_CHARSET=gbk \
-DDEFAULT_COLLATION=gbk_chinese_ci \
-DEXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENginE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ArchIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMysqL_DATADIR=/usr/local/MysqL/data \
-DMysqL_USER=MysqL \
-DMysqL_TCP_PORT=3306 \
-DSYSconfdIR=/etc \
-DWITH_SSL=yes
 
#  make & make install

编译注解:

-DCMAKE_INSTALL_PREFIX=/usr/local/MysqL \               #安装目录
-DMysqL_UNIX_ADDR=/tmp/MysqL.sock \                        #Unix socket文件路径,自定义此路径报错
-DDEFAULT_CHARSET=gbk \                                            #认字符
-DDEFAULT_COLLATION=gbk_chinese_ci \                    #校验字符
-DEXTRA_CHARSETS=all \                                                 #安装所有扩展字符集
-DWITH_MYISAM_STORAGE_ENGINE=1 \                       #安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 \                  #安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \                     #安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \               #安装blackhole存储引擎
-DWITH_MEMORY_STORAGE_ENGINE=1 \                      #安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1                 #安装frderated存储引擎
-DWITH_READLINE=1 \                                                          #快捷键功能
-DENABLED_LOCAL_INFILE=1 \                                          #允许从本地导入数据
-DMysqL_DATADIR=/usr/local/MysqL/data \                        #数据库存放目录
-DMysqL_USER=MysqL \                                                       #数据库属主
-DMysqL_TCP_PORT=3306 \                                             #数据库端口
-DSYSconfdIR=/etc \                                                           #MysqL配辑文件
-DWITH_SSL=yes                                                                   #数据库SSL

4.编写MysqL配置项:
#  vi /etc/my.cnf

[MysqL]
 
# CLIENT #
port                              = 3306
socket                         = /tmp/MysqL.sock
 
[MysqLd]
 
# GENERAL #
user                                           = MysqL
default_storage_engine         = InnoDB
socket                                       = /tmp/MysqL.sock
pid_file                                     = /VAR/run/MysqLd/MysqLd.pid
 
# MyISAM #
key_buffer_size                      = 32M
myisam_recover                    = FORCE,BACKUP
 
# SAFETY #
max_Allowed_packet             = 16M
max_connect_errors               = 1000000
skip_name_resolve
sql_mode                       = STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SubSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY
sysdate_is_Now                     = 1
innodb                                     = FORCE
innodb_strict_mode              = 1
 
# DATA STORAGE #
datadir                                     = /usr/local/MysqL/data
 
# BINARY LOGGING #
log-bin                                    =/usr/local/MysqL/log/bin.log
expire_logs_days                 = 30
sync_binlog                           = 1
 
# CACHES AND LIMITS #
key_buffer                                 = 256M
max_allowed_packet              = 32M
sort_buffer_size                       = 16M
read_buffer_size                     = 4M
read_rnd_buffer_size             = 16M
thread_stack                            = 8M
tmp_table_size                        = 32M
max_heap_table_size            = 32M
query_cache_type                   = 1
query_cache_size                   = 128M
query_cache_limit                  = 2M
max_connections                   = 2048
thread_cache_size                = 512
open_files_limit                      = 65535
table_deFinition_cache         = 1024
table_open_cache               = 2048
 
# INNODB #
innodb_log_files_in_group                = 2
innodb_log_file_size                         = 64M
innodb_flush_log_at_trx_commit    = 1
innodb_file_per_table                      = 1
# 2G这个值配置低的话建议改小即可
innodb_buffer_pool_size        = 2G
 
# LOGGING #
log-error=/usr/local/MysqL/log/error.log
general_log=1
general_log_file=/usr/local/MysqL/log/MysqL.log
slow_query_log=1
slow_query_log_file=/usr/local/MysqL/log/slowquery.log
log-output=FILE
 
# 避免MysqL的外部锁定,减少出错几率增强稳定性 #
skip-external-locking
 
# 禁止sql读取本地文件 #
local-infile=0

 
5.将MysqL的库文件路径加入系统的库文件搜索路径中

方法一:直接做软链接


# ln -s /usr/local/MysqL/lib/MysqL /usr/lib/MysqL

方法二:利用ldconfig导入系统库(推荐)

# echo "/usr/local/MysqL/lib" >> /etc/ld.so.conf.d/MysqL.conf
# ldconfig

6.输出MysqL的头文件到系统头文件


# ln -s /usr/local/MysqL/include/MysqL /usr/include/MysqL

7.进入安装路径,初始化配置脚本

# cd /usr/local/MysqL
# scripts/MysqL_install_db --user=MysqL --datadir=/usr/local/MysqL/data

8.复制MysqL启动脚本到系统服务目录

# cp /usr/local/MysqL/support-files/MysqL.server /etc/init.d/MysqLd

9.系统启动项相关配置

# chkconfig --add MysqLd  #添加开机启动服务
# chkconfig --level 35 MysqLd on  #设置MysqL启动

10.启动MysqL


# service MysqLd start

注:编译时若socket路径自定义为/var/lib/MysqL/MysqL.sock,这里需要创建一个MysqL接口的软链接,防止登陆后台或安装论坛报错.

# ln -s /var/lib/MysqL/MysqL.sock /tmp/MysqL.sock 

11. 设置初始账户,并登陆后台:

@L_304_170@ 代码如下:

# /usr/local/MysqL/bin/MysqLadmin -u root password 123456   #设置密码
# /usr/local/MysqL/bin/MysqL -u root -p123456     #连接数据库
-----------------------------------
MysqL> create database PHPwind;      #创建数据库
MysqL> grant all privileges on *.* to root@'%' identified by '123456' with grant option;  #给root用户非本地链接所有权限,并改密码和赋予其给其他人下发权限.
MysqL> show variables; #查看MysqL设置.
-----------------------------------

注:从启MysqL也可使用以下命令开启此服务

# /usr/local/MysqL/bin/safe_MysqLd

如果不设置chkconfig启动项,也可在/etc/rc.local下添加如下命令,使MysqL服务利用系统启动脚本运行.

# echo "/usr/local/MysqL/bin/safe_MysqLd --user=MysqL &" >> /etc/rc.local

12 添加MySQL命令集到系统全局变量

注:如果系统之前未安装MysqL客户端,可以将编译好的MySQL命令集导入系统全局变量
以后就可以直接使用MySQL命令集,而不需要使用绝对路径访问.

# echo "PATH=$PATH:/usr/local/MysqL/bin;export PATH" >> /etc/profile
# source /etc/profile

四.安装apache网站服务

1.pcre依赖包安装


# wget http://sourceforge.net/projects/pcre/files/pcre/8.32/pcre-8.32.tar.gz/download
# tar -xzvf pcre-8.32.tar.gz
# cd pcre-8.32
# ./configure --prefix=/usr/local/pcre
# make && make install

2.下载apache

其实这里在apache官网找不到httpd-2.4.4-deps.tar.bz2的编译包,不知道官方怎么想的,最后研究了下最近的2.43deps版本,解压该编译包,发现里面放的其实就是apr和apr-util两个apache的依赖包,现在的方法是直接把2.43的包解压到apache安装根目录即可连同apache编译安装,最后能正常安装使用,算是一个无奈之举,但安装起来较网上单独编译安装依赖包要简便一些.

3.解包

注:httpd-2.4.3-deps.tar.bz2已集成APR,安装apache前检查pcre是否安装成功.

@H_228_403@
# tar jxvf httpd-2.4.4.tar.bz2
# tar jxvf httpd-2.4.3-deps.tar.bz2
# cp -rf httpd-2.4.3/* httpd-2.4.4
# cd httpd-2.4.4

脚本宝典总结

以上是脚本宝典为你收集整理的CentOS 6.3编译安装LAMP环境笔记全部内容,希望文章能够帮你解决CentOS 6.3编译安装LAMP环境笔记所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。