MongoDB:MySQL数据向MongoDB迁移
2017-08-12 09:16
417 查看
MongoDB:MySQL数据向MongoDB迁移
背景
MySQL作为一个普遍使用的关系型数据库,其性能毋庸置疑,但是当MySQL中的数据太过于庞大时,对查询效率会产生较大的影响,所有我们将过期不常使用的数据迁移到MongoDB中。而MongoDB作为nosql数据库的一种,可以十分方便的存储大规模数据,且它的操作方式和MySQL十分相似,可以说MySQL能够做到的都可以使用MongoDB实现。迁移
1 将MySQL数据提取处理,包括字段名称2 将提取到的数据转变成json格式
3 存储到MongoDB中
具体如下
1 使用python中的mysql.connector库MySQL数据库:
import mysql.connector,使用pymongo连接mongodb数据库:
import pymongo。
2 从MySQL中读取数据,包括数据的字段名称:
sql = 'select * from %s where id = %s'%(table_names[1],order_id) cursor.execute(sql) rows = cursor.fetchall() column_names = [d[0] for d in cursor.description]
3 使用继承子dict的类将读取到的数据转换成字典的数组,以便于存入mongodb中
#定义一个继承自dict的类 class Row(dict): """A dict that allows for object-like property access syntax.""" def __getattr__(self, name): try: return self[name] except KeyError: raise AttributeError(name)
将数据转换成json格式:
item = [Row(zip(column_names, row)) for row in rows] item = item[0] if item: '''merge_set_by_set是我定义的把多个表相关联的数据表的数据存放到一起组合成一个json的函数''' merge_set_by_set(mongo_item, item,table_names[0])
4 将数据存放到mongodb中
if mongo_items: try: mongo.order_info1.insert_many(mongo_items) print('=success insert into mongodb') except: print('fail')
至此,就可以完成从MySQL向mongodb迁移数据的脚本了
相关文章推荐
- Python迁移MySQL数据到MongoDB脚本
- mysql数据迁移到mongoDB中,如何操作?
- mysql数据迁移到mongodb之工具迁移
- Python中MySQL数据迁移到MongoDB脚本的方法
- Python中MySQL数据迁移到MongoDB脚本的方法
- mysql数据迁移到mongodb之自写方法实现
- MySQL迁移数据到MongoDB并同步
- 将mongodb数据迁移到mysql中
- 续【将数据从MongoDB迁移到mysql】
- MySQL 数据据库迁移 sqlServer 步骤
- MySQL如何跨机器迁移数据?
- Mysql数据迁移工具 Mysql Migration Tools
- 百万级别数据,数据库Mysql,Mongodb,Hbase如何选择?
- Mysql 数据迁移后 启动出错
- 将mongodb 数据指定字段导出,然后指定字段导入mysql 实例 及相关问题解决
- Mysql学习总结(35)——Mysql两千万数据优化及迁移
- mongodb3.0 单机数据迁移 分片复制集
- mysql数据文件迁移到新硬盘分区的方法
- mysql通过拷贝数据文件的方式进行数据库迁移
- 将MySQL数据导入MongoDB