位置: 编程技术 - 正文

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)

  • 出口退税进项税
  • 长期借款到期一年怎么算
  • 现金流量为负的隐患
  • 税控盘丢失需要罚款吗
  • 非居民企业转让财产所得税
  • 哪些企业可以享受加计扣除优惠政策?
  • 个税手续费返还政策最新规定2023
  • 建筑公司对外如何开票
  • 为什么要开增值税
  • 办理完税务手续是否还需要报税?
  • 会计利润和税务利润不一致
  • 小规模纳税人贷款利息收入增值税税率
  • 出口佣金支付
  • 进项税转出余额方向在哪一方
  • 交易性金融资产属于流动资产吗
  • 单独出售的包装物是否属于包装物的核算范围
  • 借 其他应付款
  • 固定资产清理会计处理例题
  • 公共基础设施折旧年限表 20
  • 一般纳税人企业所得税如何计算
  • 发票一定要开完了才能领取吗?
  • 环保税与排污费的关系
  • 机动车抵扣联是什么
  • php中的函数可以分为哪几种
  • 股东可以随时退出吗
  • groove.exe是什么
  • 车辆年审收费么
  • 餐饮企业库存盘点表
  • 自查补缴增值税如何申报
  • php魔术函数
  • 金融服务企业按照是否办理存款业务
  • 高新企业技术服务成本核算
  • 钢管扣件租赁公司社会实践报告怎么写范文
  • 小程序unload
  • 过来人告诉你:女人最珍贵的三种东西,舍得给你说明爱你
  • fping命令参数
  • php floatval
  • 如何使用扫描王
  • 网上学电脑的软件
  • 进项税额大于销项税额期末留抵
  • spring框架使用教程
  • phpstudy配置php环境变量
  • 购买备用品会计分录
  • php fgetc
  • 独立核算的分公司可以汇总纳税吗
  • 运输公司燃油费占比
  • 出口免税不退税会计分录
  • 税务新增办税人员
  • 网购报销需要发票和什么截图
  • 商誉的会计核算怎么核算
  • 资本支出预算属于经营预算吗
  • 完全删除sql server2012
  • 补发以前年度工资怎么做账
  • 销售成本会计英语
  • 接受捐赠的固定资产按什么入账
  • 公司外资是什么意思
  • 残保金是第二年交前一年的吗
  • 收购其他公司支付利润
  • 企业购买固定资产要交什么税
  • 研发费用加计扣除是什么意思啊
  • 小规模纳税人收入是含税还是不含税
  • 关于发票丢失的处罚
  • 评估入账的无形资产能摊销吗
  • windows server2008系统弹出今天必须修改密码该怎么处理?
  • 请问linux
  • win8.1无法连接无线网
  • sbsetup.exe - sbsetup是什么进程 有什么用
  • nodejs 代码加密
  • css条件语句
  • opengl绘制函数
  • macos 升级python
  • asm/semaphore.h: No such file or directory
  • vr虚拟现实技术
  • 怎样编?
  • jquery教程与例子
  • JavaScript Math.round() 方法
  • android studio怎么清除缓存
  • 国际货运怎么代理
  • 国家税务总局最新消息
  • 租赁发票交多少税费
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设