一文徹底搞懂MongoDB安裝使用與備份,圖文詳解

目錄

安裝

啓動與管理

文件存放目錄

使用

管理性使用

備份與恢復

備份

恢復


安裝

>>創建yum倉庫

創建並打開:

vi /etc/yum.repos.d/mongodb-org-3.4.repo

添加以下內容:

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

>>yum安裝

yum -y install mongodb-org

 

>>修改配置文件

vi /etc/mongod.conf
將binIP改爲0.0.0.0,這樣所有主機都可以連接到數據庫了

啓動與管理

啓動: systemctl start mongod.service
停止:systemctl stop mongod.service
開機自啓:systemctl enable mongod.service
查看運行狀態:systemctl status mongod.service

文件存放目錄

默認數據文件存放在:/var/lib/momgo
默認日誌文件存在:/var/log/mongodb/mongod.log
如需修改可以在/etc/mongod.conf配置文件中指定目錄

使用

管理性使用

查看版本:mongod --version
連接數據庫:mongo 127.0.0.1:27017    //成功連接數據庫的提示符爲>
退出數據庫:exit

>>創建數據庫(文件夾)

use test	//選中test數據庫,如果沒有則創建
注意:需要在數據庫中創建表,數據庫纔會被保存

>>創建集合(文件)

use test		//選中數據庫
db.createCollection("集合名")		//創建集合

>>添加數據(內容)

不指定ID:
db.users.insert({name:'zhu',age:23})		//向users集合中添加了{ }中的內容

 

可以發現,如果不指定ID,系統會生成一個ObjectId;

ObjectId:12字節的 BSON 類型字符串
4字節:UNIX時間戳 
3字節:表示運行MongoDB的機器 
2字節:表示生成此_id的進程 
3字節:由一個隨機數開始的計數器生成的值 

 

指定ID:
db.users.insert({_id:1,name:'guo',age:23})

 

 

添加多條數據:
語法:db.集合名.insert([{第一條數據},{第二條數據}])

 

>>刪除數據庫(文件夾)

use testdb		        //選中testdb數據庫
db.dropDatabase( )		//刪除選中的數據庫

>>刪除集合(文件)

use test		//選中並進入test數據庫
db.集合名.drop( )		//刪除test數據庫中的指定集合

>>刪除數據(內容)

刪除某項數據:
db.集合名.remove(刪除條件)		//根據刪除條件來刪除集合中的內容
例子:
db.users.remove(_id:4)		//刪除users集合中id爲4的所有數據
刪除某項數據中的某個字段:
//刪除name爲dear這項數據中的name字段
db.users.update({name:'dear'},{$unset:{name:'dear'}})

 

>>修改數據(內容)

修改字段的值:
語法:db.集合名.update({原字段},{$set:{新字段}})
例子:db.users.update({name:"zhu"},{$set:{name:"dear"}})
修改字段名:
//修改id爲3中name字段名爲mingzi
db.users.update({_id:3},{$rename:{name:'mingzi'}})
//修所有項中有age字段的字段名爲nianling
db.users.update({},{$rename:{age:"nianling"}},{multi:true})

>>顯示所有的數據庫(文件夾)

show dbs

>>顯示所有的集合(文件)

show tables
show collections		//兩個命令都可以用

>>查找數據(內容)

顯示集合中所有數據:
db.集合名.find( )
顯示id爲3的數據:
db.集合名.find({_id:3})
只顯示數據,不顯示id:
db.集合名.find({ },{_id:0})

備份與恢復

備份

1. 創建用於備份的目錄
cd /home
mkdir dbbackup

2. 開始恢復
mongorestore -h 127.0.0.1:27017 -d testdb /home/dbbackup/testdb
// -h跟主機名和端口號
// -d要恢復的數據庫名
// /home/dbbackup/testdb,爲備份文件所在的目錄

恢復

1. 找到數據庫備份到的目錄
這裏假設爲/home/dbbackup/testdb

2. 開始恢復
mongorestore -h 127.0.0.1:27017 -d testdb /home/dbbackup/testdb
// -h跟主機名和端口號
// -d要恢復的數據庫名
// /home/dbbackup/testdb,爲備份文件所在的目錄

注意:
MongoDB採用副本集的方式備份最爲安全和實用;
當主服務器失效後,副本集可以替換成主服務器,從而起到無縫切換的作用;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章