对于测试代码,您将使用SQLyog的“复制到其他主机”选项将数据从实时数据库复制到测试数据库。大多数时候,这还可以。但是对于某些表来说,数据集绝对是巨大的,我只需要一个相对较小的数据来进行测试。 “对不同主机”对话框的副本可让您选择仅复制结构或结构和数据。

如果我只想要部分数据,我必须运行一个 select * on table where condition 查询,将结果导出为SQL查询,将该查询到测试主机并运行。尽管这起作用,但这并不是一个有趣的过程,尤其是考虑到即使是“小”测试数据的子集仍然有很多行的情况。如果某些数据已经复制了,那么我必须编写查询以获取目标上的键列表,然后添加一个查询,然后添加一个 where key not in (key list) 条件到主条件。

有没有办法将“副本到不同主机”功能仅选择性地复制到目标数据库?

有帮助吗?

解决方案

目前无法使用在单个行中使用的地方条件 sqlyog 复制工具。只要仅选择一个表即可进行复制,就可以了,但是有了更多的桌子,就不会有意义。

您现在可以做的是在源上创建一个小的“虚拟”表并复制此表。工作流可能是:

1)创建表 newtable 如选择 * oldtable 在哪里 ...

2)现在复制 newtable 使用sqlyog gui,如果需要,下一个将其放在源上

3)重命名 newtable 如果需要的话

这将减少网络流量,仅考虑要转移的行。并且您将避免导出到文件,因为“减少”保存在源服务器内(不涉及文件系统或网络)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top