您好,登錄后才能下訂單哦!
1. 下載MongoDB
2. 解壓文件到某目錄下,然后重命名:
[root@localhost var]# tar -xzvf mongodb-linux-x86_64-enterprise-rhel62-3.4.9.tgz
[root@localhost var]# mv mongodb-linux-x86_64-enterprise-rhel62-3.4.9 /usr/local/mongodb
bin下的mongod就是MongoDB的服務端進程,mongo就是其客戶端,其它的命令用于MongoDB的其它用途如MongoDB文件導出等。
3. 啟動MongoDB.
要先建立好MongoDB 存放數據文件和日志文件的目錄,此處建立在/data下:
[root@localhost var]# cd /data/db
[root@localhost db]# mkdir mongodb_data
[root@localhost db]# mkdir mongodb_log
[root@localhost db]# ls
mongodb_data mongodb_log
在MongoDB安裝目錄下的bin下使用mongod啟動MongoDB,
./mongod --dbpath=/data/db/mongodb_data/ --logpath=/data/db/mongodb_log/mongodb.log --logappend&
等待啟動成功后,可查看是否啟動成功了,默認端口號是27017,當然在啟動時也可以指定未使用的其它端口。
先通過查看端口號看MongoDB是否啟動了。
[root@localhost /db]# netstat -lanp | grep "27017"
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 2442/mongod
unix 2 [ ACC ] STREAM LISTENING 18203 2442/mongod /tmp/mongodb-27017.sock
可以看到,已啟動成功,現在使用mongo客戶端訪問一下該數據庫。
[root@localhost bin]# ./mongo
MongoDB shell version v3.4.9
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.9
connecting to: test
>
安裝成功
4. 額外工作。
把mongod放到服務自啟動項中
編輯/etc/rc.d/rc.local,加入下述代碼然后再保存即可。
#add mongonDB service
rm -rf /data/db/mongodb_data/* && /usr/local/mongodb/bin/mongod --dbpath=/data/db/mongodb_data/ --logpath=/data/db/mongodb_log/mongodb.log --logappend&
我們重啟計算機再看MongoDB是否啟動,重啟后可以直接使用 mongo命令登錄,最終發現是可以成功的。
另外,我們使用mongo命令登錄 MongoDB還要轉到mongo命令所在目錄再執行./mongo,這樣是不是有些麻煩?因此,我們可以簡化這點,將該命令文件copy到/usr/bin下,這樣就可以在任何目錄下使用mongo命令了。
[root@localhost bin]# ls
bsondump dbbak mongo mongod mongodump mongoexport mongofiles mongoimport mongorestore mongos mongosniff mongostat
[root@localhost bin]# cp mongo /usr/bin/
轉到任一目錄試下mongo命令:
[root@localhost bin]# cd /
[root@localhost /]# mongo
MongoDB shell version: 1.8.1
connecting to: test
>
可以看到登錄成功了,說明我們可以像使用ls命令一樣使用mongo命令了。
連接數據庫(如果test不存在,則直接創建一個test):
use test
顯示數據庫:
show dbs
插入一條記錄(切換到指定數據庫下之后,需要插入至少一個文檔后才會在show dbs中顯示數據庫名):
db.items.insert({"name":"yiibai tutorials"})
創建用戶和密碼(在admin庫上):
db.createUser({user: "lich",pwd: "goodjob1234",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
驗證用戶權限(返回1則用戶存在):
db.auth('lich','goodjob1234')
查看admin庫里面的全部用戶:
use admin;
db.system.users.find();
查看所有表:
show tables;
另外除了以上的默認啟動方式,還可以通過配置mongod.conf的方式來啟動mongodb(未測試成功)
啟動MongoDB有2種方式,一種是直接默認啟動,另一種是指定配置文件。啟動方式如下:
1: /etc/init.d/mongod start 或service mongod start
2: mongod --config /etc/mongodb.conf
下面我們看看配置文件:
vi /etc/mongod.conf
# 日志文件位置
logpath=/var/log/mongo/mongod.log
# 以追加方式寫入日志
logappend=true
# 是否以守護進程方式運行
fork = true
# 默認27017
#port = 27017
# 數據庫文件位置
dbpath=/var/lib/mongo
# 啟用定期記錄CPU利用率和 I/O 等待
#cpu = true
# 是否以安全認證方式運行,默認是不認證的非安全方式
#noauth = true
#auth = true
# 詳細記錄輸出
#verbose = true
# Inspect all client data for validity on receipt (useful for
# developing drivers)用于開發驅動程序時驗證客戶端請求
#objcheck = true
# Enable db quota management
# 啟用數據庫配額管理
#quota = true
# 設置oplog記錄等級
# Set oplogging level where n is
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#diaglog=0
# Diagnostic/debugging option 動態調試項
#nocursors = true
# Ignore query hints 忽略查詢提示
#nohints = true
# 禁用http界面,默認為localhost:28017
#nohttpinterface = true
# 關閉服務器端腳本,這將極大的限制功能
# Turns off server-side scripting. This will result in greatly limited
# functionality
#noscripting = true
# 關閉掃描表,任何查詢將會是掃描失敗
# Turns off table scans. Any query that would do a table scan fails.
#notablescan = true
# 關閉數據文件預分配
# Disable data file preallocation.
#noprealloc = true
# 為新數據庫指定.ns文件的大小,單位:MB
# Specify .ns file size for new databases.
# nssize =
# Replication Options 復制選項
# in replicated mongo databases, specify the replica set name here
#replSet=setname
# maximum size in megabytes for replication operation log
#oplogSize=1024
# path to a key file storing authentication info for connections
# between replica set members
#指定存儲身份驗證信息的密鑰文件的路徑
#keyFile=/path/to/keyfile
或者使用以下的配置:(可做復制集測試配置,注意端口號和復制集的名稱,復制集名稱必須都一致)
28001.conf
bind_ip=192.168.20.144
port=28001
logpath=/data/db/mongodb_log/28001.log
logappend=true
dbpath=/data/db/mongodb_data28001
replSet=imooc
fork=true
28002.conf
bind_ip=192.168.20.144
port=28002
logpath=/data/db/mongodb_log/28002.log
logappend=true
dbpath=/data/db/28002
replSet=imooc
fork=true
28003.conf
bind_ip=192.168.20.144
port=28003
logpath=/data/db/mongodb_log/28003.log
logappend=true
dbpath=/data/db/28003
replSet=imooc
fork=true
指定端口啟用mongo :
cd /usr/local/mongo/bin
./mongo 192.168.20.144:28001/admin
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。