mongodb 安裝、配置,遷移

安裝并遷移mongodb數(shù)據(jù)

之前通過golang連接安裝好的mongodb一直不成功,今天重新安裝部署下mongodb,并且做了一次數(shù)據(jù)遷移,結(jié)果是成功的。
參考文檔:
https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

操作步驟

  1. 移除已經(jīng)安裝的mogodb
    yum erase $(rpm -qa | grep mongodb-org)
    移除之前的日志目錄,數(shù)據(jù)目錄
    rm -rf /app/mongodb/log/*
    rm -rf /app/mongodb/data/*
  2. 配置yum源:
    創(chuàng)建文件:
    /etc/yum.repos.d/mongodb-org-4.4.repo
    內(nèi)容如下:
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/4.4/x86_64/
gpgcheck=0
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
  1. 安裝: mongodb-org
yum install -y mongodb-org

4.修改默認(rèn)配置文件/etc/mongod.conf ,修改后文件如下:

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /app/mongodb/log/mongod.log

# Where and how to store data.
storage:
  dbPath: /app/mongodb/data
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  5
  1. 授權(quán)
    mkdir -p /app/mongodb/log/
    mkdir -p /app/mongodb/data
    chown -R mongodb:mongodb /app/mongodb/log/
    chown -R mongodb:mongodb /app/mongodb/data
  2. 關(guān)閉selinux ,并重啟主機(jī)
setenforce 0
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config 
reboot  ##重啟主機(jī)
  1. 啟動服務(wù):
systemctl daemon-reload
systemctl start mongod

8.啟動報(bào)錯:
提示無法操作/tmp/mongodb-27017.sock

{"t":{"$date":"2020-09-21T12:19:08.370+08:00"},"s":"E",  "c":"NETWORK",  "id":23024,   "ctx":"initandlisten","msg":"Failed to unlink socket file","attr":{"path":"/tmp/mongodb-27017.sock","error":"Operation not permitted"}}

增加權(quán)限

chown -R mongod:mongod  /tmp/mongodb-27017.sock
  1. 創(chuàng)建用戶以及集合
[root@prd-server-000834 log]# mongo
MongoDB shell version v4.4.0
> use admin
switched to db admin
> db.createUser({user: "root",pwd: "root",roles: [ { role: "root", db: "admin" } ]})

 >  db.createUser(
  {
    user: "XXX",
    pwd: "XXX",  // or cleartext password
    roles: [
       { role: "clusterAdmin", db: "admin" },
       { role: "userAdminAnyDatabase", db: "admin" },
       { role: "root", db: "admin" }
    ]
  }
> use XXX
>db.XXX.insert({"name":"check"})
  1. 檢查db是否可以正常提供服務(wù)
mongo mongodb://XXX:XXX@localhost/XXX

  1. 數(shù)據(jù)導(dǎo)出:
mongoexport -h localhost -d oms -c publish_log -o /app/backup/publish_log.json
mongoexport -h localhost -d oms -c publish_state -o /app/backup/publish_state.json
mongoexport -h localhost -d oms -c publish_task -o /app/backup/publish_task.json
mongoexport -h localhost -d oms -c service -o /app/backup/service.json
mongoexport -h localhost -d oms -c serviceVersion -o /app/backup/serviceVersion.json
mongoexport -h localhost -d oms -c user -o /app/backup/user.json
  1. 數(shù)據(jù)導(dǎo)入:
mongoimport -d oms -c publish_log --file publish_log.json 
mongoimport -d oms -c publish_state --file publish_state.json 
mongoimport -d oms -c publish_task --file publish_task.json 
mongoimport -d oms -c service --file service.json 
mongoimport -d oms -c serviceVersion --file serviceVersion.json 
mongoimport -d oms -c user --file user.json 

12.導(dǎo)入導(dǎo)出,中間涉及tar 以及解壓,scp,就不寫了~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容