安装MySQL
初始化
- 解压mysql包
- 把解压好的mysql包移动到/usr/local/mysql
- 创建一个mysql用户
- 在/usr/local/mysql目录下创建一个数据库文件(datadir)/data/mysql
- 更改数据库文件/data/mysql的所有者和所属组都为mysql
- 执行安装脚本 !*安装脚本前要先安装perl环境
实操代码如下
# tar zxvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz
# mv mysql-5.6.43-linux-glibc2.12-x86_64 /usr/local/mysql
# useradd -s /sbin/nologin mysql
# cd /usr/local/mysql/
# mkdir -p /data/mysql
# chown -R mysql:mysql /data/mysql
# yum install -y perl-Module-Install
# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql //--user表示定义数据库的以哪个身份在运行 --datadir表示定义数据库的安装目录
上述操作都完成后使用echo $?验证操作是否成功
# echo $?
0
返回值为0说明上述操作成功,初始化完成
配置MySQL
- 复制配置文件# cp support-files/my-default.cnf /etc/my.cnf
- 修改复制过去的配置文件
- 复制启动脚本
- 给复制启动的脚本文件修改属性
- 修改复制过去的启动脚本
实操代码如下:
# cp support-files/my-default.cnf /etc/my.cnf //复制配置文件
# vi /etc/my.cnf
# cp support-files/mysql.server /etc/init.d/mysqld //复制启动脚本
# chmod 755 /etc/init.d/mysqld
# vi /etc/init.d/mysqld
# chkconfig --add mysqld //把mysqld服务加入到系统服务列表
# chkconfig mysqld on //使其开机自启
# service mysqld start
/etc/my.cnf的配置文件:
basedir = /usr/local/mysql
datadir = /data/mysql
port = 3306
server_id = 30
socket = /tmp/mysql.sock
basedir:mysql包所在的路径
datadir:存放数据的地方
port:mysql服务监听的端口
server_id:MySQL服务的id号
socket:MySQL服务监听的套接字地址
要把配置文件中的注释符号“#”去掉
/etc/init.d/mysqld的配置文件(启动脚本):
basedir = /usr/local/mysql
datadir = /data/mysql
安装Apache
- 解压htppd包和apr、apr-util
- 安装apr、apr-util
- 安装htttpd 配置编译参数
实操代码如下:
# tar -zxvf httpd-2.4.39.tar.gz
# tar -zxvf apr-1.6.5.tar.gz
# tar -zxvf apr-util-1.6.1.tar.gz
# cd apr-1.6.5/
# ./configure --prefix=/usr/local/apr //这个过程首先出现报错
# yum install -y expat-devel //安装这个就好了,然后再返回上条命令去安装
# make && make install
# cd apr-util-1.6.1/
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# cd httpd-2.4.39/
# ./configure --prefix=/usr/local/apache2.4 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-so --enable-mods-shared=most
# yum install -y pcre pcre-devel
# make && make install
apr和apr-util可以理解成一个通用的函数库,http是依赖apr和apr-util,安装这两个才能让httpd工作
安装PHP
- 解压php包
- 编译配置参数(很多)
- 复制配置文件
实操代码如下:
这里需要注意,在编译配置参数的时候,中间会缺少很多库,为了防止报错我们提前安装。
# yum install -y libxml2-devel
# yum install -y openssl openssl-devel
# yum install -y bzip2 bzip2-devel
# yum install -y libpng libpng-devel
# yum install -y freetype freetype-devel
# yum install -y epel-release //这个是拓展源,用来安装libmcrypt
# yum install -y libmcrypt-devel
# yum -y install libjpeg-devel
# tar -vxzf php-5.6.30.tar.gz
# cd php-5.6.30/
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2.4/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif
# make && make install
配置httpd支持PHP
- 编辑http主机配置文件
修改内容为:
由于文件内容过多,使用分割线分成了三个部分,我们只需要注意这三部分就好
# vi /usr/local/apache2.4/conf/httpd.conf
ServerName www.example.com:80 //去掉“#”注释符号
#
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
#
<Directory />
AllowOverride none
Require all granted //修改成granted
</Directory>
——————————————————————————————————————
# probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php //新增一行
——————————————————————————————————————
#
<IfModule dir_module>
DirectoryIndex index.html index.php //添加 index.php
</IfModule>
#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
测试LAMP是否成功
测试配置文件是否正确
- 检验配置文件是否正确
- 启动httpd
- 查看是否启动
实际操作如下:
# /usr/local/apache2.4/bin/apachectl -t //配置成功会返回 “Syntax OK”
# /usr/local/apache2.4/bin/apachectl start
# netstat -ntpl //查看端口号
此时可以到浏览器输入 http://IP 来查看是否成功
网站上显示 It works 即为成功