<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
MongoDB 是由 C++ 語言編寫的,是一個基於分散式檔案儲存的非關係型開源資料庫系統。其優勢在於可以存放海量資料,具備強大的查詢功能,是一個獨立的面向集合檔案形式的。
應用平臺:MongoDB 支援 Unix
Linux
Windows
等系統平臺。
MySQL 與 MongoDB 區別:
MySQL | 資料庫 | 資料表 | 資料 |
---|---|---|---|
MongDB | 資料庫 | 集合 | 檔案 |
儲存性:
面向集合:資料被分組儲存在資料集中,被稱為一個集合。
面向檔案:儲存在集合中的檔案,被儲存為鍵值對的形式。
高效二進位制資料儲存:使用二進位制格式儲存,可以儲存任何型別的資料物件。
操作性:
完全索引:可以在任意屬性上建立索引,包含內部物件。以提高查詢的速度。
強大的聚合工具:MongoDB 除了提供豐富的查詢功能外,還提供了強大的聚合工具,如 count
group
等。
支援 Perl
PHP
Java
C#
JavaScript
Ruby
Python
C
和 C++
語言的驅動程式。
可用性:
支援複製和資料恢復:MongoDB 支援主從複製機制,可以實現資料的備份、故障恢復、讀擴充套件等功能。而基於副本集的複製機制提供了自動故障恢復的功能,確保了叢集資料不會丟失。
自動處理分片:MongoDB 支援叢集自動切分資料,對資料進行切分可以使用叢集儲存更多的資料,實現更大的負載,也能保證儲存的負載均衡。
網站實時資料處理:它非常適合實時的插入、更新與查詢,並具備網站實時資料儲存所需的複製及高伸縮性。
快取:它適合作為資訊基礎設施的快取層。在系統重啟之後,由它搭建的持久化快取層可以避免下層的資料來源過載。
高伸縮性的場景:非常適合由數十臺或數百臺伺服器組成的資料庫。
不適用於的場景如下:
要求高度事務性的系統(例如:銀行和會計系統)傳統的商業只能應用。複雜的跨檔案(表)級聯查詢。
邏輯結構:
檔案 document
:存放的資料。
集合 collection
:由多個檔案組成,相當於表,但不同的是集合是無固定架構。
資料庫 database
:多個集合組成的資料庫。
物理結構:
.wt
檔案:每個表或索引對應一個名稱空間,資料量增加,檔案數量增多,儲存了分配和正在使用的磁碟空間。
資料檔案:存放資料的實體,並且使用預分配空間機制。
紀錄檔檔案:系統紀錄檔檔案、journal
紀錄檔檔案(用於 MongoDB 崩潰恢復的保障)、oplog
複製操作紀錄檔檔案(相當於 MySQL 的 BinLog 檔案)、慢查詢紀錄檔(查詢操作超出指定時間的語句)
物理結構就是真正存放資料的位置。
主機名 | 作業系統 | IP 地址 | 版本 |
---|---|---|---|
MongoDB | CentOS 7.4 | 192.168.1.1 | mongodb-linux-x86_64-rhel70-4.4.5.tgz |
[root@MongoDB ~]# ulimit -n 25000 # 同一時間最多開啟的檔案數 [root@MongoDB ~]# ulimit -u 25000 # 使用者最多開啟的程式數目 [root@MongoDB ~]# echo 0 > /proc/sys/vm/zone_reclaim_mode # 設定核心引數. 當某個節點記憶體不足時可以借用其它節點的記憶體 [root@MongoDB ~]# sysctl -w vm.zone_reclaim_mode=0 vm.zone_reclaim_mode = 0 [root@MongoDB ~]# echo never > /sys/kernel/mm/transparent_hugepage/enabled [root@MongoDB ~]# echo never > /sys/kernel/mm/transparent_hugepage/defrag
因為下面安裝的版本為 4.4.5
,而 MongoDB 4
版本以上的 /bin
目錄中的工具進行了分離,所以需要安裝:傳送門
[root@MongoDB ~]# tar xf mongodb-database-tools-rhel70-x86_64-100.3.1.tgz
[root@MongoDB ~]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.5.tgz [root@MongoDB ~]# tar xf mongodb-linux-x86_64-rhel70-4.4.5.tgz [root@MongoDB ~]# mv mongodb-linux-x86_64-rhel70-4.4.5 /usr/local/mongodb [root@MongoDB ~]# mv mongodb-database-tools-rhel70-x86_64-100.3.1/bin/* /usr/local/mongodb/bin/ [root@MongoDB ~]# echo "export PATH=/usr/local/mongodb/bin:$PATH" >> /etc/profile [root@MongoDB ~]# source /etc/profile
[root@MongoDB ~]# mkdir /usr/local/mongodb/{data,logs,conf} [root@MongoDB ~]# touch /usr/local/mongodb/logs/mongodb.log [root@MongoDB ~]# chmod 777 /usr/local/mongodb/logs/mongodb.log [root@MongoDB ~]# cat <<END > /usr/local/mongodb/conf/mongodb.conf bind_ip=192.168.1.1 port=27017 dbpath=/usr/local/mongodb/data/ logpath=/usr/local/mongodb/logs/mongodb.log logappend=true # 紀錄檔以檔案追加的方式寫入 fork=true # 通過後臺執行 MongoDB 服務 maxConns=5000 # MongoDB 最大連線數 END
[root@MongoDB ~]# mongod -f /usr/local/mongodb/conf/mongodb.conf # 啟動 MongoDB 服務 [root@MongoDB ~]# mongo 192.168.1.1:27017 # 登入驗證 [root@MongoDB ~]# mongod -f /usr/local/mongodb/conf/mongodb.conf --shutdown # 關閉 MongoDB 服務 [root@MongoDB ~]# vim /etc/init.d/mongodb #!/bin/bash case "$1" in start) /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb.conf;; stop) /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb.conf --shutdown;; restart) /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb.conf --shutdown /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/mongodb.conf;; esac [root@MongoDB ~]# chmod +x /etc/init.d/mongodb # 新增執行許可權 [root@MongoDB ~]# /etc/init.d/mongodb start # 啟動
登入驗證
[root@MongoDB ~]# mongo 192.168.1.1:27017 # 登入 MongoDB 資料庫 (預設在 test 庫中) > show databases # 檢視資料庫中所有庫 admin 0.000GB config 0.000GB local 0.000GB > db.getName() # 檢視當前登入庫 test
MongoDB 安裝完後的預設 4 個庫:
admin
:存放了有關資料庫賬號的相關資訊。
config
:用於分片叢集環境,存放分片相關的後設資料資訊。
local
:用於儲存限於本地單臺伺服器的任意集合(因為該庫並不會被複制到從節點,簡單來說就是沒有冗餘性)
test
:MongoDB 預設建立的一個測試庫,連線 MongoDB 服務時,如果不指定連線的具體資料庫,預設就會連線到 test
庫。
以上就是MongoDB資料庫部署環境準備及使用介紹的詳細內容,更多關於MongoDB資料庫部署環境準備的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45