SQL Server간에 데이터를 복사하기위한 웹 응용 프로그램을 개발 중입니다. 이 도구를 사용하면 복사 할 서버를 지정할 수 있으며 원본 서버에서 대상 서버로 항상 동일한 이름의 특정 데이터베이스를 복사합니다.SQL 서버간에 데이터베이스 복사
이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 데이터가 상당히 클 수 있으므로 속도도 고려해야합니다. 이것
내 시도는 내가 SQL Server Management Studio를 사용하여 만든 SSIS 패키지를 실행하려고하는 것입니다. 패키지는 로컬에 저장됩니다.
계획은 원본 및 대상 연결 문자열을 수정하고 패키지를 시작하는 것입니다.
이는 그렇게 내 코드입니다 : 내가 여기에서 어떤 아이디어가 갈 곳 정말 모르겠어요
A first chance exception of type 'System.Runtime.InteropServices.COMException' occurred in Microsoft.SqlServer.ManagedDTS.dll
A first chance exception of type 'Microsoft.SqlServer.Dts.Runtime.DtsComponentException' occurred in Microsoft.SqlServer.ManagedDTS.dll
: pkg
가 나는 다음과 같은 예외를 얻을 실행
public void DataTransfer(String sourceConnection, String destConnection, String pkgLocation)
{
Package pkg;
Application app;
DTSExecResult pkgResults;
try
{
app = new Application();
pkg = app.LoadPackage(pkgLocation, null);
foreach (ConnectionManager connectionManager in pkg.Connections)
{
SqlConnectionStringBuilder builder;
switch (connectionManager.Name)
{
case "SourceConnection":
builder = new SqlConnectionStringBuilder(sourceConnection);
builder.Remove("Initial Catalog");
builder.Add("Initial Catalog", "StagingArea");
var sourceCon = builder.ConnectionString + ";Provider=SQLNCLI;Auto Translate=false;";
//Added spaces to retain password!!!
sourceCon = sourceCon.Replace(";", "; ");
connectionManager.ConnectionString = sourceCon;
Debug.WriteLine(connectionManager.ConnectionString.ToString());
break;
case "DestinationConnection":
builder = new SqlConnectionStringBuilder(destConnection);
builder.Remove("Initial Catalog");
builder.Add("Initial Catalog", "StagingArea");
var destCon = builder.ConnectionString + ";Provider=SQLNCLI;Auto Translate=false;";
//Added spaces to retain password!!!
destCon = destCon.Replace(";", "; ");
connectionManager.ConnectionString = destCon;
Debug.WriteLine(connectionManager.ConnectionString.ToString());
break;
}
}
pkgResults = pkg.Execute();
}
catch (Exception e)
{
throw;
}
Debug.WriteLine(pkgResults.ToString());
}
?
지금까지 해보신 것은 무엇입니까? 어떤 문제가 발생 했습니까? SSIS와 같은 기존 옵션을 고려해 보셨습니까? –
http://www.sqlservercentral.com/articles/Database+Mirroring/66357/ –
가능하면 SSIS를 사용하고 싶습니다. 서버에 Integration Services가 설치되어 있어야합니다. 지금까지 SSIS와 bcp 유틸리티를 살펴 보았습니다 ... –