通过php的MongoDB driver连接Azure的DocumentDB PaaS

Azure的DocumentDB是NoSQL类型的数据库。它还可以和目前流行的mongodb兼容,采用mongodb的driver可以直接连接Azure的DucumentDB。

目前在国内的Azure上,DocumentDB已经正式商用了,兼容mongodb的版本目前还在preview阶段。

本文将介绍如何创建,并通过php的mongodb的driver连接documentDB。

一 在Azure的管理界面上创建DocumentDB:

1 点击portal左上角的"+"号,然后输入documentdb,回车:

2 选择DucumentDB-Protocol Support for MongoDB (preview):

中间出现需要accept preview的选项,按接受。

3 点击Create后出现如下对话框,按所需内容进行填写:

4 几分钟后可以看到创建的DocumentDB已经上线:

5 创建db和collection:

点击创建的DocumentDB,在Overview中选择add database:

输入database的名字:

创建成功后,点击这个database:

进入到Database后,点击add collection:

在出现的对话框中输入:

可以根据自己的需要,选择相应performance的服务。

几秒钟,collection就创建好了。

6 记录链接字符串,在DocumentDB的中有一个选项叫Connection String,点击,并复制connection string:

二 在CentOS上安装php mongo driver

1 创建epel和mongo的repo

在/etc/yum.repos.d下,增加两个文件:

Epel.repo
[epel]
name=epel
baseurl=http://mirrors.sohu.com/fedora-epel/6/$basearch
enabled=1
gpgcheck=0
mongo.repo
[mongodb-org-2.6]
name=MongoDB 2.6 Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1

2 yum安装相应的软件:

yum install httpd -y
yum install php -y
yum install php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath libmcrypt -y
yum install openssl-devel -y
yum install -y mongodb-org
yum install php-pecl-mongo

php-pecl-mongo也可以采用手工的安装方式:

下载mongodb扩展

wget http://pecl.php.net/get/mongodb-1.1.8.tgz
tar vxf mongodb-1.1.8.tgz
mv mongodb-1.1.8 /usr/local/php-mongodb
cd /usr/local/php-mongodb/
./configure --with-php-config=/usr/bin/php-config
Make && make install
echo ‘extension = mongo.so‘ > /etc/php.d/mongodb.ini

但这种安装需要注意各个版本的兼容关系。

3 在php中建立与DocumentDB的连接

在/var/www/html中创建index.php

<?php
//phpinfo();
  $mongo = new mongo(‘mongodb://hipomdb01:[email protected]:10250/?ssl=true‘);
  var_dump($mongo);
  echo "<br>";
  $mongodb = $mongo->mydb;
  var_dump($mongodb);
  echo "<br>";
  $collection = $mongodb->selectCollection(‘stu‘);
  var_dump($collection);
  for ($i=0; $i<=200; $i++){
    $array= array(‘_id‘=>$i+1,‘sn‘=>$i+1,‘name‘=>‘zhang san‘+$i,‘gender‘=>‘male‘,‘age‘=>8);
    $collection->insert($array); }
  echo "<br>";
  echo ‘count:‘ .$collection->count()."<br>";
?>

通过浏览器进行浏览,看到如下内容:

说明数据已经插入成功。

时间: 2024-10-11 05:55:44

通过php的MongoDB driver连接Azure的DocumentDB PaaS的相关文章

MongoDB.Driver 2.4以上版本 在.NET中的基本操作

MongoDB.Driver是操作mongo数据库得驱动,最近2.0以下版本已经从GitHub和Nuget中移除了,也就是说.NET Framework4.0不再能从官方获取到MongoDB得驱动了,其次MongoDB.Driver2.0开始API变更巨大,本文不适用MongoDB.Driver2.0以下版本,亦不适用.NET Framework4.5以下版本 要在.NET中使用MongoDB,就必须引用MongoDB的驱动,使用Nuget安装MongoDB.Driver是最方便得,目前Nuge

MongoDB 3.0 关于安全认证后使用C#调用碰上“System.TimeoutException”类型的异常在 MongoDB.Driver.Core.dll 中发生的相关问题

"System.TimeoutException"类型的异常在 MongoDB.Driver.Core.dll 中发生,但未在用户代码中进行处理 操作MongoDB类库版本: ---------------------------------------------- MongoDB.Driver 2.3 MongoDB.Driver.Core 2.3 MongoDB.Bson 2.3 MongoDB 版本 3.0 连接字符串的相关变化: -----------------------

Mongodb.Driver操作MongoDB

上一篇博客主要介绍了MongoDB和它的的使用场景,这篇文章主要介绍一下如何用C#如何借助官方的Mongodb.Driver操作MongoDB 1.NuGet引入Mongodb.Dirver 安装后项目中会新增如下dll MongoDB.Driver.dll:顾名思义,驱动程序 MongoDB.Bson.dll:序列化.Json相关 2.初始化集合,子类需重写集合名 #region 构造函数 /// <summary> /// 集合 /// </summary> public st

使用PowerShell 连接Azure

除了使用门户登入外,还可以使用PowerShell的方式来连接Azure.首先要去下载组件 http://azure.microsoft.com/en-us/downloads/?rnd=1 http://www.windowsazure.cn/downloads/#cmd-line-tools 一个是国际版的,一个是国内版,工具版本相同. 通过Web Platform Installer 来集成安装其实会根据不同操作系统安装一些组件,以下是在Window 10下需要安装的部分 查看是否有这个m

MongoDB的连接字符串

本文导读:MongoDB数据库与传统的关系型数据库相比,它具有操作简单.完全免费.源码公开等特点,这使MongoDB产品广泛应用于各种大型门户网站和专业网站.由于MongoDB连接并不支持HTTP协议,所有你不能直接通过浏览器访问MongoDB,下面详细介绍MongoDB中连接字符串的编写 一.MongoDB连接字符串常用格式 mongodb://[username:[email protected]]host1[:port1][,host2[:port2],…[,hostN[:portN]]]

windows azure创建及连接azure SQL数据库服务

数据库对于一个企业来说是至关重要的,业务信息基本上都是存储在数据库中.传统的搭建数据库过程中企业需要采购硬件,数据库软件,部署配置等等操作,且数据库在实际生产环境中运行之后,后期的版本及补丁等更新都使生产环境数据库面临停机风险,使用windows azure云端数据库能够简单快速的创建一个满足需求的数据库,且对于用户来说无需担心版本更新及补丁更新等问题. Windows azure部署数据库有两种方式,一种就是在azure虚拟机上安装SQL数据库,这个数据库需要用户自己维护和配置等.第二种是wi

java操作mongodb(连接池)(转)

原文链接: java操作mongodb(连接池) Mongo的实例其实就是一个数据库连接池,这个连接池里默认有10个链接.我们没有必要重新实现这个链接池,但是我们可以更改这个连接池的配置.因为Mongo的实例就是一个连接池,所以,项目中最好只存在一个Mongo的实例. 常见的配置参数: connectionsPerHost:每个主机的连接数 threadsAllowedToBlockForConnectionMultiplier:线程队列数,它以上面connectionsPerHost值相乘的结

mongodb远程连接配置

mongodb远程连接配置如下: 1.修改mongodb的配置文件,让其监听所有外网ip 命令:vim /etc/mongodb.conf bind_ip=127.0.0.1,这一行注释掉或者是修改成 bind_ip = 0.0.0.0 port = 27017,这一行为监听端口 auth=False,这一行为登陆验证 2.重启mongodb服务 命令:/etc/init.d/mongodb restart 2.1防火墙开放27017端口 命令:iptables -A INPUT -p tcp

基于MongoDB.Driver的扩展

由于MongoDB.Driver中的Find方法也支持表达式写法,结合[通用查询设计思想]这篇文章中的查询思想,个人基于MongoDB扩展了一些常用的方法. 首先我们从常用的查询开始,由于MongoDB.Driver支持类似于AutoMapper返回的指定属性(Project<TDto>方法),所以这里都是基于泛型的扩展 /// <summary> /// 同步查询指定条件的数据,并且返回指定类型TDto /// </summary> /// <typeparam