Esempio n. 1
0
    //配置发布和分发服务器
    protected void Button5_Click(object sender, EventArgs e)
    {
        string distributionDbName = "distribution";
        string publisherName      = SMO.publisherName;       //"rd01";发布者服务器名
        string publicationDbName  = SMO.publicationDatabase; //"HdHouse";发布的数据库名

        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);
            TextBox3.Text += "An error occured when installing distribution and publishing." + ex + " \r\n";
        }
        finally
        {
            conn.Disconnect();
        }
    }
Esempio n. 2
0
        public void replication()
        {
            // Set the server and database names
            string distributionDbName = "TestDb";
            string publisherName      = "DESKTOP-9UAIISP\\MSSQLSERVER2017";
            string publicationDbName  = "TestMergeDb";

            DistributionDatabase  distributionDb;
            ReplicationServer     distributor;
            DistributionPublisher publisher;
            ReplicationDatabase   publicationDb;

            // Create a connection to the server using Windows Authentication.
            ServerConnection conn = new ServerConnection(publisherName, "sa", "Ads78ghj@2");

            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("sa", 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 AdventureWorks2012 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();
            }
        }
Esempio n. 3
0
    //配置发布和分发服务器
    protected void Button5_Click(object sender, EventArgs e)
    {
        string distributionDbName = "distribution";
        string publisherName =SMO.publisherName;//"rd01";发布者服务器名
        string publicationDbName = SMO.publicationDatabase; //"HdHouse";发布的数据库名

        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);
            TextBox3.Text += "An error occured when installing distribution and publishing." + ex + " \r\n";
        }
        finally
        {
            conn.Disconnect();
        }
    }