您好,登錄后才能下訂單哦!
MongoDB是一跨平臺、面向文檔的數據庫。可以實現高性能、高可用性,并且能夠輕松擴展。是一個基于分布式文件存儲的開源數據庫系統,在高負載的情況下,添加更多的節點,可以保證服務器性能。
MongoDB也是一個介于關系數據庫和非關系數據庫之間的產品,是非關系數據庫當中功能最豐富,最像關系數據庫的。不采用關系模型主要是為了獲得更好的擴展性,MongoDB不再有“行”(row)的概念,其運行方式主要基于兩個概念:集合(collection)與文檔(document)。
MongoDB的特點包括面向集合存儲、模式自由、豐富的查詢語句和多級索引、復制集機制、易于水平擴展、可插入存儲引擎、跨平臺多語言支持等。
MongoDB安裝簡單,提供了面向文檔存儲功能,操作起來比較容易。
MongoDB提供了復制、高可用性和自動分片功能。如果負載增加(需要更多的存儲空間和更強的處理能力),它可以分布在計算機網絡中的其他節點上,這就是所謂的分片。
MongoDB支持豐富的查詢表達式。查詢指令使用JSON形式的標記,可輕易查詢文檔中內嵌的對象及數組。
MongoDB支持各種變成語言:Ruby、Python、Java、C++、PHP、C#等多種語言。
MongoDB可以為WEB應用提供可擴展的高性能數據存儲解決方案。MongoDB主要適用領域有網站數據、分布式場景、數據緩存和JSON文檔格式存儲。適合大數據量、高并發、弱事務的互聯網應用,其內置的水平擴展機制提供了幾百萬到十億級別的數據處理能力,可以很好的滿足Web2.0和移動互聯網應用數據存儲的要求。
SQL術語 | MongoDB術語 | 解釋/說明 |
---|---|---|
database | database | 數據庫 |
table | collection | 數據庫表/集合 |
row | document | 數據記錄行/文檔 |
column | field | 數據字段/域 |
index | index | 索引 |
table joins | 表連接,MongoDB不支持 | |
primary key | primary key | 主鍵,MongoDB自動將_id字段設置為主鍵 |
數據庫:一個MongoDB 實例可以承載多個數據庫。它們之間可以看作相互獨立,每個數據庫都有獨立的權限控制。在磁盤上,不同的數據庫存放在不同的文件中。MongoDB 中存在以下系統數據庫。
集合:集合就是一組文檔,類似于關系數據庫中的表。集合是無模式的,集合中的文檔可以是各式各樣的。在MongoDB中集合用collections表示,每個
collection用一個名字標識,需要注意以下幾點:
名字不允許是空字符串""
名字不能包含\0字符,因為它表示名字的結束
文檔:文檔是 MongoDB 中數據的基本單位,類似于關系數據庫中的行(但是比行復雜)。多個鍵及其關聯的值有序地放在一起就構成了文檔。
文檔中的鍵/值對是有序的。
文檔中的值不僅可以是在雙引號里面的字符串,還可以是其他幾種數據類型(甚至可以是整個嵌入的文檔)。
MongoDB區分類型和大小寫。
MongoDB的文檔不能有重復的鍵。
1.配置YUM源倉庫
cd /etc/yum.repos.d/
vim mongodb-org.repo
[mongodb-org]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
2.在線安裝MongoDB
yum install -y mongodb-org
3.修改配置文件
vim /etc/mongod.service
1 # mongod.conf
2
3 # for documentation of all options, see:
4 # http://docs.mongodb.org/manual/reference/configuration-options/
5
6 # where to write logging data.
7 systemLog:
8 destination: file
9 logAppend: true //使用追加方式寫日志
10 path: /var/log/mongodb/mongod.log //日志文件路徑
11
12 # Where and how to store data.
13 storage:
14 dbPath: /var/lib/mongo //數據存儲目錄
15 journal:
16 enabled: true
17 # engine:
18 # mmapv1:
19 # wiredTiger:
20
21 # how the process runs
22 processManagement:
23 fork: true # fork and run in background后臺運行
24 pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
25 timeZoneInfo: /usr/share/zoneinfo
26
27 # network interfaces
28 net:
29 port: 27017 //默認服務器端口號
30 bindIp: 0.0.0.0 //監聽地址
31
32
33 #security:
34
35 #operationProfiling:
36
37 #replication:
38
4.關閉防火墻和增強安全功能并開啟數據庫
systemctl stop firewalld.service
setenforce 0
systemctl start mongod.service
netstat -anpt | grep mongod
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 15252/mongod
5.進入數據庫并進行簡單的查看
mongo //進入數據庫
>db.version() //查看數據庫版本
>show dbs //查看所有庫
>db.getMongo() //查看當前數據庫機器的連接地址
在單臺服務器資源充分的情況下,可以使用多實例,以便充分使用服務器資源。操作如下:
cp -p /etc/mongod.conf /etc/mongod2.conf
vim /etc/mongod2.conf
...
path: /data/mongodb/mongod2.log
dbPath: /data/mongodb/mongo
...
port: 27018
...
mkdir -p /data/mongodb
mkdir /data/mongodb/mongo //創建對應的數據存儲目錄
touch /data/mongodb/mongod2.log //創建日志文件
chmod 777 mongod2.log
開啟mongodb2:
#mongod -f /etc/mongod2.conf
#mongo --port 27018
MongoDB shell version v3.6.6
...
>
#netstat -ntap
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 15252/mongod
tcp 0 0 0.0.0.0:27018 0.0.0.0:* LISTEN 3649/mongod
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。