Web服务器:

IP地址:192.168.21.127

PHP安装路径:/usr/local/php

实现目的:

安装PHP的MongoDB数据库扩展,通过PHP程序连接MongoDB数据库

具体操作:

一、安装PHP的MongoDB数据库扩展(在Web服务器192.168.21.127上操作)

下载地址:http://pecl.php.net/get/mongo-1.5.1.tgz

上传mongo-1.5.1.tgz到/usr/local/src目录

tar  zxvf mongo-1.5.1.tgz  #解压

cd mongo-1.5.1

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make  #编译

make install  #安装,完成之后出现下面的界面

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链

/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/

vi /usr/local/php/etc/php.ini  #编辑,在最后一行添加下面的代码

extension="mongo.so"

:wq! #保存退出

service php-fpm reload  #重新加载php-fpm

在站点根目录下添加php测试页面

vi /usr/local/nginx/html/phpinfo.php  #编辑

<?php

phpinfo();

?>

:wq!  #保存退出

打开上面的页面,http://192.168.21.127/phpinfo.php

如下图所示:

二、创建测试数据库(在MongoDB数据库服务器操作)

在mongodb上执行

cd /usr/local/mongodb/bin/

./mongo  #进入数据库

#创建数据库:osyunweidb,在数据库中新建表,插入数据

use osyunweidb  #创建数据库osyunweidb 如果什么都不操作离开的话,这个库就会被系统删除

db.createCollection("osyunweidb_table")  #创建表osyunweidb_table

show collections  #查看

db.osyunweidb_table.insert({uid:1,name:"系统运维",url:"http://www.osyunwi.com",content:"系统运维官方网站"})  #插入数据到表osyunweidb_table中

db.osyunweidb.find();

show dbs

三、创建数据库账号(在MongoDB数据库服务器操作)

===============================================================

1、MongoDB数据库默认没有用户名和密码,只要连接上服务,就能登录,进行所有操作。

2、可以通过配置文件设置,开启登录验证功能。

3、只有切换到admin数据库,添加的账号才是管理员账号。

4、管理员账号可以对MongoDB服务器所有数据库进行管理(但是:默认只能管理自己的admin数据库,要管理其他数据库,需要先在admin数据库中进行认证)

===============================================================

#添加普通账号

cd /usr/local/mongodb/bin/

./mongo  #进入数据库

use osyunweidb

db.addUser('osyunweidbuser','123456')  #账号:osyunweidbuser 密码:123456 权限:读写

#db.addUser('osyunweidbuser','123456',true)  #账号:osyunweidbuser 密码:123456 权限:只读

db.auth('osyunweidbuser','123456') #添加用户认证

exit #退出

#添加管理员账号

cd /usr/local/mongodb/bin/

./mongo  #进入数据库

show dbs  #列出所有数据库

use admin  #切换到admin数据库,添加的账号才是管理员账号。

show collections

db.system.users.find()

db.addUser('root','123456')  #添加管理员账号:root 密码:123456

db.auth('root','123456') #添加管理员用户认证,认证之后才能管理所有数据库

exit  #退出

###############################################################

#删除数据库、删除表操作

cd /usr/local/mongodb/bin/

./mongo

use osyunweidb #进入数据库

db.dropDatabase()  #删除数据库

db.osyunweidb_table.drop() #删除表

db.removeUser('osyunweidbuser')  #删除用户

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容©版权所有,转载请注明出处及原文链

###############################################################

四、设置MongoDB配置文件,开启登录验证功能(在MongoDB数据库服务器操作)

vi /usr/local/mongodb/mongodb.conf  #编辑配置文件

auth=true  #开启认证

:wq!  #保存配置

service mongod stop  #停止

service mongod start  #启动

cd /usr/local/mongodb/bin/

./mongo -uosyunweidbuser -p123456  127.0.0.1:27017/osyunweidb  #进入mongodb控制台

exit #退出

cd /usr/local/mongodb/bin/

./mongo  -uroot -p123456 127.0.0.1:27017/admin

db.system.users.find()

use osyunweidb

show collections

exit  #退出

五、php连接测试数据库(在Web服务器192.168.21.127上操作)

vi /usr/local/nginx/html/test.php

<?php

$mongo = new Mongo("192.168.21.130:27017");  #连接数据库服务器

$db = $mongo->selectDB('osyunweidb');  #连接数据库

$db->authenticate("osyunweidbuser","123456");  #数据库连接账号和密码

$collection = $db->selectCollection("osyunweidb_table");  #选择数据库中的表

$result = $collection->find(); #读取数据

foreach($result as $value){  #输出数据

print_r($value);

}

echo "<br>";

foreach($result as $value){

echo "序号:".$value["uid"]."<br>";

echo "网站名称:".$value["name"]."<br>";

echo "URL:".$value["url"]."<br>";

echo "备注:".$value["content"]."<br>";

}

$mongo->close();

?>

打开页面http://192.168.21.127/test.php如下图所示,说明数据库连接成功。

至此,Linux下PHP安装配置MongoDB数据库连接扩展完成。

扩展阅读:

MongoDB数据库客户端工具

MongoVUE,如下图所示:

MongoDB 使用 奇数版本号作为开发版本。

MongoDB主要有三个A,B,C版本

  • A 是主要版本. 功能上要么不变要么就做很大的改动。
  • B 是发行版本号. 这种版本经常更新功能,包括一些新的特性并且常常不向后兼容。偶数是稳定版本,奇数是开发版本。
  • C 版本号是用来修改BUG和安全性。

For example:

  • 1.0.0 : 第一个发行版。
  • 1.0.x : 修改1.0.x的BUG - 建议更新这个版本,风险比较小。
  • 1.1.x : 开发版本。包含了一些新的特性,也许还没有完全开发完毕。较1.0变化很大。
  • 1.2.x : 第二个发行版。是基于1.1.x的版本。

Linux下PHP安装配置MongoDB数据库连接扩展的更多相关文章

  1. linux下php7安装memcached、redis扩展

    linux下php7安装memcached.redis扩展 1.php7安装Memcached扩展 比如说我现在使用了最新的 Ubuntu 16.04,虽然内置了 PHP 7 源,但 memcache ...

  2. VMware Linux 下 Nginx 安装配置 - nginx.conf 配置 [负载两个 Tomcat] (三)

    首先启动Nginx 1. 相关浏览 两个 Tomcat 配置:  VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二) Nginx 安装配置启动: VMware Linu ...

  3. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  4. Linux下git安装配置

    一.Linux下git安装配置 2013-07-28 20:32:10|  分类: 默认分类 |  标签:linux  git  server  |举报|字号 订阅     http://abomby ...

  5. JDK1.6在LINUX下的安装配置[转]

    JDK1.6在LINUX下的安装是如何进行的呢,让我们开始我们的演示: Ubuntu Linux下jdk的安装与配置 1.JDK1.6安装准备 从sun公司网站www.sun.com下载linux版本 ...

  6. (实用)Linux下Eclipse安装配置PyDev

    记录备忘. PyDev是Eclipse下支持Python开发的IDE插件,本文介绍安装和配置PyDev插件的过程. 一.安装PyDev插件两种安装方法: 1.在eclipse的Help->Ins ...

  7. Linux下Tomcat安装配置

    买了台阿里云服务器,因为配置比较低,所以用Linux系统,这里记录一下我在Linux系统中Tomcat的安装配置. 前提JDK已经安装好. 安装 首先在/usr/local/下建立一个tomcat的文 ...

  8. Linux下,安装配置Weblogic

    环境说明 系统 -- Linux RHEL5 32bit 环境 -- 局域网中在192.168.0.140(windows)通过xshell连接服务器 软件 -- 1.JDK:1.5.0_15  2. ...

  9. Linux下Mycat安装配置和使用

    mysql安装下载mysql[百度云]tar -zxvf mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz 解压把mysql文件夹移动到 /usr/local/ 下m ...

随机推荐

  1. Jmeter命令行运行实例讲解

    1. 简介 使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资 本文介绍windows下以命令行模式运行的方法. 1.1. 命令介绍 jmeter -n -t & ...

  2. Lenovo k860i 移植Android 4.4 cm11进度记录【下篇--实时更新中】

    2014.8.24 k860i的cm11的移植在中断了近两三个月之后又開始继续了,进度记录的日志上一篇已经没什么写的了,就完结掉它吧,又一次开一篇日志做下篇好了.近期的战况是,在scue同学的努力之下 ...

  3. Unity用户自定义圆角头像

    前天朋友遇到一个这样的需求,而且比较棘手让我帮忙解决.需求就是棋牌类的游戏,玩家的个人资料中包括自己的头像而且可以浏览相册中的图片或者使用相机拍照设置.关于这个问题我也查阅一些资料,由于涉及安卓部分知 ...

  4. DataGrid( 数据表格) 组件[4]

    本节课重点了解 EasyUI 中 DataGrid(数据表格)组件的使用方法,这个组件依赖于Panel(面板).Resizeable(调整大小).LinkButton(按钮).Pageination( ...

  5. JS客户端读取Excel文件插件js-xls使用方法

    js-xls是一款客户端读取Excel的插件,亲测IE11.FireFox.Chrome可用,读取速度也客观. 插件Demo地址:http://oss.sheetjs.com/js-xlsx/    ...

  6. 关于CSRF攻击及mvc中的解决方案 [ValidateAntiForgeryToken]

    http://blog.csdn.net/luck901229/article/details/8261640

  7. Xcode简易基础篇,以新手角度去操作

    声明:此Newlife XCode非Mac的XCode,避免误会. 日常用的Newlife X组件的相关资源,不限于XCode,只是以XCode组件为主: 1.QQ群:1600800 2.博客 : h ...

  8. oracle获得每周,每月,每季度,每年的第一天

    当前年月日 SELECT trunc(sysdate) , trunc(sysdate,'dd') FROM dual   当年第一天 SELECT trunc(sysdate,'yyyy') FRO ...

  9. GridView Footer页脚统计实现多行

    在使用GridView时有时会需要多行显示页脚Footer的统计,下面是一种解决方法,仅仅供各位参考 在GridView的RowCreated事件中添加多行页脚,实例代码如下: protected v ...

  10. 3步学会用gulp

    1.安装gulp 安装gulp到全局:npm install -g gulp 安装gulp到某个项目:npm install --save gulp 注意:请先安装nodejs(自带npm) 2.创建 ...