我想从我们的生产服务器获取数据到我的本地开发服务器以进行测试。我想知道是否有任何方法可以使用SQL查询将记录从prod服务器的db表复制到我的本地db表。这些表在列名和数据类型方面完全相同。
我知道我可以通过将转储转移到文件然后使用infile加载来实现。虽然我使用的是MySQL,但我想知道是否可以在其他数据库中执行此操作,如果是,那该怎么办?
答案 0 :(得分:2)
对于MySQL,可能最简单的方法是使用mysqladmin
(link):
mysqladmin create db_name
mysqldump -h 'other_hostname' --compress db_name | mysql db_name
使用DB2,只要您的DBA已定义对远程子系统的访问权限,就可以使用3部分表名(subsystem.authid.object
)执行此操作。
为了使其正常工作,执行转发的DB2必须在Z / OS上。 DB2 L(inux)U(nix)W(indows)不支持此功能。 See here.
语法正在使用INSERT
,与正常插入一样:
INSERT INTO table (n1, n2, ... nx)
SELECT n1, n2, ... nx
FROM subsystem.authid.object
WHERE ...
等
答案 1 :(得分:1)
如果是 SQL Server ,如果您定义a linked server,则可以使用简单的SELECT INTO
语句:
SELECT Column1, Column2, ...
INTO dbo.TableName
FROM LinkedServerName.DatabaseName.dbo.TableName
答案 2 :(得分:1)
所有主要数据库都具有复制功能或实现它的第三方软件。听起来你距离需要它的所有功能只有一步之遥,所以我建议考虑一下! http://www.adderpit.com/practical-postgresql/x8695.htm
希望有所帮助
答案 3 :(得分:1)
可以将数据从一个服务器数据库表插入另一个服务器数据库表 通过多种方式 (1)来自EXPORT和IMPORT实用程序的Oledb转移 这是GUI基础实用程序。 (2)通过执行链接服务器: - 首先执行此操作您必须在源数据库的目标数据库中创建链接服务器。 对象资源管理器=>服务器对象=>链接服务器=>新链接服务器=>服务器名称和登录名以及密码
然后你可以在其他服务器中超出其他数据库的表。