Criação de um servidor vinculado para uma instância de BD do RDS for SQL Server
Crie um servidor vinculado para a instância de BD do SQL Server chamada 2 para acessar outra instância de BD do SQL Server chamada 1.
- Ative as transações distribuídas das duas instâncias de BD consultando Transações distribuídas e adicione as informações do host de extremidade de par entre si. Para servidores off-line ou servidores ECS, Resolução de nomes em servidores remotos (ECSs).
Se duas instâncias de BD 1 e 2 estiverem na mesma VPC, use o endereço IP flutuante. Se o servidor do ECS e as instâncias de BD do RDS não estiverem na mesma VPC ou se uma instância de BD estiver off-line, use um EIP. Para obter detalhes sobre como vincular um EIP a uma instância de BD, consulte Vinculação e desvinculação de um EIP.
- Na instância de BD 1, crie o banco de dados dbtest1 como usuário rdsuser.
- Na instância de BD 2, execute os seguintes comandos para criar um servidor vinculado como usuário rdsuser.
USE [master]
GO
EXEC master.dbo.sp_addlinkedserver @server = N'TEST', @srvproduct=N'mytest', @provider=N'SQLOLEDB', @datasrc=N'192.168.***.***,1433'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'TEST', @locallogin = NULL , @useself = N'False', @rmtuser = N'rdsuser', @rmtpassword = N'********'
GO
Tabela 1 Descrição do parâmetro Parâmetro
Descrição
@server
Especifica o nome do servidor vinculado.
@srvproduct
Especifica o nome do produto.
@provider
Use o valor padrão.
@datasrc
Especifica o endereço IP e a porta da instância de BD a ser acessada.
@rmtsrvname
Especifica o nome para fazer logon no servidor vinculado.
@rmtuser
Especifica o nome de usuário (rdsuser).
@rmtpassword
Especifica a senha do usuário.
- Depois que o DBLink for criado, você poderá exibir os bancos de dados criados na instância de BD 1 no servidor vinculado.
- Execute os seguintes comandos para verificar se os dados foram inseridos com êxito, conforme mostrado em Figura 1:
begin tran
set xact_abort on
INSERT INTO [LYNTEST].[dbtest1].[dbo].[user1]
([id],[lname],[rname])
VALUES('19','w','x')
GO
commit tran