ReplicationServer.InstallDistributor Method (String, DistributionDatabase)
現在接続されている Microsoft SQL Server のインスタンスにディストリビュータをインストールします。
名前空間: Microsoft.SqlServer.Replication
アセンブリ: Microsoft.SqlServer.Rmo (microsoft.sqlserver.rmo.dll 内)
構文
'宣言
Public Sub InstallDistributor ( _
password As String, _
distributionDB As DistributionDatabase _
)
public void InstallDistributor (
string password,
DistributionDatabase distributionDB
)
public:
void InstallDistributor (
String^ password,
DistributionDatabase^ distributionDB
)
public void InstallDistributor (
String password,
DistributionDatabase distributionDB
)
public function InstallDistributor (
password : String,
distributionDB : DistributionDatabase
)
パラメータ
password
ディストリビュータへのアクセスに使用する distributor_admin ログインのパスワードです。セキュリティ メモ : 可能な場合は、実行時にセキュリティ資格情報の入力を求めるメッセージをユーザーに対して表示します。資格情報を格納する必要がある場合は、Windows .NET Framework で提供される cryptographic services を使用します。
- distributionDB
ディストリビュータによって使用されるディストリビューション データベースを表す DistributionDatabase オブジェクトです。
例外
例外の種類 | 条件 |
---|---|
ApplicationException | ディストリビュータがサーバーに既にインストールされている場合。 |
ArgumentException | distributionDB が NULL であるか、password が 128 バイトを超えているか、または NULL 文字を含んでいる場合。 |
解説
ディストリビュータがリモート パブリッシャを使用している場合、password には、強力なパスワードを指定する必要があります。password が null に設定されている場合は、ランダムなパスワードが生成されますが、最初のリモート パブリッシャがディストリビュータに登録されるときに ChangeDistributorPassword を呼び出して、このパスワードをリセットする必要があります。
このメソッドのオーバーロードは、リモート サーバーから InstallDistributor を呼び出す前に、ディストリビュータ側で呼び出す必要があります。
InstallDistributor メソッドを呼び出すことができるのは、固定サーバー ロール sysadmin のメンバだけです。
InstallDistributor メソッドは、sp_adddistributor (Transact-SQL) ストアド プロシージャに相当します。
この名前空間、クラス、またはメンバは、.NET Framework 2.0 でのみサポートされています。
使用例
// Set the server and database names
string distributionDbName = "distribution";
string publisherName = publisherInstance;
string publicationDbName = "AdventureWorks";
DistributionDatabase distributionDb;
ReplicationServer distributor;
DistributionPublisher publisher;
ReplicationDatabase publicationDb;
// Create a connection to the server using Windows Authentication.
ServerConnection conn = new ServerConnection(publisherName);
try
{
// Connect to the server acting as the Distributor
// and local Publisher.
conn.Connect();
// Define the distribution database at the Distributor,
// but do not create it now.
distributionDb = new DistributionDatabase(distributionDbName, conn);
distributionDb.MaxDistributionRetention = 96;
distributionDb.HistoryRetention = 120;
// Set the Distributor properties and install the Distributor.
// This also creates the specified distribution database.
distributor = new ReplicationServer(conn);
distributor.InstallDistributor((string)null, distributionDb);
// Set the Publisher properties and install the Publisher.
publisher = new DistributionPublisher(publisherName, conn);
publisher.DistributionDatabase = distributionDb.Name;
publisher.WorkingDirectory = @"\\" + publisherName + @"\repldata";
publisher.PublisherSecurity.WindowsAuthentication = true;
publisher.Create();
// Enable AdventureWorks as a publication database.
publicationDb = new ReplicationDatabase(publicationDbName, conn);
publicationDb.EnabledTransPublishing = true;
publicationDb.EnabledMergePublishing = true;
}
catch (Exception ex)
{
// Implement appropriate error handling here.
throw new ApplicationException("An error occured when installing distribution and publishing.", ex);
}
finally
{
conn.Disconnect();
}
スレッド セーフ
この型の public static (Microsoft Visual Basic では共有 ) メンバは、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。
プラットフォーム
開発プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
対象プラットフォーム
サポートされているプラットフォームの一覧については、「SQL Server 2005 のインストールに必要なハードウェアおよびソフトウェア」を参照してください。
参照
関連項目
ReplicationServer Class
ReplicationServer Members
Microsoft.SqlServer.Replication Namespace