Linux下的MongoDB安装配置以及远程访问

本文详细介绍了如何在Linux CentOS 7.8上安装MongoDB 5.0.5,包括下载、解压、配置环境变量、配置文件、启动及远程访问设置。此外,还提供了配置文件的内容和启动命令,以及解决启动错误的方法和设置开机自启动的步骤。最后,演示了如何通过Navicat进行远程连接,并创建数据库用户。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux环境
MongoDB下载目录:/usr/local
MongoDB安装目录:/usr/local/mongodb5
CentOS:7.8
MongoDB版本:5.0.5

安装MongeDB

wget下载资源
按照当前环境,在官网选择合适的mongodb版本,复制链接https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-5.0.7.tgz
在这里插入图片描述

  1. 下载:
    https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-5.0.7.tgz
    
  2. 解压:
    tar -zxvf mongodb-linux-x86_64-rhel70-5.0.7.tgz
    
  3. 重命名为mongedb5
    mv mongodb-linux-x86_64-rhel70-5.0.7  /usr/local/mongodb5   
    
  4. (可选)配置环境变量方便直接启动
    export PATH=/usr/local/mongodb5/bin:$PATH
    

配置

  1. 创建所需文件,以安装目录/usr/local/mongodb5为例

    #配置文件
    touch mongodb.log
    touch mongodb.conf
    #数据和日志文件
    mkdir data
    mkdir usr/local/mongodb5/data/db
    mkdir usr/local/mongodb5/data/logs
    touch /usr/local/mongodb5/data/logs/mongodb.log
    
  2. 写入配置,vim /usr/local/mongodb5/mongodb.conf

    
    #日志文件位置
    logpath=/usr/local/mongodb5/data/logs/mongodb.log
    
    # 以追加方式写入日志
    logappend=true
    
    # 是否以守护进程方式运行
    fork = true
    
    # 默认27017
    #port = 27017
    
    # 数据库文件位置
    dbpath=/usr/local/mongodb5/data/db
    
    # 启用定期记录CPU利用率和 I/O 等待
    #cpu = true
    
    # 是否以安全认证方式运行,默认是不认证的非安全方式
    #noauth = true
    auth = true
     
    #默认127.0.0.1为只允许本地连接;0.0.0.0为不限制;多个指定服务器用,连接                                                 
    bind_ip=0.0.0.0                                                                                                         
    
    

启动&开启远程访问

  1. 进入bin目录
    #进入bin目录
    cd /usr/local/mongodb5/bin/
    #启动
    ./mongod --config /usr/local/mongodb/mongodb.conf
    
    输出:
    about to fork child process, waiting until server is ready for connections.
    forked process: 29755
    child process started successfully, parent exiting
    
    即可正常启动
  2. (可选)浏览器访问:ip:27017显示It looks like you are trying to access MongoDB over HTTP on the native driver port.
  3. 创建子账号:
    #启动命令行
    cd /usr/local/mongodb/bin
    ./mongo
    #切换到admin,添加hucong账号
    >use admin
    >db.createUser({user:"hucong",pwd:"hucong",roles:["root"]})
    >db.auth("hucong","hucong")   //验证
    
  4. navicat远程连接
    在这里插入图片描述

可能的错误:配置问题无法启动
报错:
about to fork child process, waiting until server is ready for connections. forked process: 25486 ERROR: child process failed, exited with error number 1 To see additional information in this output, start without the "--fork" option.

解决方案:MDB报错:about to fork child process, waiting until server is ready for connections. forked process:XX

(可选)开机自启动

  1. 创建文件mongodb.service
    cd /lib/systemd/system
    vim mongodb.service
    
  2. 追加配置信息
    [Unit]
    Description=mongodb                                                                                                     
    After=network.target remote-fs.target nss-lookup.target                                                         
    [Service]                                                                                                                       
    Type=forking                                                                                                            		   
    ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf                                              
    ExecReload=/bin/kill -s HUP $MAINPID                                                                                    
    ExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/mongodb.conf                                    
    PrivateTmp=true                                                                                                 
    [Install]                                                                                                                       
    WantedBy=multi-user.target
    

3.设置开机自启
systemctl enable mongodb.service

参考:

<think>好的,用户需要的是在Linux系统上安装MongoDB的详细教程。根据之前的引用内容,用户可能已经看过一些教程,但需要更全面或清晰的步骤。我需要整合引用中的信息,确保符合用户的实际需求。首先,应该分开发版来介绍,比如Ubuntu/DebianCentOS/RHEL,因为这两个是常见的Linux发行版。用户提供的引用中提到了添加仓库启动命令,这些需要详细展开。 接下来,我需要确认每个步骤的正确性,例如添加GPG密钥源列表的步骤是否正确,以及安装后的配置是否完整。用户可能关心如何验证安装是否成功,所以需要包括检查服务连接数据库的方法。另外,引用中提到了绑定IPfork参数,这在配置文件中需要说明,或者作为启动选项。 还要注意权限问题,比如创建数据目录日志文件时需要正确的权限设置,避免安装后无法启动服务。此外,开放防火墙端口也是一个重要步骤,用户可能需要这部分信息,特别是如果他们在生产环境中部署的话。 最后,用户可能需要一些常见问题的解决方法,比如安装失败或无法连接的情况,但根据用户的问题,可能不需要深入排错,但可以简要提及。确保所有命令都是正确且适用于当前MongoDB的版本,如果版本号需要更新,要注明或者使用通用的安装方法,比如通过官方仓库安装最新稳定版。 需要检查是否有遗漏的步骤,比如是否启用了MongoDB服务开机启动,或者如何配置远程访问。根据引用中的启动命令,可能需要解释各个参数的作用,或者推荐使用配置文件的方式。同时,确保使用中文回答,术语准确,结构清晰,分步骤说明,方便用户跟随操作。</think># Linux系统MongoDB安装教程 ## 一、环境准备 1. 确认系统版本:执行$ cat /etc/os-release$查看发行版 2. 创建专用用户:建议新建mongodb系统用户 ```bash sudo useradd -r -s /bin/false mongodb ``` ## 二、Ubuntu/Debian安装步骤 1. 导入GPG密钥 ```bash sudo apt-get install gnupg wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo apt-key add - ``` 2. 添加仓库配置 ```bash echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list ``` 3. 安装软件包 ```bash sudo apt-get update sudo apt-get install -y mongodb-org ``` ## 三、CentOS/RHEL安装步骤 1. 创建仓库文件 ```bash vi /etc/yum.repos.d/mongodb-org-7.0.repo ``` 2. 写入以下内容: ```ini [mongodb-org-7.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc ``` 3. 执行安装 ```bash sudo yum install -y mongodb-org ``` ## 四、配置文件设置 1. 创建必要目录 ```bash sudo mkdir -p /var/lib/mongo sudo mkdir -p /var/log/mongodb sudo chown -R mongodb:mongodb /var/lib/mongo sudo chown -R mongodb:mongodb /var/log/mongodb ``` 2. 修改配置文件(默认位置:/etc/mongod.conf) ```yaml systemLog: destination: file logAppend: true path: /var/log/mongodb/mongod.log storage: dbPath: /var/lib/mongo journal: enabled: true net: port: 27017 bindIp: 0.0.0.0 # 允许远程访问 ``` ## 五、服务管理命令 ```bash # 启动服务 sudo systemctl start mongod # 设置开机启动 sudo systemctl enable mongod # 检查状态 sudo systemctl status mongod ``` ## 六、验证安装 1. 连接测试 ```bash mongo --eval 'db.runCommand({ connectionStatus: 1 })' ``` 2. 查看版本信息 ```bash mongod --version ``` ## 七、防火墙配置(可选) ```bash sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent sudo firewall-cmd --reload ``` [^1]: 引用内容参考MongoDB官方安装文档及Linux发行版包管理规范 [^2]: 服务配置参数依据生产环境安全最佳实践
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值