用python安装mongodb

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
日志服务 SLS,月写入数据量 50GB 1个月
简介: 用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')

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

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
4月前
|
IDE 开发工具 索引
在Python中安装第三方库
在Python中安装第三方库
1239 30
|
25天前
|
JSON Shell 数据格式
使用 pipx 安装并执行 Python 应用程序 (1)
使用 pipx 安装并执行 Python 应用程序 (1)
86 17
|
2月前
|
IDE 测试技术 项目管理
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
PyCharm是由JetBrains开发的Python集成开发环境(IDE),专为Python开发者设计,支持Web开发、调试、语法高亮、项目管理、代码跳转、智能提示、自动完成、单元测试和版本控制等功能。它有专业版、教育版和社区版三个版本,其中社区版免费且适合个人和小型团队使用,包含基本的Python开发功能。安装PyCharm前需先安装Python解释器,并配置环境变量。通过简单的步骤即可在PyCharm中创建并运行Python项目,如输出“Hello World”。
387 13
【新手必看】PyCharm2025 免费下载安装配置教程+Python环境搭建、图文并茂全副武装学起来才嗖嗖的快,绝对最详细!
|
2月前
|
人工智能 Java Python
python安装、vscode安装、conda安装:一文搞定Python的开发环境(史上最全)
尼恩架构团队推出了一系列《LLM大模型学习圣经》PDF,旨在帮助读者深入理解并掌握大型语言模型(LLM)及其相关技术。该系列包括Python基础、Transformer架构、LangChain框架、RAG架构及LLM智能体等内容,覆盖从理论到实践的各个方面。此外,尼恩还提供了配套视频教程,计划于2025年5月前发布,助力更多人成为大模型应用架构师,冲击年薪百万目标。
|
2月前
|
Shell Linux iOS开发
使用 pipx 安装并执行 Python 应用程序 (1)
使用 pipx 安装并执行 Python 应用程序 (1)
93 0
使用 pipx 安装并执行 Python 应用程序 (1)
|
3月前
|
Linux Python
Linux 安装python3.7.6
本教程介绍在Linux系统上安装Python 3.7.6的步骤。首先使用`yum`安装依赖环境,包括zlib、openssl等开发库。接着通过`wget`下载Python 3.7.6源码包并解压。创建目标文件夹`/usr/local/python3`后,进入解压目录执行配置、编译和安装命令。最后设置软链接,使`python3`和`pip3`命令生效。
|
2月前
|
人工智能 编译器 Python
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
59 0
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
|
4月前
|
存储 JSON 网络安全
使用 EFS 在 AWS Lambda 上安装 Python 依赖项
使用 aws lambda 时,开发人员面临的常见挑战之一是管理大型 python 依赖项。
55 1
|
4月前
|
Ubuntu Linux iOS开发
安装Python
安装 Python 是相对简单的过程,但需要根据不同的操作系统选择合适的方法。同时,合理使用虚拟环境可以更好地管理项目的依赖和环境,提高开发效率。希望这些步骤和注意事项能帮助你顺利安装 Python。
|
5月前
|
Python
Python 三方库下载安装
Python 三方库下载安装
63 1

热门文章

最新文章