内容简介:将数据从 MySQL 迁移到 MongoDB
什么是 MongoDB
MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。 MongoDB 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
摘自百度百科: mongodb(分布式文档存储数据库)
为什么我要迁移到 MongoDB
一个原因之一:我闲的蛋疼....................
另一个原因:之前我 VPS 上的网站均是采用 MySQL 做数据库,在与 tornado 链接的时候使用了拥塞式的模块 torndb
,这样在面对大流量的时候,就会出现拥塞的现象虽然我的网站不会遇到这种大流量的状况。
为了使用上一个异步的数据库,所以我就打算趁现在网站数据不多,就迁移去 MongoDB ,并且使用上异步的 motor
做 tornado 的连接。
迁移过程
这里使用到了我上文所说的几个模块,分别是 torndb
和 pymongo
您可以使用下面的代码进行安装(请先确保你的服务器已经安装好了pip)
pip install torndb pip install pymongo
假定我们的 MySQL 的数据库是test ,我们需要将其中的articles 表迁移过去。
打开我们的 python 终端
root@imlonghao:~# python Python 2.7.9 (default, Mar 1 2015, 12:57:24) [GCC 4.9.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import torndb >>> import pymongo >>> mysql = torndb.Connection(host='localhost', database='test', user='root', password='root123456') >>> mongo = pymongo.MongoClient('mongodb://root:root123456@localhost').test >>> articles = mysql.query('SELECT * FROM articles') >>> mongo.articles.insert(articles) ......
在经过很长的等待之后,不出意外我们的数据库就已经迁移过去了。
以上所述就是小编给大家介绍的《将数据从 MySQL 迁移到 MongoDB》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。