

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Acesse tabelas locais do Microsoft SQL Server a partir do Microsoft SQL Server na Amazon EC2 usando servidores vinculados
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers"></a>

*Tirumala Dasari e Eduardo Valentim, Amazon Web Services*

## Resumo
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-summary"></a>

Esse padrão descreve como acessar tabelas de banco de dados locais do Microsoft SQL Server executadas no Microsoft Windows, a partir de bancos de dados Microsoft SQL Server executados ou hospedados em instâncias Windows ou Linux do Amazon Elastic Compute Cloud EC2 (Amazon) usando servidores vinculados.

## Pré-requisitos e limitações
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-prereqs"></a>

**Pré-requisitos **
+ Uma conta AWS ativa
+ Amazon EC2 com Microsoft SQL Server em execução no Amazon Linux AMI (Amazon Machine Image)
+ AWS Direct Connect entre o servidor local Microsoft SQL Server (Windows) e a instância Windows ou Linux EC2 

**Versões do produto**
+ SQL Server 2016 ou superior

## Arquitetura
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-architecture"></a>

**Pilha de tecnologia de origem**
+ Banco de dados Microsoft SQL Server on-premises em execução no Windows
+ Amazon EC2 com Microsoft SQL Server em execução na AMI do Windows ou AMI do Linux

**Pilha de tecnologias de destino**
+ Amazon EC2 com Microsoft SQL Server em execução no Amazon Linux AMI
+ Amazon EC2 com Microsoft SQL Server em execução na AMI do Windows

**Arquitetura de banco de dados de origem e destino**

![\[Nuvem AWS architecture with VPC, availability zones, and hybrid environment connecting to on-premises database.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/8e4a3222-0850-4980-8028-c710dcdb9186/images/fa157992-0ed9-46e1-8059-0cbbb74a98ec.png)


## Ferramentas
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-tools"></a>
+ [O Microsoft SQL Server Management Studio (SSMS)](https://learn.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16) é um ambiente integrado para o gerenciamento de uma infraestrutura do SQL Server. Ele fornece uma interface de usuário e um grupo de ferramentas com editores de scripts avançados que interagem com o SQL Server.

## Épicos
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-epics"></a>

### Alterar o modo de autenticação para Windows para SQL Server no Windows SQL Server
<a name="change-authentication-mode-to-windows-for-sql-server-in-windows-sql-server"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Conecte-se ao Windows SQL Server por meio do SSMS. |  | DBA | 
| Altere o modo de autenticação para o Windows no SQL Server no menu de contexto (clique com o botão direito) da instância do Windows SQL Server. |  | DBA | 

### Reinicie o serviço Windows MSSQL
<a name="restart-the-windows-mssql-service"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Reinicie o serviço SQL. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers.html) | DBA | 

### Crie um novo login e escolha bancos de dados para acessar no Windows SQL Server
<a name="create-new-login-and-choose-databases-to-access-in-windows-sql-server"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Na guia Segurança, abra o menu de contexto (clique com o botão direito) de Login e selecione um novo login. |  | DBA | 
| Na guia Geral, escolha Autenticação do SQL Server, digite um nome de usuário, digite a senha, confirme a senha e desmarque a opção de alterar a senha no próximo login. |  | DBA | 
| Na guia Perfis do servidor, escolha Público. |  | DBA | 
| Na guia Mapeamento do usuário, escolha o banco de dados e o esquema que você deseja acessar e, em seguida, destaque o banco de dados para selecionar as funções do banco de dados. | Selecione public e db\$1datareader para acessar os dados das tabelas do banco de dados. | DBA | 
| Escolha OK para criar um usuário. |  | DBA | 

### Adicionar IP do Windows SQL Server ao arquivo host Linux SQL Server
<a name="add-windows-sql-server-ip-to-linux-sql-server-host-file"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Conecte-se à caixa Linux SQL Server por meio da janela do terminal. |  | DBA | 
| Abra o arquivo /etc/hosts e adicione o endereço IP da máquina Windows com o SQL Server. |  | DBA | 
| Salve o arquivo de hosts. |  | DBA | 

### Crie um servidor vinculado no Linux SQL Server
<a name="create-linked-server-on-linux-sql-server"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Crie um servidor vinculado usando os procedimentos armazenados master.sys.sp\$1addlinkedserver e master.dbo.sp\$1addlinkedsrvlogin. | Para obter mais informações sobre o uso desses procedimentos armazenados, consulte a seção *Informações adicionais*. | DBA, Desenvolvedor | 

### Verifique o servidor vinculado e os bancos de dados criados no SSMS
<a name="verify-the-created-linked-server-and-databases-in-ssms"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| No Linux SQL Server no SSMS, vá para Servidores vinculados e atualize. |  | DBA | 
| Expanda os servidores e catálogos vinculados criados no painel esquerdo. | Você verá os bancos de dados do SQL Server selecionados com tabelas e exibições. | DBA | 

### Verifique se você pode acessar as tabelas do banco de dados do Windows SQL Server
<a name="verify-that-you-can-access-windows-sql-server-database-tables"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Na janela de consulta SSMS, execute a consulta: “select top 3 \$1 from [sqllin] .dms\$1sample\$1win.dbo.mlb\$1data”. | Observe que a cláusula FROM usa uma sintaxe de quatro partes: computer.database.schema.table (por exemplo, SELECT name "databases” FROM [sqllin] .master.sys.databases). SQL2 Em nosso exemplo, criamos um alias para SQL2 no arquivo hosts, para que você não precise inserir o nome real do NetBIOS entre colchetes. Se você usar os nomes NetBIOS reais, observe que a AWS usa como padrão nomes NetBIOS, como Win-xxxx, e o SQL Server exige colchetes para nomes com traços. | DBA, Desenvolvedor | 

## Recursos relacionados
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-resources"></a>
+ [Notas de lançamento do SQL Server no Linux](https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-release-notes?view=sql-server-2017) 

 

## Mais informações
<a name="access-on-premises-microsoft-sql-server-tables-from-microsoft-sql-server-on-amazon-ec2-using-linked-servers-additional"></a>

**Usando procedimentos armazenados para criar servidores vinculados**

O SSMS não oferece suporte à criação de servidores vinculados para Linux SQL Server, então você precisa usar esses procedimentos armazenados para criá-los:

```
EXEC master.sys.sp_addlinkedserver @server= N'SQLLIN' , @srvproduct= N'SQL Server'    
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'SQLLIN',@useself=N'False',@locallogin=NULL,@rmtuser=N'username',@rmtpassword='Test123$'
```

Nota 1: insira as credenciais de login que você criou anteriormente no Windows SQL Server no procedimento armazenado. `master.dbo.sp_addlinkedsrvlogin`

Nota 2: `@server` o nome `SQLLIN` e o nome da entrada do arquivo host `172.12.12.4 SQLLIN` devem ser os mesmos.

 Você pode usar esse processo para criar servidores vinculados nos seguintes cenários:
+ Linux SQL Server para Windows SQL Server por meio de um servidor vinculado (conforme especificado nesse padrão)
+ Windows SQL Server para Linux SQL Server por meio de um servidor vinculado
+ Linux SQL Server para outro Linux SQL Server por meio de um servidor vinculado