LAMP环境搭建与配置

  • 基本概念

LAMP是 Linux  Apache  MySQL  PHP 的简写,LAMP一般用来组件Web应用平台

Apache是最常用的Web服务软件。

MySQL是小型的数据库软件。

PHP是主要用于服务器端的应用程序软件,是一种脚本语言。

注意:Apache和PHP必须装在一台机器上,因为PHP是作为Apache的一个模块存在的。

  • 安装MySQL
# 源码包不区分平台,二进制包是区分平台的
# CentOS 7之前是区分32位和64位的,CentOS 7开始都是64位

uname -i         # 查看Linux是多少位的

1)下载源码包或免编译二进制包

cd /usr/local/src           # 所有软件包都放到这一目录下
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz  # 下载二进制包

2)初始化

tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz      # 解压
[ -d /usr/local/mysql ] && mv /usr/local/mysql /usr/local/mysql_old # 若该目录已存在则重命名
mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql      # 挪动位置

useradd -s /sbin/nologin mysql      # 不能用mysql用户登录系统,只能用来启动mysql数据库
cd /usr/local/mysql
mkdir -p /data/mysql    # 创建datadir,数据库文件会放到这里
chown -R mysql:mysql /data/mysql    # 更改权限,不更改后续操作就会出问题

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
# 如提示错误信息“please install the following Perl modules before ...”
# 使用命令 yum install -y perl-Module-Install 来安装它

3)配置MySQL

# 1)复制并编辑配置文件
cp support-files/my-default.cnf /etc/my.cnf
vim /etc/my.cnf
# 2)配置文件改成如下内容
[mysqld]

# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 128M

# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin

# These are commonly set, remove the # and set as required.
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
server_id = 128             # 这个参数用在做主从配置,后续会介绍
socket = /tmp/mysql.sock    # 定义MySQL服务监听的socket套接字地址

# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M         # 这3个buffer是关于内存的配置参数,保持默认即可
sort_buffer_size = 2M
read_rnd_buffer_size = 2M

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 3)复制启动脚本并修改其属性
cp support-files/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
vim !$
# 启动脚本续修改的内容如下
basedir=/usr/local/mysql
datadir=/data/mysql
# 4)将启动脚本加入系统服务项,并将其设为开机启动
chkconfig --add mysqld      # 把mysqld加到系统服务列表中
chkconfig mysqld on         # 使其开机启动
service mysqld start        # 启动mysqld服务

ps aux |grep mysqld         # 查看进程
netstat -lnp |grep 3306     # 查看3306端口监听情况
  • 安装Apache
# 1)下载并解压源码包
cd /usr/local/src       # httpd是依赖apr和apr-util的
wget http://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz
wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz
wget http://mirrors.cnnic.cn/apache/httpd/httpd-2.4.33.tar.gz

tar zxvf apr-1.6.3.tar.gz
tar zxvf apr-util-1.6.1.tar.gz
tar zxvf httpd-2.4.33.tar.gz
# 2)安装apr和apr-util
cd /usr/local/src/apr-1.6.3
./configure --prefix=/usr/local/apr     # --prefix制定安装目录
make && make install 

cd /usr/local/src/apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install 
# 安装apr-util时如出现错误“libtool: link: cannot find the library ...”
# 解决办法是: yum install -y expat-devel
# 3)继续安装httpd

cd /usr/local/src/httpd-2.4.33

./configure \
    --prefix=/usr/local/apache2.4 \
    --with-apr=/usr/local/apr \
    --with-apr-util=/usr/local/apr-util \
    --enable-so \           # 表示启用DSO,DSO是把某些功能以模块的形式展现出来
    --enable-mods-shared=most       # 以共享方式安装大多数功能模块,安装后会在modules目录下看到这些文件

yum install -y pcre pcre-devel      # 为避免make出错,提前安装好一些库文件

make
make install 
echo $?

猜你喜欢

转载自www.cnblogs.com/karl-python/p/9094126.html