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. Linux下SVN安装配置和使用中遇到的问题

    两个命令: svn info :显示版本库信息,svn的下载url等. svn co https://xxxxx/xxx   wodemulu   (通过我的目录制定co的文件夹) svn st:显示 ...

  3. linux下keepalived 安装配置

    keepalived是一个类似于layer3, 4 & 7交换机制的软件,也就是我们平时说的第3层.第4层和第7层交换.Keepalived的作用是检测web服务器的状态,如果有一台web服务 ...

  4. Linux下ejabberd安装配置

    1.下载Ejabberd安装包 wget http://www.process-one.net/downloads/ejabberd/2.1.13/ejabberd-2.1.13-linux-x86_ ...

  5. Linux下SVN安装配置

      第一章 安装 1. 采用源文件编译安装.源文件共两个,为:subversion-1.6.1.tar.gz (subversion 源文件)subversion-deps-1.6.1.tar.gz ...

  6. linux下如何安装配置redis及主从配置

    redis的优点:支持主从备份,操作指令丰富,支持异步的数据持久化 将 redis 安装到 /usr/local/webserver/redis 1.下载安装包 wget http://redis.g ...

  7. Linux下SVN安装配置以及使用

    第一章 安装 1. 采用源文件编译安装.源文件共两个,为: subversion-1.6.21.tar.gz(subversion 源文件) subversion-deps-1.6.21.tar.gz ...

  8. linux下Nginx 安装配置

    Nginx 安装 一.首先要安装 PCRE PCRE 作用是让 Ngnix 支持 Rewrite 功能. 1.下载 PCRE 安装包,下载地址: http://downloads.sourceforg ...

  9. Linux下SVN安装配置全程实录(转)

    一.安装SVN默认安装到/usr/local/bin下面 二.创建仓库 svnadmin create /home/svnrepo /root/svnrepo为所创建仓库的路径,理论上可以是任何目录 ...

随机推荐

  1. Ubuntu下配置apache开启https

    一.HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,比http协议安全. 那ht ...

  2. Django知识点整理

    什么是web框架 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. web应用 访 ...

  3. js实现九九乘法表

    <script type="text/javascript"> var sum=0; var wite; for (var i = 1; i < 10; i++) ...

  4. 【改】iOS学习之NSAttributedString(富文本)

    NSAttributedString 叫做富文本,是一种带有属性的字符串,通过它可以轻松的在一个字符串中表现出多种字体.字号.字体大小等各不相同的风格,还可以对段落进行格式化,一般都是对可变富文本(N ...

  5. HTML5--div、span超出部分省略号显示

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. [版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题

    问题起因:某一天下午,团队成员在向svn服务端提交新内容,突然整栋楼断电了,自然,提交的过程被中断了.当时,还没有什么想法. 等有电后,另外一同事在update项目时,发现无法正常使用svn,一直报异 ...

  7. iOS开发中常用到的宏定义

    1.首次启动判断: #define First_Launched @"firstLaunch" 2.ios7系统判断: #define IsIOS7 ([[[UIDevice cu ...

  8. Uva 11324 最大团

    题目链接:http://vjudge.net/contest/141990#problem/B 题意: 给一张有向图G,求一个结点集数最大的结点集,是的该结点集中任意两个结点 u 和 v,满足: 要么 ...

  9. 如何做好IT运营.

    定义IT管理的重点在于业务策略与 IT 部门提供的服务之间的一致性.IT 管理可建立必要的管理机制来确保可预测的 IT 服务交付,从而确保业务流程和 IT 流程之间的联系.IT 管理传统上属于CIO. ...

  10. GIS开源软件大全

    3 - F 3map:行星地球项目由3map驱动,这是一个自由软件,由Telstra宽带基金会创建并支持,提供客户端与服务器的能力以在线再现虚拟地球. Amein!:其界面介于ArcMap和UMN M ...