IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> CentOS 7.6安装单节点MongoDB(4.0.9)-源码方式安装 -> 正文阅读

[系统运维]CentOS 7.6安装单节点MongoDB(4.0.9)-源码方式安装

1、新建 mogoDB存放文件夹

mkdir -p /opt/idhub

2、新建 mogoDB存放文件夹

# 配置文件存放路径
mkdir -p /opt/idhub/mongodb/conf
# 日志文件存放路径
mkdir -p /opt/idhub/mongodb/log
# 数据库存放路径
mkdir -p /opt/idhub/mongodb/data

3、下载软件mongodb4.0.9

# 官网地址:https://www.mongodb.org/dl/linux
# centos7的内核版本是rhel7
$ cd /opt/idhub
$ wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.9.tgz
[root@node idhub]# ls
mongodb-linux-x86_64-rhel70-4.0.9.tgz

4、解压

[root@node idhub]# tar xf mongodb-linux-x86_64-rhel70-4.0.9.tgz 
[root@node idhub]# ls
mongodb-linux-x86_64-rhel70-4.0.9  mongodb-linux-x86_64-rhel70-4.0.9.tgz

5、将解压的bin文件复制到 /opt/idhub/mongodb目录下

[root@node idhub]# cp -r mongodb-linux-x86_64-rhel70-4.0.9/bin/ /opt/idhub/mongodb/
[root@node idhub]# ll /opt/idhub/mongodb
total 0
drwxr-xr-x 2 root root 231 Apr ?7 18:39 bin
drwxr-xr-x 2 root root ? 6 Apr ?7 18:37 conf
drwxr-xr-x 2 root root ? 6 Apr ?7 18:37 data
drwxr-xr-x 2 root root ? 6 Apr ?7 18:37 log

6、设置环境变量

因为 MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中,此后,在所有的路径下可以直接使用 MongoDB 的命令:

方法一:修改 .bashrc文件(推荐)

[root@node ~]# cd ~
[root@node ~]# vim .bash_profile
# 将 export PATH=$PATH:/opt/idhub/mongodb/bin 加到文件末尾,并重新加载配置文件
# .bash_profile
?
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
 ? ? ?  . ~/.bashrc
fi
?
# User specific environment and startup programs
?
PATH=$PATH:$HOME/bin
?
export PATH
stty erase ^H
?
export PATH=$PATH:/opt/idhub/mongodb/bin
[root@node ~]# source .bash_profile

方法二: 如果没有权限修改 .bashrc文件,则为 /opt/idhub/mongodb/bin 创建软链接

ln -s  /opt/idhub/mongodb/bin/* /usr/local/bin

7、创建配置文件

logappend=true # 日志输出方式,日志append而不是overwrite

authorization: enabled # 开启了安全验证

vim /opt/idhub/mongodb/conf/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: /opt/idhub/mongodb/log/mongod.log
?
# Where and how to store data.
storage:
  dbPath: /opt/idhub/mongodb/data/
  journal:
 ?  enabled: true
?
# 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
?
# 启用认证
security:
  authorization: enabled

8、启动mongoDB

# 关闭
mongod -f /opt/idhub/mongodb/conf/mongod.conf --shutdown
# 启动
mongod -f /opt/idhub/mongodb/conf/mongod.conf

在虚拟机中,启动过程中可能会遇到报错:

[root@node conf]# mongod -f /opt/idhub/mongodb/conf/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 34586
ERROR: child process failed, exited with error number 1
To see additional information in this output, start without the "--fork" option.
# 查看mongo日志
[root@node log]# cat mongod.log
2022-04-08T09:17:55.842+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2022-04-08T09:17:55.865+0800 I CONTROL  [main] ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: Unknown error
[root@node log]# cd /var/run/mongodb
-bash: cd: /var/run/mongodb: No such file or directory
# 由此看出,虚拟机中不存在路径: /var/run/mongodb
[root@node log]# sudo mkdir -p /var/run/mongodb/
[root@node log]# chmod -R 777 /var/run/mongodb
# 启动成功
[root@node log]# mongod -f /opt/idhub/mongodb/conf/mongod.conf
about to fork child process, waiting until server is ready for connections.
forked process: 35564
child process started successfully, parent exiting

9、登录,创建用户

[root@node conf]# mongo 
MongoDB shell version v4.0.9
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("335545dc-3794-443e-9bb5-248b13528cd9") }
MongoDB server version: 4.0.9
> use admin
switched to db admin
> db.createUser({user: "root", pwd: "123456", roles: [{role: "root", db: "admin"}]})
Successfully added user: {
    "user" : "root",
    "roles" : [
        {
            "role" : "root",
            "db" : "admin"
        }
    ]
}
> db.createUser({user: "vagrant", pwd: "123456", roles: [{role: "dbOwner", db: "idis_lhs"},{role: "dbOwner", db: "TelCount"}]})
2022-04-08T10:58:03.841+0800 E QUERY ?  [js] Error: couldn't add user: command createUser requires authentication :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.createUser@src/mongo/shell/db.js:1491:15
@(shell):1:1
> exit;
[root@node2 conf]# mongo
MongoDB shell version v4.0.9
connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("d13c7279-f9f0-45b8-b351-b8ac7a332d31") }
MongoDB server version: 4.0.9
> use admin
switched to db admin
> db.auth('root','123456')
1
> show dbs
admin ? 0.000GB
config  0.000GB
local ? 0.000GB
> use local
switched to db local
> show collections
startup_log
> db.startup_log.find()
{ "_id" : "node-1649380223999", "hostname" : "node", "startTime" : ISODate("2022-04-08T01:10:23Z"), "startTimeLocal" : "Fri Apr  8 09:10:23.999", ....}

10、mongoDB数据库备份与恢复

备份整个数据库
$ sudo mongodump -u root -p 123456 --out /handle-pass/bfmongo
还原整个数据库
mongorestore -u root -p 123456 /handle-pass/bfmongo
?
导出单张表
mongoexport -h 10.255.250.24 -u root -p 123456 -d user -c user_info --authenticationDatabase admin -o /root/handleBak/user_info.json

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-09 18:57:31  更:2022-04-09 18:59:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:04:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码