91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何部署MongoDB數據庫應用

發布時間:2022-03-21 15:38:21 來源:億速云 閱讀:203 作者:iii 欄目:開發技術

這篇文章主要介紹了如何部署MongoDB數據庫應用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇如何部署MongoDB數據庫應用文章都會有所收獲,下面我們一起來看看吧。

一、MongoDB 簡介

MongoDB 是由 C++ 語言編寫的,是一個基于分布式文件存儲的非關系型開源數據庫系統。其優勢在于可以存放海量數據,具備強大的查詢功能,是一個獨立的面向集合文檔形式的。

應用平臺:MongoDB 支持 Unix Linux Windows 等系統平臺。

MySQL 與 MongoDB 區別:

MySQL數據庫數據表數據
MongDB數據庫集合文檔

1.MongoDB 特點

存儲性:

面向集合:數據被分組存儲在數據集中,被稱為一個集合。

面向文檔:存儲在集合中的文檔,被存儲為鍵值對的形式。

高效二進制數據存儲:使用二進制格式存儲,可以保存任何類型的數據對象。

操作性:

完全索引:可以在任意屬性上建立索引,包含內部對象。以提高查詢的速度。

強大的聚合工具:MongoDB 除了提供豐富的查詢功能外,還提供了強大的聚合工具,如 count group 等。

支持 Perl PHP Java C# JavaScript Ruby Python CC++ 語言的驅動程序。

可用性:

支持復制和數據恢復:MongoDB 支持主從復制機制,可以實現數據的備份、故障恢復、讀擴展等功能。而基于副本集的復制機制提供了自動故障恢復的功能,確保了集群數據不會丟失。

自動處理分片:MongoDB 支持集群自動切分數據,對數據進行切分可以使用集群存儲更多的數據,實現更大的負載,也能保證存儲的負載均衡

2.MongoDB 適用場景

網站實時數據處理:它非常適合實時的插入、更新與查詢,并具備網站實時數據存儲所需的復制及高伸縮性。

緩存:它適合作為信息基礎設施的緩存層。在系統重啟之后,由它搭建的持久化緩存層可以避免下層的數據源過載。

高伸縮性的場景:非常適合由數十臺或數百臺服務器組成的數據庫。

不適用于的場景如下:

要求高度事務性的系統(例如:銀行和會計系統)傳統的商業只能應用。復雜的跨文檔(表)級聯查詢。

3.MongoDB 存儲結構

邏輯結構:

文檔 document:存放的數據。

集合 collection:由多個文檔組成,相當于表,但不同的是集合是無固定架構。

數據庫 database:多個集合組成的數據庫。

物理結構:

.wt 文件:每個表或索引對應一個命名空間,數據量增加,文件數量增多,存儲了分配和正在使用的磁盤空間。

數據文件:存放數據的實體,并且使用預分配空間機制。

日志文件:系統日志文件、journal 日志文件(用于 MongoDB 崩潰恢復的保障)、oplog 復制操作日志文件(相當于 MySQL 的 BinLog 文件)、慢查詢日志(查詢操作超出指定時間的語句)

物理結構就是真正存放數據的位置。

4.MongoDB 數據類型

如何部署MongoDB數據庫應用

二、部署 MongoDB 數據庫應用

主機名操作系統IP 地址版本
MongoDBCentOS 7.4192.168.1.1mongodb-linux-x86_64-rhel70-4.4.5.tgz

1.準備系統環境

[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 目錄中的工具進行了分離,所以需要安裝:傳送門

如何部署MongoDB數據庫應用

[root@MongoDB ~]# tar xf mongodb-database-tools-rhel70-x86_64-100.3.1.tgz

2.安裝 MongoDB

[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

3.創建 MongoDB 存儲目錄以及配置文件

[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

4.編寫服務啟動腳本

[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數據庫應用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

上杭县| 石河子市| 阳城县| 靖西县| 永宁县| 阜平县| 清水河县| 珲春市| 琼海市| 定南县| 九江市| 永清县| 阳谷县| 敖汉旗| 开江县| 包头市| 阿克陶县| 上栗县| 益阳市| 叶城县| 平阳县| 华容县| 武定县| 锡林浩特市| 莱阳市| 随州市| 浪卡子县| 鸡泽县| 梨树县| 胶南市| 济阳县| 宁国市| 巴彦淖尔市| 蒙城县| 体育| 广南县| 靖江市| 凤城市| 宾川县| 长汀县| 洛隆县|