一、安装mysql 数据库

1.1  mysql数据库安装的三种方法: 1)编译安装,在lamp经典组合安装是5.1版本,是configure,make,make install,这里如果是5.5版本采用的是cmake安装

2)yum/rpm

3)二进制包,直接压缩解压,初始化数据库即可,无需编译

1.2安装(软件路径和安装路径为:/home/oldboy/tools/mysql-5.5.32-linux2.6-x86_64和/application/mysql/mysql-5.5.32-linux2.6-x86_64)

1)上传,解压软件

   rz -y
           tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz

      2)  因为是二进制文件,将文件直接拷贝到安装目录

mv ./mysql-5.5.32-linux2.6-x86_64 /application/mysql/

      3)数据库数据目录授权

chown -R mysql /application/mysql/data/

     4)  数据库初始化

          /application/mysql/scripts/mysql_install_db --user=mysql --basedir=/application/mysql/data --datadir=/application/mysql/data/

     5)配置文件放到默认位置

cp ./support-files/my-small.cnf   /etc/my.cnf

     6)将启动服务文件放到默认位置

        /cp ./support-files/mysql.server /etc/init.d/mysqld

    7)修改启动命令路径,如下

        vim  /etc/init.d/mysqld

8)将数据库启动命令进行配置,这里有两种方式

1.添加到PATH变量里面,系统内会自动搜索,例如:/usr/local/sbin下

[root@djw1 mysql]# echo $PATH
           /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

       2.添加到 /etc/profile下面,末尾添加如下:

9)添加用户名密码

 /application/mysql/bin/mysqladmin -u root password 'oldboy124'

10)登录成功:mysql -uroot -p

1.3.优化用户名,只保留127.0.0.1和localhost,删除空用户和::1ipv6用户

mysql 数据库中可以使用 DROP USER 语句来删除一个或多个用户账号以及相关的权限。

优化如下: drop user ""@"localhost";     drop user ""@"::1"; drop user ""@"djw1";

二、安装PHP工具所需要的库

安装php是因为有一些动态数据需要通过PHP程序运行到mysql数据库中,而PHP程序依赖于PHP工具进行编译运行。

2.1检查安装PHP所需lib库,php会调用这些跟图形相关的函数库

yum install zlib libxml libjpeg freetype libpng gd  curl libiconv  zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel -y
    2.2检查安装libiconv字符转换库工具

tar zxf libiconv-1.14.tar.gz 

         cd libiconv-1.14
        ./configure --prefix=/usr/local/libiconv
          make
        make install
        cd ../

2.3 libmcrypt:加密算法扩展库,支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法

  tar zxf libmcrypt-2.5.8.tar.gz
       cd libmcrypt-2.5.8
      ./configure
      make
      make install
      sleep 2
      /sbin/ldconfig
     cd libltdl/
    ./configure --enable-ltdl-install
     make
     make install
     cd ../../

   2.4 mhash:hash是基于离散数学原理的不可逆向的php加密方式扩展库,其在默认情况下不开启。mhash的可以用于创建校验数值,消息摘要,消息认证码,以及无需原文的关键信息保存(如密码)等

tar zxvf mhash-0.9.9.9.tar.gz

    cd mhash-0.9.9.9/

   ./configure
   make
   make install
   cd ../
   rm -f /usr/lib64/libmcrypt.*
   rm -f /usr/lib64/libmhash.*
    ln -s /usr/local/lib64/libmcrypt.la /usr/lib64/libmcrypt.la
    ln -s /usr/local/lib64/libmcrypt.so /usr/lib64/libmcrypt.so
    ln -s /usr/local/lib64/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4
    ln -s /usr/local/lib64/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8
    ln -s /usr/local/lib64/libmhash.a /usr/lib64/libmhash.a
    ln -s /usr/local/lib64/libmhash.la /usr/lib64/libmhash.la
    ln -s /usr/local/lib64/libmhash.so /usr/lib64/libmhash.so
    ln -s /usr/local/lib64/libmhash.so.2 /usr/lib64/libmhash.so.2
    ln -s /usr/local/lib64/libmhash.so.2.0.1 /usr/lib64/libmhash.so.2.0.1
    ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config
   
 2.5mcrypt:mcrypt 是 php 里面重要的加密支持扩展库。Mcrypt库支持20多种加密算法和8种加密模式
   tar zxf mcrypt-2.6.8.tar.gz
  cd mcrypt-2.6.8/
  /sbin/ldconfig
  ./configure  LD_LIBRARY_PATH=/usr/local/lib
  make
  make install
  cd ../
三、安装PHP
  rz -y php-5.3.27.tar.gz   
  tar zxf php-5.3.27.tar.gz
  cd php-5.3.27
  yum install libxslt* -y
开始编译生成MAKEFILE文件
./configure --prefix=/application/php5.3.27 \
--with-mysql=/application/mysql \
--with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=nginx \
--with-fpm-group=nginx \
--enable-ftp
为了避免安装是出现缺少mysql相关库文件,先提前创建mysql的库文件软件链接到系统库下
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib/
最后
make 
make install 
创建链接文件:ln -s /application/php5.3.27/ /application/php
四、php配置文件
      php在安装包中有两个配置文件:php.ini-development  php.ini-production  对比这两个文件,会发现区别在于生产的文件都是关闭的,1.基于用户体验  2.防止黑客
     1. 将生产配置文件拷贝到默认配置文件中,如下:
      [root@djw1 php-5.3.27]# cp php.ini-production  /application/php/lib/php.ini
     2.因为lnmp中,php是有自己的进程的,所以是fcgi模式自身起进程,所以有自己的一个php-fpm配置文件,这个配置文件是php-fpm.conf.default如下,修改即可
       

注意:启动php-fpm进程前,一定要启动nginx进程,查看php-fpm进程初始化如下:

启动成功!启动命令为 :/application/php/sbin/php-fpm -t     \/application/php/sbin/php-fpm

五、php整合nginx,在nginx中添加如下内容:

1)配置参数

[root@djw1 bbs]# cat /application/nginx/conf/extra/bbs.conf    
server {
        listen       80;
        server_name  bbs.etiantian.org;
            root   html/bbs;
            index  index.php index.html index.htm;
        
          location ~ .*\.(php|php5)?$
        {     
          fastcgi_pass  127.0.0.1:9000;  
          fastcgi_index index.php;
          include fastcgi.conf;
        }
   }

2)写入站点连接数据库

   [root@djw1 bbs]# cat ../../html/bbs/mysql.php
    <?php
       $link_id=mysql_connect('localhost','root','oldboy124') or mysql_error();
      if($link_id){
     echo "mysql successful by oldboy !\n";
     }else{
     echo mysql_error();
     }
    ?>

    3)测试

     1.直接用php引擎: /application/php/bin/php mysql.php

2.页面测试:

六、安装部署开源软件wiki测试:

1.数据库:

create  database wiki;

grant all on wiki.* to wiki@'localhost' identified by 'wiki';\

flush privileges;

2.下载开源软件:kaiyuan.baike.com ,复制链接后,wget下载

3.根据提示,输入必要的配置参数,就可以看到了,如下

三十八、LNMP潮流组合搭建的更多相关文章

  1. NeHe OpenGL教程 第三十八课:资源文件

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  2. spring boot / cloud (十八) 使用docker快速搭建本地环境

    spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...

  3. Java进阶(三十八)快速排序

    Java进阶(三十八)快速排序 前言 有没有既不浪费空间又可以快一点的排序算法呢?那就是"快速排序"啦!光听这个名字是不是就觉得很高端呢. 假设我们现在对"6 1 2 7 ...

  4. SQL注入之Sqli-labs系列第三十八关、第三十九关,第四十关(堆叠注入)

    0x1 堆叠注入讲解 (1)前言 国内有的称为堆查询注入,也有称之为堆叠注入.个人认为称之为堆叠注入更为准确.堆叠注入为攻击者提供了很多的攻击手段,通过添加一个新 的查询或者终止查询,可以达到修改数据 ...

  5. 微信小程序把玩(三十八)获取设备信息 API

    原文:微信小程序把玩(三十八)获取设备信息 API 获取设备信息这里分为四种, 主要属性: 网络信息wx.getNetWorkType, 系统信息wx.getSystemInfo, 重力感应数据wx. ...

  6. 《手把手教你》系列技巧篇(三十八)-java+ selenium自动化测试-日历时间控件-下篇(详解教程)

    1.简介 理想很丰满现实很骨感,在应用selenium实现web自动化时,经常会遇到处理日期控件点击问题,手工很简单,可以一个个点击日期控件选择需要的日期,但自动化执行过程中,完全复制手工这样的操作就 ...

  7. bp(net core)+easyui+efcore实现仓储管理系统——入库管理之二(三十八)

    abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...

  8. Deep learning:三十八(Stacked CNN简单介绍)

    http://www.cnblogs.com/tornadomeet/archive/2013/05/05/3061457.html 前言: 本节主要是来简单介绍下stacked CNN(深度卷积网络 ...

  9. 【FastDev4Android框架开发】打造QQ6.X最新版本号側滑界面效果(三十八)

    转载请标明出处: http://blog.csdn.net/developer_jiangqq/article/details/50253925 本文出自:[江清清的博客] (一).前言: [好消息] ...

随机推荐

  1. selumium 中 xpath获取文本、属性正确写法

    报错“The result of the xpath expression is: [object Attr]. It should be an element” yutube爬虫动态加载,需要用到s ...

  2. MySQL-复制技术演进过程

    复制技术的演进可以分为:基于数据安全的复制,基于效率的复制 基于数据安全的复制 异步复制 参考: https://baijiahao.baidu.com/s?id=163939455634386120 ...

  3. Android自定义View——多边形网格属性图

      1.初始化变量 2.属性图解   3.如果想切换到5.6.7边形等等,则必须修改下面几条数据 4.获取宽和高 5.绘制图形 1.开始画画前:我们要把画笔准备好,这里看代码就能明白意思了,接着把整个 ...

  4. shell教程<入门篇>

    由于我平时的工作环境是linux,所以无可避免的经常使用命令行模式和shell脚本,而且有些命令行每天都要输好多遍,比如ssh登录之类的,所以干脆把平时常用的命令都写成脚本文件,所以特意开了一个she ...

  5. Linux环境创建交换分区

    最近在准备在移动端跑一下深度学习训练好的模型,在RK3399的板子上安装scipy时报错.网上查了一下,由于内存不足导致,做个交换分区就搞定了.那么如何做交换分区呢.话不多说,直接开撸. ------ ...

  6. idea 2019.3 最新破解补丁和激活码,可破解至2089年!

    链接:https://blog.csdn.net/qq_42914528/article/details/85617901 上面方法失效了,请尝试以下方式激活(2020.1.6更新) idea激活码( ...

  7. 112.限制请求的method装饰器

    客户端与服务器之间最常用的两种请求方式: 1. GET请求一般是用来向服务器索取数据,但不会向服务器提交数据,不会对服务器的状态进行更改. 2.POST请求一般是用来向服务器提交数据,会对服务器的状态 ...

  8. hook截获自定义消息

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  9. Java 关于md5加密

    package com.mi.util; /** * md5+salt 长度为32的加密 * @author admin * */ public class MD5 { public static v ...

  10. Pytorch学习--编程实战:猫和狗二分类

    Pytorch学习系列(一)至(四)均摘自<深度学习框架PyTorch入门与实践>陈云 目录: 1.程序的主要功能 2.文件组织架构 3. 关于`__init__.py` 4.数据处理 5 ...