我已经尝试过搜索,但到目前为止,我只找到了“导出表模式而不带数据”的结果,这与我想要做的恰恰相反。有没有一种方法可以从SQL表导出数据,而不需要脚本重新创建表?
如果有人有更好的解决方案,下面是我试图解决的问题:我有两个数据库,每个数据库在不同的服务器上;我称它们为原始数据库和分析数据库。原始数据库是“真正的”数据库,它收集发送到其服务器的记录,并使用事务性InnoDB引擎将它们存储在一个表中。分析数据库位于内部LAN上,用于镜像原始数据库,并将定期更新以使其与原始数据库匹配。它是这样分离的,因为我们有一个程序,它将对数据进行一些分析和处理,而我们不想在实时服务器上进行分析和处理。
因为分析数据库只是一个副本,所以它不需要是事务性的,我希望它对其表使用MyISAM引擎,因为我发现它在导入数据和查询时要快得多。问题是,当我从实时原始数据库中导出表时,表模式也会被导出,并且表引擎被设置为InnoDB,所以当我运行脚本将数据导入到分析数据库中时,它会删除MyISAM表并将其重新创建为InnoDB表。我想自动执行这个导出/导入数据的过程,但是生成的sql脚本文件将表引擎从MyISAM更改为InnoDB的这个问题让我停了下来,而且我不知道如何解决这个问题。我知道的唯一方法是编写一个程序,可以直接访问实时原始数据库,执行查询,并使用结果更新分析数据库,但我正在寻找替代方案。
发布于 2012-09-28 01:08:44
是像这样吗?
mysqldump --no-create-info ...发布于 2012-09-28 01:09:49
使用no-create-info选项
mysqldump --no-create-info db [table]https://stackoverflow.com/questions/12626567
复制相似问题