Mongodb安装篇(Windows10,Mongodb4.0.1)

Mongodb安装篇

Linux安装参考:https://blog.csdn.net/gaokcl/article/details/83587077

最後在文章后面,介绍Windows10下  php7的扩展与安装,亦可以参考:https://blog.csdn.net/xiaoxiong_web/article/details/78350316

wamp安装php的MongoDB扩展:https://blog.csdn.net/qq_33210743/article/details/81533980

php+ MongoDB 增删改查  https://blog.csdn.net/gaokcl/article/details/85274958

0,Windows10下MongoDB环境变量配置:

 1,在环境变量 Path 后面增加 ;D:\wamp64\bin\php\php7.0.10

 C:\Users\idea\AppData\Local\Microsoft\WindowsApps;D:\wamp64\bin\php\php7.0.10

 2,下载  mongodb.dll  放在 wamp 安装目录 的

   D:\wamp64\bin\php\php5.6.25\ext
   D:\wamp64\bin\php\php7.0.10\ext

 3,下载  mongodb.dll 的版本 要特别注意

   重点:wamp环境PHP安装mongodb扩展:

   下载地址:  http://pecl.php.net/package/mongo    选择符合自己版本的

   php.ini:  extension=php_mongo.dll    或者  extension=php_mongodb.dll  (下载dll的决定的)

   Path 后面增加 ;D:\wamp64\bin\php\php7.0.10

 参考: https://blog.csdn.net/longyakun666/article/details/79880721       # 下载以及安装介绍的比较详细

1,下载MongoDB:

 地址:https://www.mongodb.com/dr/fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-4.0.0-signed.msi/download

2,安装 Mongodb

 1,安装位置 :D:\Program Files\MongoDB\Server\4.0  (选择next,Custom(自定义))

 2,文件夹配置:D:\Program Files\MongoDB\Server\4.0  
 我自定义安装D 盘下,进入到MongoDB\Server\4.0 下创建DATA文件夹(一般是有了,不要创建),
 文件夹内创建DB,DB内创建mongo.log。

 复制路径1  D:\Program Files\MongoDB\Server\4.0\data\db\

 复制路径2  D:\Program Files\MongoDB\Server\4.0\data\db\logs\mongo.log  # 备用

3,shift + 右击打开cmd 或者win+r 切换路径到
      d:

      cd  D:\Program Files\MongoDB\Server\4.0\bin\  # 这里切换到,输入 mongod,可以使用了

4,开始配置文件:mongod --dbpath D:\Program Files\MongoDB\Server\4.0\data\db\ 

    port=27017    和   http://localhost:27017/   :

    安装配置成功,运行http://localhost:27017/  显示:
    It looks like you are trying to access MongoDB over HTTP on the native driver port. 

5,注意 cmd 打开的窗口不要关闭 

*************************************************** 最终效果图 **********************************************************************************

---- end  出现上述的,表示成功

3,每次命令行模式启动太麻烦,有没有更简洁的方法呢?

  管理员模式启动cmd:

  切换默认路径到  D:\Program Files\MongoDB\Server\4.0\bin>

  把下面的指令输入/copy后回车,

  mongod --bind_ip 0.0.0.0 --logpath D:\Program Files\MongoDB\Server\4.0\data\db\logs\mongo.log --logappend --dbpath D:\Program Files\MongoDB\Server\4.0\data\db --port 27017 --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

  ****注释:
  --bind_ip 0.0.0.0 任意ip,log环境变量配置  -logappend log追加方式写入
  ,mongoDB的环境变量配置,端口、服务名、安装配置,然后回车

  *****************************************************************           

  接下来到WIndows系统服务里查看mongoDB服务是否启动,未启动就启动它,到浏览器输入http://localhost:27017/ 回车,查看启动成功没

  指令模式太繁琐,试试Robomongo,下载地址见上面,下载后正常安装就好,配合python、redis可以浪了

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

Windows10下  php7扩展添加

打开网址:https://pecl.php.net/package/mongodb          #到外网(国内有可能不能访问)
选择适合自己的版本 
打开php.ini 添加

extension=php_mongodb.dll

windows环境下查看是否安装成功

php -m|findstr mongodb
mongodb

php7需要使用全新的api,只支持MongoDB。只能写原生的SQL,使用起来非常不方便。 
Mongo官网使用php封闭的一个扩展可以兼容原先的Mongo扩展,使用开发效率有很大的提升。

https://github.com/mongodb/mongo-php-library


写个测试例子

$bulk = new MongoDB\Driver\BulkWrite();
$bulk->insert(['_id' => 1, 'x' => 1]);
$bulk->insert(['_id' => 2, 'x' => 2]);

$bulk->update(['x' => 2], ['$set' => ['x' => 1]], ['multi' => false, 'upsert' => false]);
$bulk->update(['x' => 3], ['$set' => ['x' => 3]], ['multi' => false, 'upsert' => true]);
$bulk->update(['_id' => 3], ['$set' => ['x' => 3]], ['multi' => false, 'upsert' => true]);

$bulk->insert(['_id' => 4, 'x' => 2]);

$bulk->delete(['x' => 1], ['limit' => 1]);

$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 100);
$result = $manager->executeBulkWrite('db.test', $bulk, $writeConcern);

printf("Inserted %d document(s)\n", $result->getInsertedCount());
printf("Matched  %d document(s)\n", $result->getMatchedCount());
printf("Updated  %d document(s)\n", $result->getModifiedCount());
printf("Upserted %d document(s)\n", $result->getUpsertedCount());
printf("Deleted  %d document(s)\n", $result->getDeletedCount());

foreach ($result->getUpsertedIds() as $index => $id) {
    printf('upsertedId[%d]: ', $index);
    var_dump($id);
}

/* If the WriteConcern could not be fulfilled */
if ($writeConcernError = $result->getWriteConcernError()) {
    printf("%s (%d): %s\n", $writeConcernError->getMessage(), $writeConcernError->getCode(), var_export($writeConcernError->getInfo(), true));
}
 

你可能感兴趣的:(MongoDB)