COMO: Utilizar replicação com o SQL Server 2000 Desktop Engine (MSDE 2000)

Traduções de Artigos Traduções de Artigos
Artigo: 324992 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

O Microsoft SQL Server 2000 Desktop Engine (MSDE 2000) é uma versão redistribuível do motor de bases de dados relacionais SQL Server 2000. Utilizando o MSDE 2000, os programadores de aplicações dispõem de meios para distribuir a respectiva aplicação e uma base de dados na qual armazenar os dados. Além disso, o MSDE 2000 suporta replicação. Esta é uma funcionalidade muito útil para os programadores de aplicações, especialmente se os utilizadores não estiverem ligados e pretenderem intercalar a respectiva cópia local dos dados com um servidor central. Contudo, a replicação do MSDE 2000 inclui determinadas limitações e advertências a ter em conta. Este artigo descreve essas advertências da replicação do MSDE 2000 e também fornece informações sobre como gerir a replicação com o MSDE 2000.

Quando utiliza a replicação com edições normais do SQL Server, todas as funcionalidades do SQL Server e de replicação estão disponíveis. O MSDE 2000 pode efectuar a replicação entre todas as versões do SQL Server; no entanto, quando utiliza o MSDE 2000 como parte da topologia de replicação, existem determinadas limitações. Algumas destas limitações ocorrem devido a limitações inerentes ao MSDE 2000 e outras são limitações de concepção relativas ao MSDE 2000 e à replicação.

Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Advertências e limitações específicas da replicação

  • O MSDE 2000 pode funcionar como um editor ou distribuidor e como subscritor, e pode efectuar replicação entre versões MSDE e versões normais do SQL Server. Além disso, não pode utilizá-lo para publicação transaccional, mas pode utilizá-lo como editor de replicação de instantâneo (snapshot) e replicação de intercalação (merge), e como subscritor para os três tipos de publicação.
  • Não é possível utilizar distribuidores remotos com o MSDE 2000. Um editor do MSDE 2000 tem de utilizar o mesmo servidor que o distribuidor.
  • A pasta Repldata não é criada durante a configuração do MSDE 2000, o que gera um erro quando tenta configurar uma publicação utilizando a pasta de instantâneos predefinida. Para utilizar a localização de instantâneos predefinida, crie uma pasta Repldata na pasta MSSQL ou MSSQL$InstanceName e crie a publicação.

Advertências e limitações específicas do MSDE 2000

  • O MSDE 2000 limita o tamanho da base de dados a 2 GB. Se o MSDE 2000 fizer parte da topologia de replicação, o tamanho da base de dados replicada é limitado a 2 GB. Se o MSDE 2000 for o subscritor, os agentes de replicação falham depois de a base de dados exceder 2 GB. Nessa altura, considere a actualização do subscritor para uma edição normal do SQL Server. Para obter informações adicionais sobre como passar do MSDE 2000 para uma edição normal do SQL Server, clique no número do artigo existente abaixo para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
    325023 Upsize SQL Server 2000 Desktop Engine to SQL Server
  • O número de ligações ao MSDE 2000 está optimizado para 5 ligações. Isto poderá afectar o desempenho da replicação se o MSDE 2000 for o editor e existirem subscritores suficientes da publicação ou se for um subscritor de múltiplas publicações.

Utilizar o MSDE 2000 como um editor ou distribuidor

Quando o MSDE 2000 faz parte da topologia de replicação pode agir como o editor, o distribuidor ou o subscritor. Quando utiliza o MSDE 2000 como editor ou distribuidor, tenha em conta as seguintes limitações:
  • O distribuidor e o editor têm de estar sempre no mesmo computador. Se a publicação for de intercalação, são expandidos (spawned) múltiplos threads no editor ou distribuidor para processar a intercalação. E se existirem múltiplos subscritores da publicação, o número de threads expandidos no editor aumenta significativamente. Isto pode dar origem a problemas de desempenho devido às limitações inerentes ao MSDE 2000.
  • Num ambiente de replicação activo, onde existe um grande número de subscritores, a Microsoft recomenda a utilização da edição normal do SQL Server como editor ou distribuidor, em vez do MSDE 2000.

Utilizar o MSDE 2000 como um subscritor

O MSDE 2000 é primariamente utilizado em cenários desligados. Devido a isto, numa topologia de replicação, o MSDE 2000 funciona normalmente como subscritor de uma publicação de intercalação. Seguem-se os problemas típicos que poderão ocorrer quando utiliza MSDE 2000 como subscritor:
  • A base de dados de subscrição excede o limite de 2 GB.
  • A utilização de múltiplos subscritores poderá provocar uma sobrecarga do MSDE 2000 e a respectiva perda de desempenho.

Problemas de licenciamento

O MSDE 2000 não necessita de licenciamento quando utilizado num modo autónomo, mas quando utilizado como parte de uma topologia de replicação que envolva edições normais do SQL Server, se o servidor estiver no modo "por posto de trabalho" por oposição ao modo "por processador", cada subscritor do MSDE 2000 tem de ter licença de acesso de cliente (CAL, client-access license).

Para obter mais informações sobre o licenciamento do SQL Server, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/sql/howtobuy/SQL2KLic.doc

Gerir a replicação com o MSDE 2000

Em edições normais do SQL Server, gere a replicação utilizando o SQL Server Enterprise Manager. A tarefa de criar a publicação e os subscritores é, normalmente, efectuada através da interface de utilizador da replicação no SQL Server Enterprise Manager. Uma vez que o MSDE 2000 não inclui o SQL Server Enterprise Manager, tem de administrar e gerir a replicação utilizando programas personalizados. Se o SQL Server Enterprise Manager estiver disponível num computador e puder registar o MSDE 2000 no SQL Server Enterprise Manager, poderá gerir a replicação utilizando o SQL Server Enterprise Manager.

Conforme mencionado anteriormente, o MSDE 2000 pode funcionar como um editor ou subscritor e, na maioria das situações, é utilizado como subscritor. A secção seguinte descreve como criar e gerir subscrições do MSDE 2000.

Como criar uma subscrição para o MSDE 2000

Existem várias formas de criar uma subscrição para um MSDE 2000 Subscriber. Os métodos que se seguem baseiam-se no pressuposto de que o MSDE 2000 não está registado em nenhum SQL Server Enterprise Manager:
  • 'Gestor de sincronização' do Windows
  • Controlos ActiveX de replicação
  • Gerir a replicação utilizando objectos de replicação DMO do SQL
  • Utilizar o utilitário de linha de comandos OSQL para adicionar tarefas de replicação

Gestor de sincronização do Windows

O Gestor de sincronização (Synchronization Manager) do Windows é um utilitário disponível no Microsoft Windows 2000 e em qualquer computador com o Microsoft Internet Explorer 5.0. Pode utilizá-lo para sincronizar ou para distribuir dados entre instâncias do Microsoft SQL Server 2000, quando utilizar replicação de instantâneo, replicação transaccional ou replicação de intercalação. Para obter mais informações sobre o Gestor de sincronização (Synchronization Manager) do Windows, consulte o tópico "Windows Synchronization Manager" no SQL Server 2000 Books Online.

NOTA: quando utiliza o Gestor de sincronização (Synchronization Manager) do Windows, apenas pode criar uma subscrição de solicitação (pull subscription) anónima.

Para criar uma subscrição:
  1. Abra o Gestor de sincronização (Synchronization Manager) do Windows: Clique em Iniciar (Start), clique em Programas (Programs), clique em Acessórios (Accessories) e clique em Sincronizar (Synchronize).
  2. Na janela Criar uma nova subscrição são apresentadas as seguintes três opções: (Para adicionar uma subscrição manualmente, utilize a terceira opção.)
    • Efectuar pesquisas no Active Directory.
    • Anexar uma base de dados de subscrição do SQL Server.
    • Especificar manualmente as informações de publicação e subscrição.
  3. Na janela de criação de subscrição anónima, escreva as informações de subscrição e publicação.
  4. Clique em OK; a subscrição é apresentada em Microsoft SQL Server 2000, da próxima vez que abrir o Gestor de sincronização (Synchronization Manager) do Windows.
  5. Para sincronizar a subscrição, clique na subscrição que pretende sincronizar e clique em Sincronizar.
NOTA: se tiver a publicação listada no Active Directory, ou se conseguir criar subscrições anexáveis para a publicação, utilize umas das duas primeiras opções. Para obter mais informações sobre a publicação do Active Directory e subscrições anexáveis, consulte os tópicos "Active Directory Services" e "Attach Subscription" no SQL Server 2000 Books Online.

Depois de criar a subscrição, pode geri-la a partir do Gestor de sincronização (Synchronization Manager) do Windows clicando em Propriedades (Properties). Ao fazer isto, pode reinicializar a subscrição, anular a subscrição e efectuar outras alterações.

Para obter informações adicionais sobre o Gestor de sincronização (Synchronization Manager) do Windows, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
292442 How to use the Windows Synchronize Manager with Pull subscribers

Controlos ActiveX de replicação

Na maioria dos casos, o MSDE 2000 é utilizado como servidor para aplicações que são implementadas em computadores de utilizadores. Nestes casos, em que é necessária replicação, pode utilizar controlos ActiveX de replicação na aplicação para gerir a replicação para esse subscritor de MSDE 2000.

Esta aplicação que está a distribuir pode utilizar objectos ActiveX de replicação para criar subscrições de uma publicação de intercalação, transaccional ou de instantâneo. Além disso, pode utilizar os métodos e propriedades destes objectos para gerir estas subscrições. Por exemplo, se estiver a implementar uma aplicação do Microsoft Visual Basic e tiver de replicar dados para o servidor principal que tem o SQL Server em execução, pode incluir código na aplicação para criar a subscrição e, em seguida, efectuar a sincronização.

Para ver aplicações de exemplo que demonstram como utilizar os controlos ActiveX de replicação para criar e gerir subscrições de replicações de intercalação, transaccionais ou de instantâneo, consulte o tópico "Developing Replication Applications Using ActiveX Controls" no SQL Server 2000 Books online.

Gerir a replicação utilizando objectos de replicação do SQL-DMO

SQL Distributed Management Objects (SQL-DMO) é uma colecção de objectos que encapsulam a base de dados do Microsoft SQL Server e a gestão da replicação. Pode criar uma aplicação utilizando o Microsoft Visual C++ ou o Microsoft Visual Basic e, em seguida, utilizar o objectos SQL-DMO para configurar e gerir a replicação.

Para obter mais informações sobre SQL-DMO e sobre o desenvolvimento de aplicações utilizando SQL-DMO, consulte o tópico "Developing SQL-DMO Applications" no SQL Server 2000 Books Online.

Utilizar o utilitário da linha de comandos para adicionar trabalhos de replicação

OSQL é um utilitário da linha de comandos incluído na instalação MSDE 2000. Pode utilizar esta ferramenta para ligar ao SQL Server e para executar consultas e scripts. Para obter informações adicionais sobre o OSQL, clique no número de artigo que se segue para visualizar o artigo na base de dados da Microsoft (KB, Microsoft Knowledge Base):
325003 How to manage the SQL Server Desktop Engine (MSDE 2000) by using the Osql utility
Além disso, pode criar subscrições de solicitação de publicações do SQL Server directamente, utilizando instruções Transact-SQL. Quando cria a subscrição utilizando procedimentos armazenados, é criada uma tarefa no subscritor. Uma vez que o MSDE 2000 não inclui ferramentas de cliente, tem de utilizar procedimentos armazenados para parar e iniciar a tarefa.

NOTA: este exemplo baseia-se no pressuposto de que a subscrição é anónima e de que se destina a uma publicação de intercalação.
  1. A partir do subscritor do MSDE 2000, utilize o OSQL para estabelecer ligação à base de dados de subscrição.
  2. Adicione a subscrição anónima utilizando o procedimento armazenado sp_addmergepullsubscription.
  3. Adicione a tarefa do agente de intercalação utilizando o procedimento armazenado sp_addmergepullsubscription_agent.
  4. Inicie a tarefa utilizando o procedimento armazenado sp_start_job.
sp_addmergepullsubscription @publication =  'pubs',@publisher =  'fastnfurious'  ,@publisher_db =  'pubs'  
,@subscriber_type =  'anonymous' 
 
sp_addmergepullsubscription_agent @name =  'MSDE Sub'  ,@publisher =  'fastnfurious' ,@publisher_db = 'pubs'
,@publication = 'pubs' ,@publisher_security_mode =  0,@publisher_login =  login,@publisher_password =  'strongpassword' 
,@subscriber =  'gash2ksrv'  ,@subscriber_db = 'sub'  ,@subscriber_security_mode =  0  ,@subscriber_login =  'login'  
,@subscriber_password =  'strongpassword'  ,@distributor =  'fastnfurious' 
,@distributor_security_mode =  0,@distributor_login =  'login'

sp_start_job @job_name ='MSDE Sub'
				

NOTA: este código não inclui quaisquer parâmetros para controlar o agendamento da tarefa. Além disso, não existe configuração do procedimento para determinar o estado da tarefa. Se pretender que o estado da tarefa seja escrito no registo de eventos, modifique a tarefa utilizando o procedimento armazenado sp_update_job e defina o parâmetro @notify_level_eventlog.

Para obter mais informações sobre estes procedimentos armazenados, consulte os seguintes tópicos no SQL Server 2000 Books Online:
  • "sp_addmergepullsubscription"
  • "sp_addmergepullsubscription_agent"
  • "sp_start_job"
  • "sp_update_job"
Os métodos descritos anteriormente neste artigo proporcionam várias formas de gerir uma subscrição do MSDE 2000. Além destes métodos, se o subscritor do MSDE 2000 estiver registado no SQL Enterprise Manager, poderá administrar o subscritor (editor) do MSDE 2000 como administra qualquer outra instância do SQL Server.

Gerir o distribuidor e o editor

O MSDE 2000 pode agir como um editor ou distribuidor.

Os passos para criar um distribuidor e um editor no MSDE 2000 são semelhantes aos passos efectuados nas edições normais do SQL Server:
  1. Se o servidor estiver registado no SQL Enterprise Manager, pode configurar o distribuidor e o editor utilizando o Replication Wizard. Para obter mais informações, consulte o tópico "Replication Wizards" no SQL Server 2000 Books Online:
  2. Se não estiverem disponíveis ferramentas de cliente, pode utilizar o utilitário de linha de comandos OSQL e procedimentos armazenados ou SQL-DMO para configurar o distribuidor e o editor.

Referências

Para transferir uma versão actualizada do SQL Server 2000 Books Online, visite o seguinte Web site da Microsoft:
http://www.microsoft.com/sql/techinfo/books.mspx
Para obter informações adicionais sobre como utilizar controlos ActiveX de replicação com o Microsoft Visual Basic .NET, clique nos números de artigo existentes abaixo para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
319648 How to program the SQL Snapshot and SQL Distribution control by using Visual Basic .NET
319647 How to program the SQL Merge control by using Visual Basic .NET
Para obter informações adicionais sobre o MSDE 2000, clique nos números de artigo que se seguem para visualizar os artigos na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
319930 How to connect to Microsoft Desktop Engine
241397 How to back up a Microsoft Data Engine database with Transact-SQL

Propriedades

Artigo: 324992 - Última revisão: 24 de novembro de 2006 - Revisão: 2.2
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Desktop Engine (Windows)
  • Microsoft SQL Server 2000 64-bit Edition
Palavras-chave: 
kbhowtomaster KB324992

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com