https://docs.mongodb.com/manu...mongodb
以 Ubuntu 14.04
爲例:數據庫
一、sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6 二、echo "deb [ arch=amd64 ] http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list 三、sudo apt-get update 四、sudo apt-get install -y mongodb-org
27107
一、改 /etc/mongod.conf
json
二、重置配置 sudo service mongod restart
三、防火牆規則 /etc/iptables.up.rules
添加,容許數據庫訪問端口27018
ubuntu
-A INPUT -s 127.0.0.1 -p tcp --destination-port 27018-m state --state NEW,ESTABLISHED -j ACCEPT -A OUTPUT -d 127.0.0.1 -p tcp --source-port 27018-m state --state ESTABLISHED -j ACCEPT
四、重載規則 sudo iptables-restore < /etc/iptables.up.rules
服務器
sudo service mongod stop sudo service mongod start sudo service mongod restart cat /var/log/mongodb/mongod.log // 查看數據庫是否運行成功,末行以下: [initandlisten] waiting for connections on port <port>
mongo --port 27019 show dbs use dbname // 數據庫不存在則建立 db.dropDatabase() // 刪除 show tables / collections // 當前數據庫下全部的集合 db.createCollection( 'User'[, options] ) // 建立新集合 db.User.drop() // 刪除集合 db / db.getName() // 當前數據庫名 db.getMongo() // connection to 127.0.0.1:27018 db.stats() // 統計 db.version() // 版本
這不是重點..tcp
db.User.insert({'username':'july', 'age':'18'}) db.User.save({'username':'jucy', 'age':'18'}) db.User.find({'age':'18'}) db.User.update({'username': 'july'}, {$set:{'age':'20'}}, false, true ) db.User.remove({'username': 'july'})
mongoDB
導入 數據庫 或 單表數據0、cd 到 mongoDB
的安裝路徑下的 bin
一、備份本地數據庫 mongodump -h 127.0.0.1:27018 -d test -o d:\data\dump
spa
-h mongodb所在的服務器地址,本機地址 -d 指定須要備份的數據庫實例 -o 指定備份數據庫的存放位置
二、打包壓縮 tar zcvf test.tar.gz test
.net
注:tar.gz 是Linux下的經常使用壓縮格式,window下的解決辦法: 7-zip http://blog.csdn.net/ithomer/article/details/5111965
三、上傳到服務器 scp -p 39999 d:/data/dump/test.tar.gz Jerry@IP:/home/Jerry/dbbackup/
四、服務端解壓縮 tar xvf test.tar.gz
五、配置到線上 mongoDB
中 mongorestore --host 127.0.0.1:27018 -d testdb ./dbbackup/test/
3d
0、數據庫備份在 d:\data\dump
, 就從這裏開始操做
一、導出 mongoexport -d testdb -c users -q '{"name":{$ne:null}}' -o ./test-users.json
rest
-d 從哪裏 -c 哪張表 -q 條件 -o output 到同級目錄下的test-user.json
二、上傳 scp
三、導入到目標數據庫 -d testdb
的表 -c users
中: mongoimport --host 107.0.0.1:19999 -d testdb -c users ./test-users.json
A
遷移數據到另外一個 B
線上 MongoDB 中A
導出下載到本地B
。按照導入 數據庫 | 單表 的步驟來..一、建立管理員帳號和用戶。
mongo --port 27018 // 管理員帳號 use admin db.createUser({'user':'super-user', pwd: 'Safe1234*'}, roles: [{role: 'userAdminAnyDatebase', db:'admin'}]}) db.auth('super-user', 'Safe1234*') //受權 // 建立用戶,和只讀備份用戶。去admin下受權 use testdb db.createUser({'user':'test-runner', pwd: 'Test1234*'}, roles: [{role: 'readWrite', db:'testdb'}]}) db.createUser({'user':'test-wheeler', pwd: 'Backup1234*'}, roles: [{role: 'read', db:'testdb'}]}) use admin db.auth('test-runner', 'Test1234*') db.auth('test-wheeler', 'Backup1234*')
二、打開驗證模式 sudo vi /etc/mongod.conf
, 重啓sudo service mongod restart
security: authorization: 'enabled'
三、管理員可管理全部數據庫,但操做以前須要先認證 db.auth('username','pwd')
; 用戶只能在用戶所在的數據庫登陸 mongo 127.0.0.1:27018/testdb -u username -p pwd