转自:http://www.csser.com/dev/577.html
CSSer.com采用的是wordpress程序,数据库为mysql,要想移植到MongoDB数据库,则需要进行数据转换。
数据转移有多种方案,本质上需要将mysql数据转换为一种MongoDB可以直接导入的格式即可。MongoDB提供了mongoimport工具,可以支持导入json,csv的格式。
先来看一下mongoimport支持的参数:
$ mongoimport --help
options:
--help produce help message
-v [ --verbose ] be more verbose (include multiple times for more
verbosity e.g. -vvvvv)
-h [ --host ] arg mongo host to connect to ( <set name>/s1,s2 for sets)
--port arg server port. Can also use --host hostname:port
--ipv6 enable IPv6 support (disabled by default)
-u [ --username ] arg username
-p [ --password ] arg password
--dbpath arg directly access mongod database files in the given
path, instead of connecting to a mongod server -
needs to lock the data directory, so cannot be used
if a mongod is currently accessing the same path
--directoryperdb if dbpath specified, each db is in a separate
directory
-d [ --db ] arg database to use
-c [ --collection ] arg collection to use (some commands)
-f [ --fields ] arg comma separated list of field names e.g. -f name,age
--fieldFile arg file with fields names - 1 per line
--ignoreBlanks if given, empty fields in csv and tsv will be ignored
--type arg type of file to import. default: json (json,csv,tsv)
--file arg file to import from; if not specified stdin is used
--drop drop collection first
--headerline CSV,TSV only - use first line as headers
--upsert insert or update objects that already exist
--upsertFields arg comma-separated fields for the query part of the
upsert. You should make sure this is indexed
--stopOnError stop importing at first error rather than continuing
--jsonArray load a json array, not one item per line. Currently
limited to 4MB.
由上面的帮助文档可以看出,采用csv作为中间数据格式,无论对于mysql的导出,还是mongodb的导入,都算得上是成本最低了,于是一回就尝试了一把:
首先,将mysql数据库中的wp-posts表导出,一回偷懒了,直接用phpmyadmin的导出功能,选择csv格式导出,并选中了“删除字段中的换行符”以及“将字段名放在第一行”,保存文件名为csser.csv。
接着,到mongodb服务器,shell下连接MongoDB数据库,并进行数据导入:
$ mongoimport -d csser -c posts -type csv -file csser.csv --headerline
connected to: 127.0.0.1
imported 548 objects
$ mongo
MongoDB shell version: 1.8.1
connecting to: test
> use csser
switched to db csser
> db.posts.count()
547
> db.posts.find({}, {"post_title":1}).sort({"ID":-1}).limit(1)
{ "_id" : ObjectId("4df4641d31b0642fe609426d"), "post_title" : "CSS Sprites在线应用推荐-CSS-sprit" }
分享到:
相关推荐
数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出数据库文档导出...
本项目为基于Spark和JDBC技术的MongoDB数据导入与MySQL导出处理设计源码,包含218个文件,其中包括163个数据文件、28个Python源代码文件、11个文本文件、7个XML文件、2个IDE配置文件、2个锁定文件、2个控制文件、1个...
4. **MongoDB工具**:包括`mongod`(数据库服务)、`mongo`(交互式Shell)、`mongoimport/export`(数据导入导出)、`mongorestore/dump`(数据备份与恢复)以及`mongooplog`(操作日志回放)和`mongostat`(服务器...
在IT行业中,将数据从数据库导出到Excel是一项常见的任务,尤其在数据分析、报表生成以及数据交换时。本文将深入探讨如何实现这一功能,并提供一个基础的示例——"db2excel",来帮助理解这一过程。 首先,我们需要...
- 数据导入/导出:支持从多种格式(如CSV、Excel、XML等)导入数据到数据库,同时也可将数据导出为各种格式。 - 数据备份:定期自动备份数据库,确保数据安全。 - 实时监控:实时查看数据库性能指标,如查询执行...
- 选择数据源:确定要导出的数据库,这可能是关系型数据库(如MySQL、SQL Server、Oracle)或非关系型数据库(如MongoDB、CouchDB)。 - 选择数据范围:确定要导出的数据范围,可以是整个数据库、单一表或特定查询...
三、MongoDB数据库的dump与导入 1. MongoDB数据库dump: MongoDB提供了`mongodump`工具。为了备份一个名为`mydb`的数据库,使用: ```bash mongodump --username username --password password --db mydb --out ...
数据库导出到Excel是数据管理和分析中常见的操作,尤其在IT行业中,这是一项基础且重要的技能。Excel作为广泛使用的电子表格工具,能够处理和展示大量数据,便于数据分析、报表制作和共享。以下将详细讲解这一过程...
这个过程通常涉及到数据转换和清洗,以确保数据在新环境中能够正确地被理解和处理。 Java作为一种流行的编程语言,提供了丰富的库和API来处理数据库操作。例如,JDBC(Java Database Connectivity)是Java访问...
最新5级省市联动数据库,MongoDB数据库导出到MySQL,想要MongoDB数据的也可以联系我。最新爬取数据,截止到2017年10月31日。
任何需要快速、准确接收MySQL数据变化增量的场景均适用,例如广告传输流:输出到本地增量文件数据同步:可数据库同构复制,也可以跨异构数据源sync,比如MySQL到一些NoSQL,例如redis、mongodb,或者es、solr等提供...
6. 数据导入导出:支持从CSV、XML、Excel等多种格式导入数据到MongoDB,也可以将数据导出为这些格式,方便数据迁移和备份。 7. 脚本和任务调度:用户可以创建和管理MongoDB的脚本,同时设定定时任务,实现自动化...
DBeaver 采用 Eclipse 框架开发,支持插件扩展,并且提供了许多数据库管理工具:ER 图、数据导入/导出、数据库比较、模拟数据生成等。 DBeaver 通过 JDBC 连接到数据库,可以支持几乎所有的数据库产品,包括:MySQL...
用户可以直接将表中的数据复制粘贴到Excel中进行处理,或者从Excel粘贴数据回到数据库表,极大地提高了数据导入导出的效率。 3. **数据差异比较**:A5M2提供了一项实用的功能,即首次执行和再次执行的数据差异比较...
INTO OUTFILE`语句将MySQL数据导出为CSV文件,然后使用`mongoimport`导入到MongoDB。需要注意的是,数据格式和字段分隔符需要正确配置以适应导入。 在实际操作中,确保备份和恢复操作的安全性和完整性至关重要,这...
而Navicat121_mongodb_cs_x64.exe和Navicat121_mongodb_cs_x86.exe则是Navicat为MongoDB数据库设计的客户端应用程序,允许用户连接到MongoDB服务器,执行查询、数据导入导出、备份、同步、集群管理等任务。...
### MySQL与MongoDB的定时备份知识点详解 #### 一、MySQL与MongoDB备份的重要性 ...通过上述步骤,我们可以有效地实现MySQL和MongoDB数据库的定时备份及恢复功能,保障数据的安全性和业务的连续性。
使用ojdbc8.jar,Kettle可以连接到Oracle数据库,执行SQL查询、数据导入导出等操作。 【MySQL驱动】:mysql-connector-java-8.0.18.jar、mysql-connector-java-6.0.2.jar和mysql-connector-java-5.1.20-bin.jar是...
NoSQL数据库如MongoDB的文档导出可能需要用到`mongodump`命令。 在提供的文件名称列表中,`node-v6.11.2-win-x64`看起来是一个Node.js的版本,Node.js是一个流行的JavaScript运行环境,它有一些库如`mysql`或`pg`可...
数据库是用于存储和管理结构化数据的系统,常见的有关系型数据库(如MySQL、Oracle、SQL Server)和非关系型数据库(如MongoDB、Cassandra)。它们以高效、安全的方式存储大量数据,并提供事务处理、查询优化、数据...