Professional SQL Server High Availability and Disaster Recovery
上QQ阅读APP看书,第一时间看更新

Understanding Transactional Replication

In this section, we'll look at how transactional replication works. The following diagram describes how transactional replication works:

Figure 2.1: Transactional replication example

This diagram shows the AdventureWorks database being replicated using transactional replication. Once transactional replication is configured, the snapshot agent, log reader agent, and distribution agent are created as part of the replication. The agents then work together, as described here, to replicate the transactions.

The snapshot agent is used once to initialize the subscriber database schema with that of the publisher. This isn't shown in the diagram, however, it's the first thing that happens when the transactional replication starts.

The subscriber database can be initialized using the publisher database backup, which is covered later in this lesson.

Once initialized, the transactions are replicated as follows:

  • Steps 1 and 2: The log reader agent continuously scans for committed transactions in the publisher database transaction log and inserts the transactions to be replicated into the distribution database.

    The log reader agent is at the distributor or at the publisher if the publisher acts as its own distributor.

  • Steps 3 and 4: The distribution agent reads the transactions from the distribution database and applies them to the subscriber. The distribution agent is at the distributor if it's a push subscription and at the subscriber if it's a pull subscription.