MongoDB

来自testwiki
imported>TangZhi2025年3月13日 (四) 08:46的版本
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转到导航 跳转到搜索

Template:NoteTA Template:Infobox software

MongoDB是一種面向文档数据库管理系统,用C++等语言撰寫而成,介于关系型数据库和非关系型数据库之间,以解决应用程序开发社区中的大量现实问题。MongoDB由Template:Tsl(当时是10gen團隊)于2007年10月开发,2009年2月首度推出。2018年,MongoDB改成以Template:Link-en分发,不再属于开源软件

部署

MongoDB社区版是免费的,可获得为WindowsLinuxOS X二进制版本[1]。許多Linux套件管理系統曾经包含MongoDB的套件。2018年因许可证变更,MongoDB不再属于开源软件,DebianFedoraRed Hat Enterprise LinuxLinux发行版已從软件存储库中移除了MongoDB。[2][3]

MongoDB使用内存映射文件,32位元系統上限制大小為2GB的資料,64位元支持更大的資料。[4] MongoDB的核心构件只能在小端序系統上运行,客户端库可以在小端序和大端序的系統上运行[5]

語言支援

MongoDB有官方的驅動如下:C[6],C++[7],C#[8],Erlang[9],Haskell[10],Java[11],JavaScript[12],Lisp[13],fibjs[14],node.JS[15],Perl[16],PHP[17],Python[18],Ruby[19],Scala[20],Go[21],Rust[22]

目前還有許多非官方式的驅動,ColdFusion,[23] Delphi,[24] Erlang,[25][26] Factor,[27] Fantom,[28] Go,[29] JVM languages (Clojure, Groovy [30], Scala, etc.),[31] Lua,[32] HTTP REST,[33] Racket,[34]和Smalltalk.[35]

複製

MongoDB的開發人員可以保證一個操作已被複製到至少N個伺服器上每個運行的基礎。

主從式

由於操作都是在主机,從機將複製任何更改的數據。

例如:starting a master/slave pair locally:

$ mkdir -p ~/dbs/master ~/dbs/slave
$ ./mongod --master --port 10000 --dbpath ~/dbs/master
$ ./mongod --slave --port 10001 --dbpath ~/dbs/slave --source localhost:10000

副本集

副本集類似於主從式架構,但他們結合的能力為副機,如果當前一直遲緩時,選出新的主機。

管理與圖形化介面

監視

支援MongoDB的監視插件:

GUIs

目前較受歡迎的UI有:

  • Robo 3T (原Robomongo)[39] – 这是一个C++Qt写成的跨平台桌面程序。
  • Fang of Mongo[40] –這是一個網頁式的界面,由Django和jQuery所構成.
  • Futon4Mongo[41] – a clone of the CouchDB Futon web interface for MongoDB.
  • Mongo3[42] – Ruby寫成的介面.
  • MongoHub[43] –一個OS X應用程式.
  • Opricot[44] – a browser-based MongoDB shell,由PHP撰寫而成.
  • Database Master MongoDB Tool for Windows
  • RockMongo Best PHP MongoDB Administrator轻量级,支持多国语言。
  • MongoVUE Download CS,图形界面,封装较好。
  • MongoDB Compass,MongoDB官方的跨平台GUI。

著名用戶

參見

参考文献

Template:Reflist

外部連結

Template:- Template:NoSQL Template:Database Template:Node.js