位置: 编程技术 - 正文

Python中MySQL数据迁移到MongoDB脚本的方法

编辑:rootadmin

推荐整理分享Python中MySQL数据迁移到MongoDB脚本的方法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

MongoDB简介

MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

MongoDB是一个文档数据库,在存储小文件方面存在天然优势。随着业务求的变化,需要将线上MySQL数据库中的行记录,导入到MongoDB中文档记录。

一、场景:线上MySQL数据库某表迁移到MongoDB,字段无变化。

二、Python模块:

使用Python的torndb,pymongo和time模块。

*注释:首先安装setup.py,pip,MySQLdb

Python中MySQL数据迁移到MongoDB脚本的方法

执行如下命令即可:

pip install torndbpip install pymongo

三、脚本内容如下:

[root ~]#cat nmytomongo.py

#!/usr/bin/env python#fielName: mytomongo.py#Author:xkops#coding: utf-8import torndb,pymongo,time# connect to mysql databasemysql = torndb.Connection(host='.0.0.1', database='database', user='username', password='password')#connect to mongodb and obtain total lines in mysqlmongo = pymongo.MongoClient(' = mysql.query('SELECT max(table_field) FROM table_name')count = countlines[0]['max(table_field)']#count = print counti = 0 j = start_time = time.time()#select from mysql to insert mongodb by lines.for i in range(0,count,): #print a,b #print i #print 'SELECT * FROM quiz_submission where quiz_submission_id > %d and quiz_submission_id <= %d' %(i,j) submission = mysql.query('SELECT * FROM table_name where table_field > %d and table_field <= %d' %(i,j)) #print submission if submission: #collection_name like mysql table_name mongo.collection_name.insert_many(submission) else: i += j += continue i += j +=end_time = time.time()deltatime = end_time - start_timetotalhour = int(deltatime / )totalminute = int((deltatime - totalhour * ) / )totalsecond = int(deltatime - totalhour * - totalminute * )#print migrate data total time consuming.print "Data Migrate Finished,Total Time Consuming: %d Hour %d Minute %d Seconds" %(totalhour,totalminute,totalsecond)

*注释:按照自己的需求更改上述代码中的数据库地址,用户,密码,库名,表名以及字段名等。

四、执行迁移脚本:

[root ~]#python nmytomongo.py &> /tmp/migratelog.txt &

脚本执行完成后查看/tmp/migratelog.txt数据迁移消耗的时间。

简单学习Python time模块 本文针对Pythontime模块进行分类学习,希望对大家的学习有所帮助。一.壁挂钟时间1.time()time模块的核心函数time(),它返回纪元开始的秒数,返回值为浮点

python中私有函数调用方法解密 本文实例讲述了python中私有函数调用方法。分享给大家供大家参考,具体如下:与大多数语言一样,Python也有私有的概念:①私有函数不可以从它们的

Python松散正则表达式用法分析 本文实例讲述了Python松散正则表达式用法。分享给大家供大家参考,具体如下:Python允许用户利用所谓的松散正则表达式来完成这个任务。一个松散正

标签: Python中MySQL数据迁移到MongoDB脚本的方法

本文链接地址:https://www.jiuchutong.com/biancheng/386122.html 转载请保留说明!

上一篇:python遍历目录的方法小结(python遍历文件目录)

下一篇:简单学习Python time模块(教你学python)

  • 新开网吧需要缴纳哪些税金
  • 分公司的企业所得税税率是多少
  • 已缴纳车船税的车船在同一年度
  • 报废汽车增值税税率
  • 成本结算怎么处理?
  • 企业税前扣除凭证包括增值税发票吗
  • 递延所得税资产和递延所得税负债
  • 用库存现金支付职工医药费用69元会计人员编制的
  • 向农业生产者收购原木进项税怎么算
  • 投资性房地产在非货币性资产交换怎么处理
  • 购进灭火器材怎么入账
  • 未实际收到的投资收益要纳税调整吗
  • 收回已冲销的坏账分录
  • 转让固定资产发生的费用可以税前扣除吗
  • 会计准则哪些科目变化最大
  • 合伙制创投企业
  • 善意取得虚开专票的条件包括
  • 公司存款利率
  • 成品油购进数据未同步怎么办
  • 对外捐赠衣物怎样入账
  • 一般企业每个月的保洁费用是多少
  • 接收虚开增值税专用发票要判刑吗
  • 从关联企业获得非工资报酬怎么缴纳个税?
  • 吊装费和吊车费是一样的不?
  • 国有土地租金怎么交税
  • 利润表里的其他业务利润怎么形成的
  • 关于设备延期交付说明
  • 如何维护电脑系统安全?
  • 间接费用是什么费用
  • 失业保险稳岗补贴是什么意思
  • 原材料赔偿会计分录
  • vue3中使用require
  • 蒂内河畔圣艾蒂安小镇,法国阿尔卑斯省 (© CAVALIER Michel/hemis.fr/Alamy Stock Photo)
  • vue的watch监听
  • php开发实战权威指南
  • 新企业会计准则是哪一年颁布的
  • 百度统计网址
  • 收到的国家电网电话
  • Yii CFileCache 获取不到值的原因分析
  • 持有至到期投资账务处理
  • html的表单怎么做
  • 支付价款含不含增值税
  • 小型微利企业的认定标准
  • c语言中fopen函数的头文件
  • 帝国cms使用手册
  • 招待费的进项税必须认证后转出吗
  • 新建厂房如何计提折旧费用
  • 银行承兑汇票收费标准
  • 固定资产清理如何申报增值税
  • 应收账款项目的金额公式
  • 认缴制和实缴制的时间
  • sql server2005备份
  • 母公司将子公司股权无偿转让给子公司
  • 支付货款怎么做记账凭证
  • 开办费新会计准则
  • 收到票据款
  • 建筑业建议
  • 账簿的保管年限有哪些规定
  • 工业企业增值税税率
  • 如何解决局域网问题
  • win7桌面卡死无响应
  • wind2003
  • linux磁盘配额实验报告
  • centos zsh
  • win7系统IE浏览器一点就闪退
  • node.js document
  • opengl 有哪些特点?与directx相比它有什么不同?
  • javascript怎么做
  • 批量创建用户
  • css实战案例
  • 仿京东首页html5
  • 浅析我国国防现状
  • jquery可以实现哪些效果
  • Android - DrawerLayout的使用
  • javascript函数
  • jquery设置iframe的src
  • 湖北农信换手机登录不了
  • 新吉高铁开工典礼
  • 车辆购置税退税需要什么资料
  • 潍坊市的职工医保多少钱
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设