У меня есть серверы Windows, на которых работает SQL Server 200 (5/8) во многих удаленных местах на восточном побережье. В нашем корпоративном офисе мы пытаемся настроить сервер отчетов, который может работать в режиме реального времени, насколько это возможно.
Я ищу руководство о том, как выполнить настройку, при которой все мои удаленные машины реплицируются на один главный сервер, который может запрашивать программное обеспечение.
Это возможно?
РЕДАКТИРОВАТЬ: мой главный SQL-сервер работает под стандартом SQL Server 2008 R2.
Есть несколько способов добиться этого. Наиболее простые варианты будут следующими:
Репликация - Состоит из одного или нескольких серверов по модели издатель-подписчик. Репликация транзакций может копировать и распространять данные из одной базы данных в одну или несколько других баз данных. В вашей ситуации вы можете настроить публикацию для каждого из удаленных серверов, которые будут реплицировать определенные данные, которые вам нужны для отчетности, в указанную базу данных на вашем корпоративном сервере. Вы также можете использовать репликацию слиянием, если хотите объединить все данные в единую базу данных (но для этого потребуется, чтобы все базы данных имели одинаковую схему).
Зеркальное отображение базы данных - Состоит из основного и зеркального сервера, который будет применять каждую транзакцию с основного сервера (т. Е. Удаленного сервера) к зеркальному серверу (т. Е. Корпоративному серверу). Зеркальная база данных недоступна для клиентов; тем не мение; вы можете создать моментальный снимок базы данных на зеркальном сервере, который можно использовать для отчетов. Этот снимок не будет содержать данные в реальном времени, так как он будет содержать только самые свежие данные, такие как снимок.
Оба эти параметра настраиваются для каждой базы данных - это означает, что если у вас есть 10 разных баз данных в удаленных местах, которые вы хотите реплицировать / зеркалировать, вам нужно будет создать 10 соответствующих баз данных в корпоративном офисе.
Репликация позволяет вам настроить, какие данные вы будете реплицировать, в то время как зеркальное отображение базы данных перемещает все данные. Поскольку вам нужны данные, близкие к реальному времени, мне кажется, что лучшим вариантом будет репликация транзакций.
Эти плюсы и минусы подробно описаны в следующих статьях из электронной книги: