MongoDB資料庫新手入門
windows安裝mongodb 5.0.2
官網下載msi
文件
自定義安裝到 d:/apptoools/mongodb/
不要勾選mongodb compass
報錯:verify that you have sufficient privileges to install system services
許可權不足
解決辦法:
1.默認C盤安裝路徑
2.其它磁碟根目錄,D:/mongodb/
配置環境變數
bin目錄添加到path環境變數裡面
創建資料庫存儲文件 D:/mongoDatabase/
指定資料庫存儲文件
mongod --dbpath D:/mongoDatabase/
啟動
mongo
或者指定連接本地資料庫 mongo 127.0.0.1:27017
show dbs
use admin
show collections
db.product.insert({'title': 'aaa'})
db.product.drop() // 刪除集合
db.dropDatabase() 刪除資料庫
db.createCollection("runoob")
使用SQL命令強迫關閉mongo服務
use admin
db.shutdownServer()
創建管理員:
use admin
show users
db.createUser({user:"root",pwd:"123456",roles:["root"]}) //添加管理員
db.dropUser('grade') // 刪除用戶
指定資料庫創建用戶
use grade
db.createUser({user:"gradeAdmin",pwd:"123456",roles:[{role: 'dbOwner',db: 'grade'}]})
Mongodb資料庫角色
- 資料庫用戶角色:
read、 readWrite
- 資料庫管理角色:
dbAdmin、 dbOwner、 userAdmin
- 集群管理角色:
clusterAdmin, clusterManager, clusterMonitor, hostManager
- 備份恢復角色:
backup、 restore;
- 所有資料庫角色:
readAnyDatabase, readWriteAnyDatabase、 userAdminAnyDatabase, dbAdminAnyDatabase
- 超級用戶角色:
root
開啟認證之後連接資料庫:
use admin
db.auth('root','123456')
nodejs連接資料庫
通過client對象連接到MongoDB
通過實例化一個MongoClient
對象連接MongoDB
資料庫是最常用也是最佳的方式。
創建MongoClient對象實例的語法:
MongoClient( server, options );
-
server : 一個serverd對象;
-
options : 資料庫連接選項;
通過一個連接字元串連接到MongoDB
調用MongoClient
類的connect()
方法
MongoClient.connect(connString, options, callback)
connString:mongodb://username:password@host:port/database?opations
nosqlbooster連接mongodb
linux 安裝mongodb,配置以及使用
安裝
官網下載tar
包,上傳到伺服器目錄: /usr/local/mongodb
解壓,tar -zxvf mongodb-linux-x86_64-xxx
並重命名
創建mongodb數據存儲文件和日誌文件
cd /usr/local/mongodb/
mkdir data
mkdir logs
cd ./logs
touch mongodb.log
cd ../
mkdir etc
cd etc
touch mongodb.conf
mongodb.conf配置文件:
#資料庫路徑
dbpath=/usr/local/mongodb/data
#日誌輸出文件路徑
logpath=/usr/local/mongodb/logs/mongodb.log
#錯誤日誌採用追加模式
logappend=true
#啟用日誌文件,默認啟用
journal=true
#這個選項可以過濾掉一些無用的日誌資訊,若需要調試使用請設置為false
quiet=true
#埠號 默認為27017
port=27017
#允許遠程訪問
bind_ip=0.0.0.0
#開啟子進程
fork=true
#開啟認證,必選先添加用戶,先不開啟(不用驗證帳號密碼)
#auth=true
配置環境變數
-
vi /etc/profile
-
寫入:
export PATH=/usr/local/mongodb/bin:$PATH
保存退出 -
執行
source /etc/profile
啟動mongodb服務
- 方式一
bin目錄下執行:
./mongod --config /usr/local/mongodb/etc/mongodb.conf
- 方式二
把上面的命令寫成腳本文件,我把它放到 ~/restartMongo
中,如下:
cd ~
vim restartMongo
#寫入:
mongod --config /usr/local/mongodb/etc/mongodb.conf
# 保存退出
# 執行腳本啟動
./restartMongo
查看進程
mongodb
默認埠號27017
執行命令查看:
netstat -ltunp
或者使用如下命令
netstat -lanp | grep "27017"
啟動之後就可以連接mongo server
了
操作mongo資料庫
mongo
(或者指定ip:port: mongo ip:port
)
admin資料庫添加用戶、安全認證
use admin
show users
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
show users
關閉mongo server
db.shutdownServer()
啟用安全認證
- 修改
etc/mongodb.conf
#開啟認證,必選先添加用戶
auth=true
- 重新開啟
mongo server
mongod --config /usr/local/mongodb/etc/mongodb.conf
此時show dbs
查看不到任何資料庫
use admin
db.auth('root', '123456') # 輸出1標記訪問資料庫成功
show dbs
客戶端鏈接
開放防火牆埠號,不再贅述。
開機啟動
配置開機啟動腳本文件: /etc/rc.d/init.d/mongod
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
我是 甜點cc
熱愛前端開發,也喜歡專研各種跟本職工作關係不大的技術,技術、產品興趣廣泛且濃厚。本號主要致力於分享個人經驗總結,希望可以給一小部分人一些微小幫助。
希望能和大家一起努力營造一個良好的學習氛圍,為了個人和家庭、為了中國的互聯網物聯網技術、數字化轉型、數字經濟發展做一點點貢獻。數風流人物還看中國、看今朝、看你我。