现状:
yum epel源自带php MySQL nginx版本较低不能满足测试和生产环境中程序性能及安全需求
LNMP-->Web环境快速部署
需求:
yum源带的php版本也是5.4, 当我们需要使用5.6或者7.0版本的PHP时, 就只能编译安装了. 但有时候我们不想处理一些依赖问题, 希望能够通过yum, 快速部署, 这个时候就需要引入第三方yum源
WEBTATIC国外第三方EPEL
https://webtatic.com/packages/
PHP第三方EPEL源
CentOS 6.x 源
rpm -Uvh https://dl.Fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
CentOS 7.x 源
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
可以通过命令查看该源对应的安装包
yum list --enablerepo=webtatic|grep php
部署LNMP环境步骤----->安装Mysql---->安装PHP--->NGINX
以安装php7.1版本示例
yum install php71w php71w-fpm php71w-common php71w-gd php71w-mbstring php71w-mcrypt php71w-mysqlnd php71w-pdo php71w-bcmath -y
安装php5.6版本示例:
yum install php56w php56w-fpm php56w-mysql php56w-mcrypt php56w-bcmath php56w-gd php56w-mbstring php56w-pdo -y
简单介绍下各个PHP组件功能
# 基础
php71w
# nginx连接使用
php71w-fpm
# 宽字节
php71w-mbstring
# 连接mysql相关
php71w-mysqlnd
# Redis扩展
php71w-pecl-redis
# 加密使用
php71w-mcrypt
# 性能加速 php5.5 以上使用
php71w-opcache
安装这些基本的可以满足大量需求, 至于有些扩展, 会在安装这些库的时候附加进去
Mysql官方yum EPEL
介绍CentOS 6.x Platform,自带的版本都是5.1, 当然MySQL网站上自然有提供相应的yum方法, 可能大多人并没在意.
CentOS 7.x 系列都自带MariaDB
官方介绍链接:https://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/linux-installation-yum-repo.html
# 更新 yum 源
yum update
# 添加 mysql5.6 yum 源
# Centos6
rpm -Uvh
# Centos7
rpm -Uvh
yum install mysql-server
安装完成, 启动Mysql服务
123456 # 启动
service mysqld start
# 重启
service mysqld restart
# 关闭
service mysqld stop
如果出现启动失败, 首先检查端口号是否被暂用, 其次检查权限问题, 另外还需要检查mysql进程
设置 mysql 密码
mysqladmin -uroot password 123456
允许远程访问
mysql -u root
mysql> use mysql;
# 允许外部连接数据库
mysql> update user set host = '%' where host= '127.0.0.1';
# 查看修改结果
mysql> select host, user, password from user;
# 刷新权限表(此操作一定要执行, 否则需要重启mysql)
mysql> flush privileges;
记住, 通过客户端连接成功后, 一定要设置密码, 如果开启了防火墙, 需要放开数据库对外端口, 一般为3306
重置root用户密码(此操作分两种情况)
1、记得 root 用户密码
# 其中 123456 为原密码, 不能与-p分开, abcdefg 为新密码
mysqladmin -u root -p123456 password abcdef
2、忘记 root 用户密码
# 如果 MySQL 正在运行, 先关闭
killall -TERM mysqld
# 启动 MySQL
mysqld_safe --skip-grant-tables &
# 此时就是免密进入 MySQL
> use mysql
> update user set password=password("new_pass") where user="root";
> flush privileges
# 退出, 启动 MySQL
Nginx部署
官网提供不同OS Platform Version Download
#stable
Ubuntu 14.04下apt-get方法安装LNMP环境
CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)
Ubuntu 14.04 LTS 安装 LNMP Nginx\PHP5 (PHP-FPM)\MySQL
CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)