用python安装mongodb

简介: 用python安装mongodb

之前写过mongodb的shell一键安装脚本,今日分享一下python的脚本。此脚本是离线环境下去安装5.0.8版本。

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import os

import time

def install():

   """

   安装Mongodb

   过程:

       1、解压

       tar -zxvf mongodb-linux-x86_64-rhel70-5.0.8.tgz

       2、修改文件夹名字

       3、添加环境变量

       4、创建所有目录

       mkdir -p /data/mongodb/{db,logs,conf}

       5、创建配置文件

       6、启动

       mongod --config /data/mongodb/conf/mongodb.conf

   :return:

   """

   os.system("tar -zxvf ./mongodb-linux-x86_64-rhel70-5.0.8.tgz -C /usr/local/")

   os.system("mv /usr/local/mongodb-linux-x86_64-rhel70-5.0.8/ /usr/local/mongo")

   with open("/etc/profile.d/mongo.sh", "w+") as path_file:

       lines = [

           "export PATH=$PATH:/usr/local/mongo/bin\n"

       ]

       path_file.writelines(lines)

   os.system("mkdir -p /data/mongodb/{db,logs,conf}")

   with open("/data/mongodb/conf/mongodb.conf", "w+") as config_file:

       context = '''

# 数据存放目录

dbpath=/data/mongodb/db

# 存放日志路径, 要先把目录新建好

logpath=/data/mongodb/logs/mongodb.log

# 布尔值, 是否追加方式记录日志

logappend=true

# mongodb绑定的ip地址,127.0.0.1只允许本机访问,如果想让其他主机能访问请修改为0.0.0.0

bind_ip=0.0.0.0

# 端口号,默认为27017

port=27017

# 设置oplog的大小(MB)

oplogSize=10000

# 以后台方式运行进程

fork=true

# 启用日志文件,默认启用,生产环境强烈推荐打开

journal=true

       '''

       config_file.write(context)

   os.environ['PATH'] = '%s:%s' % (os.environ['PATH'], '/usr/local/mongo/bin')

   os.system("mongod --config /data/mongodb/conf/mongodb.conf")

def detect():

   """

   检测是否安装成功

   :return:

   """

   time.sleep(5)

   return True if os.popen("ps -ef|grep mongo").read().find(

       "mongod") > 0 else False

def prompt_fail():

   """

   安装失败后提示

   :return:

   """

   print """

   \033[5;31;40m 很抱歉安装失败 \033[0m

   """

def prompt_success():

   """

   安装成功后提示

   :return:

   """

   print """

   \033[5;32;40m 恭喜mongo-5.0.8-linux安装成功! \033[0m

   使用前注意:

       执行: source /etc/profile 或【重新登录当前服务器】来重新加载环境变量

   安装路径:/usr/local/mongo

   环境变量配置:/etc/profile.d/mongo.sh

   启动命令: mongod --config /data/mongodb/conf/mongodb.conf

   停止命令:mongod --config /data/mongodb/conf/mongodb.conf --shutdown

   端口号:27017

   数据存放目录:/data/mongodb/db

   存放日志路径: /data/mongodb/logs/mongodb.log

   """

if __name__ == '__main__':

   install()

   if detect():

       prompt_success()

   else:

       prompt_fail()

说明:我们只需要把脚本和安装包上传至同目录下,再赋予执行X权限直接执行脚本即可。

为了保障数据库安全,我们在安装成功后须开启认证,必选先添加用户,配置文件中添加auth=true。

具体操作如下

添加用户、安全认证

首先必须使用admin数据库,进行新用户授权。

MongoDB副本集默认会创建local、admin数据库,local数据库主要存储副本集的元数据,admin数据库则主要存储MongoDB的用户、角色等信息。

输入以下命令:

db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})

授权成功后,关闭mongo服务:

mongod --config /data/mongodb/conf/mongodb.conf --shutdown

查看mongo服务进程,可看到服务已经成功停掉了。

然后需要到配置文件中修改配置,启用安全认证。

#开启认证,必选先添加用户

auth=true

最后开启mongo服务,进入数据库测试:

./mongod --config /usr/local/mongodb/etc/mongodb.conf

show dbs此时看不到任何数据库,说明我们的安全认证用户配置生效了。

首先使用use admin通过db.auth(‘root’,‘密码’) 输出1就是验证成功。

use admin

db.auth('root','123456')

在日常的运维过程中需要注意的几点是部署须采用非管理员权限,修改默认端口,且日常巡检创建只读的巡检账号即可,明天会分享这几点操作。

相关文章
|
7月前
|
Linux 计算机视觉 C++
【解决方案】Building wheel for opencv-python:安装卡顿的原因与解决方案
当你安装OpenCV时,命令行停在Building wheel for opencv-python (PEP 517) ... -似乎卡住了。这并非程序假死,而是其编译耗时巨大。本文将揭示原因,并提供优化安装体验的实用方法。
913 88
|
4月前
|
NoSQL Ubuntu MongoDB
在Ubuntu 22.04上安装MongoDB 6.0的步骤
这些步骤应该可以在Ubuntu 22.04系统上安装MongoDB 6.0。安装过程中,如果遇到任何问题,可以查阅MongoDB的官方文档或者Ubuntu的相关帮助文档,这些资源通常提供了解决特定问题的详细指导。
440 18
|
5月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
644 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
7月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
650 2
|
8月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
987 4
|
10月前
|
IDE 开发工具 开发者
手把手教你安装PyCharm 2025:开发者的Python IDE配置全流程+避坑指南
本教程详细介绍了PyCharm 2025版本在Windows系统下的安装流程及配置方法,涵盖AI代码补全与智能调试工具链等新功能。内容包括系统要求、安装步骤、首次运行配置(如主题选择与插件安装)、创建首个Python项目,以及常见问题解决方法。此外,还提供了切换中文界面和延伸学习资源的指导,帮助用户快速上手并高效使用PyCharm进行开发。
5180 61
|
10月前
|
存储 缓存 文件存储
uv安装python及其依赖的加速方法
国内在使用uv的时候,可能会涉及到装python的速度太慢的问题,为了解决这个问题,可以使用`UV_PYTHON_INSTALL_MIRROR`这个环境变量。除此以外,对于多人协作场景,`UV_CACHE_DIR`也是一个有用的环境变量。本文会介绍这两个变量。
6770 10
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
4524 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
11月前
|
NoSQL MongoDB 微服务
微服务2——MongoDB单机部署1——下载安装
本指南介绍在Windows系统上安装和启动MongoDB的步骤。首先,从官网下载适用于32位或64位系统的预编译二进制包,选择稳定版(y为偶数)。解压后创建数据目录`data/db`,可通过命令行参数(如`mongod --dbpath=..\data\db`)或配置文件启动服务。配置文件需注意转义字符与空格使用,支持自定义日志路径、端口等参数。将bin目录加入环境变量可简化启动操作。
316 0
微服务2——MongoDB单机部署1——下载安装
|
12月前
|
JSON Shell 数据格式
使用 pipx 安装并执行 Python 应用程序 (1)
使用 pipx 安装并执行 Python 应用程序 (1)
1180 17