LNMP源码编译过程 CentOS-7.3+Nginx-1.11+MySQL-5.7+php-7.1
2017-03-28 00:00
716 查看
摘要: LNMP环境,nginx服务器
前提:安装wget
安装Nginx
#安装依赖
#下载Nginx
前提:安装wget
yum -y install wget
安装Nginx
#安装依赖
yum install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre pcre-devel # devel包含普通包,只比普通包多了头文件。动态链接库的话两种包都有。编译的时候如果需要用到这个库,那么需要安装这个库的devel,因为需要头文件
#下载Nginx
wget http://nginx.org/download/nginx-1.11.12.tar.gz[/code] #解压tar -zxvf nginx-1.11.12.tar.gz cd nginx-1.11.12
#创建用户useradd www
#编译安装./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.0.2k --with-pcre=../pcre-8.40 --with-pcre-jit --with-ld-opt=-ljemalloc make && make install
#运行Nginx/usr/local/nginx/sbin/nginx #平滑重启,不会断开已连接用户的连接状态 /usr/local/nginx/sbin/nginx –s reload
#CentOS7 开放80端口#centos7 添加80端口 firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效) #重新载入 firewall-cmd --reload
#环境变量#自启动和环境变量 vim /etc/profile #添加 PATH=$PATH:/usr/local/nginx/sbin export PATH
#新建Nginx服务#新建服务 cd /lib/system/system vim nginx.service #内容 [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin/nginx ExecReloadd=/usr/local/nginx/sbin/nginx -s reload ExecStop=/usr/local/nginx/sbin/nginx -s quit PrivateTmp=True [Install] WantedBy=multi-user.target
#设置开机自启动#开机自启动 systemctl enable nginx.service
#修改Nginx配置与PHP通讯#修改nginx配置 server{ listen 80; server_name localhost; root html;// web发布目录 location / { index index.php index.html; } location ~/.php${ fastcgi_pass 127.0.0.1:9000; #php-fpm的监听地址和端口号 include fastcgi.conf; } }
php安装
#下载解压wget http://cn2.php.net/distributions/php-7.1.3.tar.gz #解压 tar -zxvf php-7.1.3.tar.gz cd php-7.1.3
#解决依赖yum install gcc gcc-c++ libxml2 libxml2-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel openssl openssl-devel libcurl libcurl-devel
#编译安装#编译安装 ./configure --prefix=/usr/local/php --with-zlib --with-pdo-mysql --enable-mbstring --with-gd --with-png-dir=/usr/lib64 --with-jpeg-dir=/usr/lib64 --with-freetype-dir=/usr/lib64 --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-openssl --with-curl --enable-sockets make && make install
#配置文件pwd /root/packages/php-7.1.3 cp php.ini-development /usr/local/php/etc/php.ini #切换至php的安装目录 cd /usr/local/php/etc cp php-fpm.conf-default php-fpm.conf cd ./php-fpm.d cp www.conf-default www.conf #保持用户名一致
#启动php-fpm#php-fpm 默认安装目录/usr/local/php/sbin cd /usr/local/php/sbin ./php-fpm #启动php-fpm
#添加php的环境变量vim /etc/profile #添加 PATH=$PATH:/usr/local/nginx/sbin:/usr/local/php/bin:/usr/local/php/sbin export PATH #立即生效 source /etc/profile
#添加至自启动#添加至自启动 # 1. 修改rc.local vim /etc/rc.local #最后一行添加 /usr/local/php/sbin/php-fpm chmod +x /etc/rc.d/rc.local # 2.设置为系统服务 cp /usr/local/php/sbin/php-fpm /etc/init.d/php-fpm chkconfig --add php-fpm #两种方式推荐第二种
MySQL的编译安装
#解决依赖yum install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison libaio libaio-devel
#新建boost目录mkdir /usr/local/boost
#下载解压MySQLwget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.17.tar.gz tar -zxvf mysql-5.7.17.tar.gz cd mysql-5.7.17
#编译安装#-DDOWNLOAD_BOOST加上此命令以后会自动下载boost 由于CentOS 7 支持的是systemd技术 所以默认添加选DWITH_SYSTEMD=1 cmake . -DDOWNLOAD_BOOST=ON -DWITH_BOOST=/usr/local/boost/ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DWITH_SYSTEMD=1 make && make install
#添加mysql用户 -s /bin/false 不登录 -s /bin/nologin 都是不允许登录#创建mysql用户 groupadd mysql useradd -r -g mysql -s /bin/false mysql
#mysql安装完成以后#安装完成后 cd /usr/local/mysql chown -R mysql . chgrp -R mysql . bin/mysql_install_db --user=mysql #在MySQL 5.7.6之前 bin/mysqld --initialize --user=mysql #MySQL 5.7.6及以上,生成一个随机密码 #bin/mysql_ssl_rsa_setup #MySQL 5.7.6及以上如果希望服务器能够自动部署安全连接,请使用 #mysql_ssl_rsa_setup实用程序创建默认的SSL和RSA文件: chown -R root . chown -R mysql data bin/mysqld --user=mysql & #设置为系统服务 centos7以下使用systemV技术 cp support-files/mysql.server /etc/init.d/mysql.server chkconfig --add mysqld # 设置为系统服务 centos7以上使用systemD技术 cp /usr/local/mysql/usr/lib/systemd/system/mysqld.servivce /usr/lib/systemd/system/ systemctl enable mysqld.service systemctl start mysqld # 如果您的安装包括systemd支持,则启动服务器:CentOS7 开始,已经支持systemd 而逐渐放弃使用systemV # systemctl start mysqld # 如果开启过程中提示create/write mysqld.pid file failed 报错可以 此错误是由于权限问题导致 mkdir /var/run/mydqld chown mysql:mydql /var/run/mydqld 所以指定权限为mysql用户 #不生成随机密码 bin/mysqld --initialize-insecure --user=mysql #MySQL 5.7.6及以上,不生成随机密码 #连接数据库的方式 mysql -u root --skip-password #登陆后重新设置密码 ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; # mysqld_safe是在Unix上启动 mysqld服务器的推荐方法 #忘记密码 # 使用 service 停止服务 service mysql stop # 或者 systemctl 停止服务 systemctl stop mysqld.service # 命令行启动 mysql 跳过认证授权 mysqld_safe --skip-grant-tables & # 客户端连接 mysql 服务 mysql -u root -p update mysql.user set authentication_string=password('123') where user='root' and Host = 'localhost'; flush privileges; exit
#编译出错#cmake 或者 make && make install 出错时 make clean rm CMakeCache.txt
相关文章推荐
- CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)
- centos6.5 源码编译LNMP(nginx-1.2.0、mysql-5.5.25、php-5.2.13)
- CentOS-6.4 源码包编译安装LNMP +Discuz开源论坛(mysql-5.6.14 +PHP-5.4.21+nginx-1.4.2)
- CentOS-6.5下编译安装LNMP环境【nginx1.8.1、mysql5.5.43、php 5.6】
- 编译安装LNMP Centos 6.5 x64 + Nginx1.6.0 + PHP5.5.13 + Mysql5.6.19
- Centos 编译安装LNMP环境(Nginx+MySQL+PHP)教程
- centos 下搭建LNMP (源码安装nginx,mysql,php)
- LNMP环境编译安装全过程(php-5.6.14、nginx-1.8.0、mysql-5.6.26)
- 生产环境Centos LNMP编译安装nginx-1.6 MySQL-5.6 php-5.5
- 编译安装LNMP Centos 6.5 x64(6.6 x64) + Nginx1.6.0 + PHP5.5.13 + Mysql5.6.19
- CentOS 7 配置 Nginx + php + mysql 搭建 lnmp 环境过程全纪录
- LNMP一键安装包-CentOS 5/6下自动编译安装Nginx,MySQL,PHP,memcached
- lnmp源码编译安装Linux(6.4)+Nginx(1.4.1)+Mysql(5.6.12)+Php(5.5.0)
- 基于CentOS 6.8平台最新源代码包编译安装LNMP环境搭建(Nginx+MySQL+PHP)
- 源码编译安装,搭建LNMP环境(Linux+Nginx+MySQL+PHP)
- 经验回顾:在CentOS下用源码安装LNMP(nginx,mysql,php)
- Centos6.3 编译源码搭建 PHP(fast-cgi)+Nginx+Mysql+Memcached+Redis高性能服务器
- 源码编译Nginx&MySQL&PHP实现LNMP