Configurar a Base de Dados SQL do Azure e o Azure SQL Managed Instance

Concluído

Você verificou que sua implantação foi bem-sucedida e sabe quais recursos estão disponíveis. Pode agora querer configurar a instância gerida do SQL, a base de dados SQL ou a base de dados numa instância gerida. Esses bancos de dados são chamados de bancos de dados gerenciados.

Configurar a instância gerida do Azure SQL Managed Instance

O Azure SQL Managed Instance é essencialmente uma instância gerida do SQL Server. Muitas configurações disponíveis no SQL Server aplicam-se aqui. Por exemplo, você pode configurar usando sp_configure e determinados sinalizadores de rastreamento global. Você também tem opções disponíveis em torno de tempdb, model, e master. Você tem controle sobre sua conectividade e configuração de rede.

Configuração da base de dados

Em relação às bases de dados geridas no Azure SQL Managed Instance e na Base de Dados SQL do Azure, há opções disponíveis com o comando ALTER DATABASE. Há as opções SET, e pode selecionar o valor dbcompat desejado Esse valor pode ajudar nas migrações. Adicionalmente, pode utilizar o comando ALTER DATABASE para alterar a edição ou o escalão de serviço.

Na Base de Dados SQL do Azure, não tem acesso ao ficheiro de configuração abaixo. No Azure SQL Managed Instance, pode realizar a manutenção do ficheiro. À semelhança do SQL Managed Instance, são-lhe disponibilizadas opções de conectividade de rede, configuração de rede e gestão de espaço.

No Banco de Dados SQL do Azure especificamente, a deteção de página obsoleta é habilitada e o agrupamento de SQL_Latin1_General_CP1_CI_AS servidor padrão é sempre usado. Adicionalmente, as seguintes opções estão definidas por predefinição como Ativadas:

  • SNAPSHOT_ISOLATION_STATE
  • READ_COMMITTED_SNAPSHOT
  • FULL RECOVERY
  • CHECKSUM
  • QUERY_STORE
  • TDE
  • ACCELERATED_DATABASE_RECOVERY

Gestão de tarefas

O SQL Server Agent fornece um sistema de configuração e agendamento aos utilizadores do SQL Server. Você pode obter funcionalidade equivalente no SQL do Azure por meio das seguintes opções:

SQL Agent no SQL Managed Instance

O SQL Agent é um serviço totalmente suportado com o Azure SQL Managed Instance. Os trabalhos do SQL Agent só são suportados para os passos do trabalho do SQL Server Integration Services e do T-SQL. As etapas do shell de comando não são suportadas. Embora os alertas não sejam suportados, as notificações por e-mail são suportadas através do correio da base de dados.

Tarefas Elásticas da Base de Dados SQL

O Banco de Dados SQL do Azure não oferece suporte ao SQL Server Agent. No entanto, pode utilizar o serviço do Agente de Tarefas Elásticas no Azure para criar e agendar trabalhos. Os trabalhos são scripts T-SQL que pode executar em muitas bases de dados, incluindo a execução paralela.

Azure Automation

Você pode usar o serviço de Automação do Azure para orquestrar processos por meio de um conceito chamado runbook. Um runbook consiste num código (como PowerShell ou Python) e pode ser direcionado para qualquer recurso do Azure.

Opções de configuração restritas

O Azure SQL Managed Instance e os serviços da Base de Dados SQL do Azure restringem as seguintes configurações. Estas restrições podem afetar a forma como executa algumas tarefas.

  • Não pode parar nem reiniciar os servidores.
  • Não pode utilizar:
    • Inicialização instantânea de ficheiros.
    • Páginas bloqueadas na memória.
    • FILESTREAM e grupos de disponibilidade
    • Agrupamento de servidor Na Instância Gerenciada SQL, você pode selecionar o agrupamento do servidor durante a implantação, mas não alterá-lo.
    • Parâmetros de arranque.
    • Relatórios de erros e comentários dos clientes.
    • ALTER SERVER CONFIGURATION.
    • Configuração ERRORLOG.
  • A segurança do modo misto é forçada.
  • A auditoria de início de sessão é feita através da auditoria de SQL.
  • A conta proxy do servidor não é aplicável.

O Azure SQL Managed Instance e a Base de Dados SQL são ofertas PaaS (plataforma como serviço). Restringir essas opções não deve inibir sua capacidade de usar totalmente um serviço gerenciado do SQL Server.

Gestão de armazenamento

Para a Instância Gerenciada SQL do Azure, há um tamanho máximo de armazenamento permitido para a instância com base no SLO escolhido. Você escolhe um armazenamento máximo para a instância até esse tamanho máximo possível. Se você atingir o armazenamento máximo, poderá obter a Mensagem 1105 para um banco de dados gerenciado ou a Mensagem 1133 para a instância.

Assim como o SQL Server, o tamanho de qualquer novo banco de dados é baseado no tamanho do model banco de dados. O model banco de dados é um arquivo de dados de 100 MB e um arquivo de log de 8 MB. Também como o SQL Server, o model tamanho é configurável. Pode alterar o tamanho e o número de ficheiros, mas não tem controlo sobre a sua localização física. A Microsoft assume o compromisso relativamente ao desempenho de E/S com base na sua escolha de implementação. Adicionalmente, dado que o armazenamento remoto é utilizado no escalão de serviço Fins Gerais, o ficheiro de dados e o tamanho do ficheiro de registo podem afetar o desempenho.

Para o Banco de Dados SQL do Azure, há um tamanho máximo possível de arquivos de banco de dados com base no SLO escolhido. Você escolhe um tamanho máximo de dados até esse tamanho máximo possível. Maxsize para arquivos de banco de dados, conforme definido pela sys.database_files.max_size coluna, pode aumentar para o tamanho máximo de dados.

Para entender essa ideia de tamanho máximo de dados versus tamanho máximo, considere um exemplo em que um banco de dados de uso geral de 1 TB (tamanho máximo de dados) é implantado. Quando você faz essa implantação, seu banco de dados requer apenas ~500 GB, não 1 TB. À medida que seu banco de dados cresce e se aproxima do tamanho máximo de dados, o Maxsize para arquivos de banco de dados também cresce até o nível de 1 TB.

O log de transações é adicional ao tamanho dos dados e está incluído no que você paga pelo armazenamento. Ele é truncado regularmente devido a backups automáticos e a Recuperação Acelerada de Banco de Dados está ativada por padrão. O tamanho máximo do registo é sempre 30% do Tamanho máximo dos dados. Por exemplo, se o Tamanho máximo dos dados for 1 TB, o tamanho máximo do registo de transações será de 0,3 TB, ao passo que o total do Tamanho máximo dos dados e o tamanho do registo será de 1,3 TB.

A camada de Hiperescala do Banco de Dados SQL do Azure é diferente das outras camadas de serviço. Ele cria um banco de dados que é inicialmente de 40 GB e cresce automaticamente em tamanho até o limite de 100 TB. O registo de transações tem uma restrição de tamanho fixo de 1 TB.

Arquitetura e política de conectividade

Parte do processo de configuração do servidor lógico da Base de Dados SQL do Azure ou do processo de configuração do Azure SQL Managed Instance envolve a determinação da rota de ligação às bases de dados.

No caso do Azure SQL Managed Instance, pode escolher o tipo de ligação ou a política durante a implementação. Na Base de Dados SQL do Azure, pode escolher o tipo de ligação após a implementação.

Pode manter as opções predefinidas de Proxy para ligações de fora e Redirecionamento para ligações no Azure ou configurar outra coisa. O diagrama a seguir mostra como os gateways são usados para a diretiva de conexão de proxy ou redirecionamento.

Diagrama das políticas de ligação no SQL do Azure.

Ao nível mais alto, em modo de proxy, todas as ligações são feitas através de proxy mediante o gateway. No modo de redirecionamento, depois que a conexão é estabelecida e está usando o gateway, a conexão pode se conectar diretamente ao banco de dados ou à instância gerenciada. O gateway está redirect-find-db na figura anterior.

A ligação direta (redirecionamento) permite uma latência reduzida e um débito melhorado. Também requer a abertura de mais portas para permitir a comunicação de entrada e saída na faixa de 11000 a 11999.

No próximo exercício, você verá alguns comandos para configurar o SQL do Azure com a CLI do Azure. Em seguida, você mergulhe na avaliação das políticas de conexão de proxy e redirecionamento.

Verificação de conhecimento

1.

Se o Tamanho máximo dos dados na Base de Dados SQL do Azure for 10 GB, qual é o tamanho máximo do registo de transações?

2.

Qual é a política de ligação predefinida para a Base de Dados SQL do Azure e o Azure SQL Managed Instance?