Quais são os requisitos e a planificação necessários para instalar o SQL Server 2022 no Windows Server? Aqui dizemos-lhe como fazer este deploy sem problemas, para que possa explorar todo o seu potencial.
A planificação incorreta de qualquer sistema impedirá o aproveitamento de todo o seu potencial e pode até gerar uma infraestrutura instável e propensa a erros.
Ao longo deste artigo tentaremos dar algumas orientações importantes para planear e implementar o SQL Server 2022 na nossa infraestrutura. Embora se destinem a instalar a última versão do SQL Server no Windows Server, são também válidas para as versões anteriores nos servidores da gigante de Redmond.
Requisitos do SQL Server 2022:
Antes de começar a planear a implementação do SQL Server, vamos rever os requisitos técnicos de hardware e software para esta nova versão.
Requisitos de hardware do SQL Server 2022:
Para começar, é importante dizer que precisamos de ter no mínimo 6 GB de espaço livre no disco a utilizar, ou 8 GB se quisermos instalar todas as opções. Atenção, que estamos a falar de valores mínimos, e encher demasiado o sistema de ficheiros pode terminar na sua sobrecarga e, consequentemente, um pior desempenho de IOPS.
Além disso, as necessidades de espaço variam muito dependendo das funcionalidades que vão ser implementadas no nosso SGBD. Aqui está uma tabela que permite avaliar as necessidades e pensar no espaço necessário para prestar um bom serviço:
Característica | Espaço necessário |
Motor de base de dados e ficheiros de dados, replicação, pesquisa de texto completo e DQS | 1480 MB |
Motor de base de dados com R Services (se instalados juntos) | 2744 MB |
Microsoft R Server (caso seja instalado separadamente) | 280 MB |
Motor de base de dados com o serviço de consulta PolyBase para dados externos | 4194 MB |
Ficheiros de dados e Analysis Services | 698 MB |
Reporting Services (independente) | 967 MB |
Reporting Services (Com SharePoint) | 1203 MB |
Suplemento Reporting Services para produtos de SharePoint | 325 MB |
Cliente de qualidade de dados | 121 MB |
Conectividade com as ferramentas do cliente | 328 MB |
Integration Services. | 306 MB |
Componentes do cliente, exceto componentes dos Manuais Online do SQL Server e ferramentas do Integration Services. | 445 MB |
Master Data Services. | 280 MB |
Componentes dos Manuais Online do SQL Server para exibição e gestão do conteúdo da ajuda. | 27 MB |
Todas as características listadas. | 8030 MB |
Agora que já conhecemos as necessidades de espaço, podemos falar sobre os tipos de armazenamento suportados pela nossa base de dados.
Para começar, devemos dizer que o SQL Server 2022 é compatível com os seguintes tipos de disco:
- Disco rígido local.
- Armazenamento partilhado.
- S2D (Espaços de Armazenamento Direto).
É possível especificar que, para discos rígidos locais, são admitidos tamanhos de setor entre 512bytes e 4KB (com alguns problemas de funcionamento nos de 4KB).
De notar também que, ao criar clusters de failover, apenas o disco de ficheiros tempdb pode ser provisionado no armazenamento local.
Quanto à partilha de ficheiros com SMB, não é possível em instalações independentes de Analysis Services e também não permite a formação de lustres.
Também deve ser dito que o suporte para SMB pode existir em sistemas de terceiros ou da Microsoft, desde que seja num fileserver Windows Server 2008 ou posterior.
As unidades de DVD e ISO (mais comum hoje em dia) são suportadas como unidades de origem.
A memória varia de acordo com a edição a ser implementada, mas aqui é preciso lembrar novamente que estamos a falar de valores mínimos, e com esses mínimos dificilmente conseguiremos trabalhar, sendo até insuficientes para testes:
- Express Edition: 512MB.
- Restantes edições: 1GB.
Recomendado pela Microsoft:
- Express Edition: 1GB.
- Restantes edições: 4GB.
Mais uma vez, estas características mínimas são insuficientes, na nossa opinião.
No que diz respeito ao processador, é imperativo usar processadores do tipo x64, incluindo:
- AMD Opteron.
- AMD Athlon 64.
- Intel Xeon compatível com Intel EM64T.
- Intel Pentium IV compatível com EM64T.
Graficamente, é necessária uma resolução mínima de 800×600.
É necessária ligação à Internet para descarregar pacotes adicionais e atualizações de sistema e aplicações.
Requisitos de software do SQL Server 2022:
Antes de avançar para os requisitos de software, devemos dizer que estamos a falar apenas de sistemas Microsoft, sem contemplar a possibilidade de instalação em sistemas operativos GNU/Linux.
Outro ponto importante é que a instalação do SQL Server 2022 é suportada em todas as versões do Windows Server de 2016 adiante. Isto significa que é suportado em:
- Windows Server 2022 Datacenter
- Windows Server 2022 Datacenter: Azure Edition
- Windows Server 2022 Standard
- Windows Server 2019 Datacenter
- Windows Server 2019 Standard
- Windows Server 2019 Essentials
- Windows Server 2016 Datacenter
- Windows Server 2016 Standard
- Windows Server 2016 Essentials
Dentro da gama de servidores, também é compatível com as seguintes versões do Windows Server Core:
- Windows Server 2022 Core
- Windows Server 2019 Core
- Windows Server 2016 Core
NOTA: Por motivos de segurança, é recomendável que o SQL Server não seja instalado num controlador de domínio. Embora a instalação seja possível, dará problemas mais tarde.
Além disso, se quiser instalar uma versão deste SGBD numa versão do cliente Windows, como o Windows 10 ou o Windows 11, que geralmente é usado para testes, deve ter em conta que estes não permitem executar a versão Enterprise, pois é um versão 100% para servidor. No entanto, podem executar as versões Developer e Standard.
Os sistemas que podem ser usados são:
- Windows 11 IoT Enterprise
- Windows 11 Enterprise
- Windows 11 Professional
- Windows 11 Home
- Windows 10 IoT Enterprise
- Windows 10 Enterprise
- Windows 10 Professional
- Windows 10 Home
Em relação a outras necessidades de software, é preciso ter o .NET Framework para uma instalação correta. Se não tiver este software, a sua instalação será solicitada.
NOTA: Se quiser saber mais sobre a instalação do .NET Framework, é recomendável aceder ao seguinte guia da Microsoft.
Por outro lado, o programa de instalação também instalará outros pacotes relacionados como:
- Cliente Nativo do SQL Server.
- Ficheiros de suporte da instalação do SQL Server.
Também são necessárias algumas funcionalidades de rede que geralmente existem em todos os servidores e que devem ser transparentes para os administradores. Se quiser obter mais informações a este respeito, pode aceder a esta biblioteca da Microsoft.
A ordenação no SQL Server 2022:
A ordenação no SQL Server fornece uma série de propriedades destinadas a distinguir entre caracteres como maiúsculas, minúsculas, acentos, regras de ordenação de dados, etc., ditando as páginas de código e os caracteres correspondentes que podem ser representados para cada tipo de dados. A interação a aplicar dependerá da região em que se vai utilizar, ou seja, da língua com que trabalha. A ordenação é usada por alguns tipos de caracteres, como “char” ou “varchar”.
Antes de instalar novas instâncias numa base de dados, fazer ligação a bases de dados de clientes ou migrações, etc., devemos definir a configuração regional que vamos estabelecer.
No nosso caso, iremos trabalhar com a ordenação “SQL_Latin1_General_CI_AS”.
Se a ordenação correta não for selecionada, podem ocorrer comportamentos indesejados na base de dados, portanto, é um problema a ser tomado em consideração. Felizmente, caso tenha uma configuração errada, existe solução, através de um processo que não é muito complexo.
Termos de licença do SQL Server 2022:
Um ponto que nunca deve ser esquecido ao instalar o software são os termos da licença. Esta informação será exibida durante a instalação, mas podemos consultá-la a qualquer momento no site da Microsoft. A seguir, deixamos um link onde pode consultar os termos de licença de todos os produtos da Microsoft, incluindo o SQL Server 2022.
Para ver os dados da licença que nos interessa, devemos selecionar os seguintes campos:
- Como é que o software foi adquirido?: selecionar a opção “Numa loja como software embalado para utilizadores finais ou diretamente a partir da Microsoft?”.
- Nome do Produto: selecionar “SQL Server”.
- Versão: selecionar o produto a instalar entre as seguintes opções:
- SQL Server 2022 Developer, Express, Evaluation.
- SQL Server 2022 Enterprise, Standard, Web.
Planificação da instalação do SQL Server 2022:
Planificar a implementação de sistemas e aplicações é um dos pontos mais sensíveis e ao qual um administrador de sistemas deve dedicar mais esforços, pois uma instalação bem planeada proporcionará um melhor serviço, sem dúvida um melhor desempenho, e muito provavelmente terá menos situações de downtime.
No entanto, a maioria das instalações é realizada à pressa, sem investir um mínimo de tempo em pensamento, organização de ideias, contabilização de necessidades e recursos, etc. Sabemos que isto não acontece de forma voluntária, mas sim por falta de tempo, pela necessidade de cumprir uma agenda e por tantas outras questões que fazem com que o resultado final seja esse.
Como sempre, vamos tentar mostrar uma série de processos, dicas e conselhos para tentar ajudar o máximo possível.
Planificação dos requisitos do SQL Server 2022:
Para realizar uma boa planificação, a primeira coisa que deve ser analisada são os requisitos do produto, para saber como dimensionar os sistemas que vão servir de base.
Neste caso, já concluímos essa parte, portanto não vamos perder mais tempo com ela. Relembramos apenas que, ao iniciar uma nova instalação, o programa fará uma verificação prévia dos requisitos.
A memória RAM:
Apesar de já termos visto anteriormente os requisitos do sistema, vamos apenas comentar que a RAM é um recurso que deve ser gerido com muito cuidado no SQL Server.
O SQL Server é um serviço com muito “apetite”, que consome todos os recursos disponíveis, e isso pode ser um problema quando falamos de memória RAM, já que, mesmo que não seja utilizada para nenhum outro fim, continuam a ser necessários certos recursos para executar os serviços gerais do sistema operativo onde está o SGBD está hospedado.
Para evitar que o SQL Server se aproprie de toda a memória principal disponível, devemos aceder ao SSMS (SQL Server Management Studio) e modificar a configuração “Memória máxima do servidor (MB)” na secção de “Memória” em “Propriedades” da base de dados.
Planificação dos discos:
A escolha dos discos, a sua configuração e o uso que se faz deles são pontos delicados no mundo das bases de dados, principalmente porque são uma das aplicações com maior carga transacional em disco.
Por este motivo, vamos analisar alguns detalhes que devemos ter em conta ao instalar o SQL Server 2022.
- A primeira coisa a fazer, sempre que for possível, é uma análise comparativa do desempenho dos diferentes discos rígidos disponíveis, para saber qual deles nos dará o melhor desempenho. Para isso, pode usar ferramentas de benchmarking como AS SSD Benchmark ou DiskSpd.
- Ao particionar o disco, também deve considerar qual é o melhor tamanho de cluster para obter o melhor desempenho. Existem certas recomendações da Microsoft que indicam 64 KB como o tamanho recomendado.
- Em seguida, devem ser revistos os requisitos, bem como as expectativas de crescimento das nossas bases de dados, para conceder espaço suficiente para que cresçam sem problemas. Neste ponto, devem ser tomados cuidados especiais com os ficheiros de log, temporários e backups.
- Obviamente, como já foi dito noutras ocasiões e noutros artigos, a base de dados nunca deve ser instalada no mesmo disco do sistema operativo, caso contrário ocorrerá uma limitação no nível dos IOPs.
- Devem ser usados discos separados para logs e para dados da base de dados, assim como discos adicionais para ficheiros temporários. Assim é possível “aliviar” a carga nos discos.
Planificação da segurança:
Um dos pontos críticos de qualquer instalação de infraestruturas e, claro, de qualquer instalação de Sistemas de Gestão de Bases de Dados (SGBD), é a segurança dos sistemas.
Neste ponto, devemos levar em consideração diferentes aspetos, entre os quais destacamos:
- A segurança física dos sistemas.
- A configuração das firewalls.
- A configuração dos sistemas de ficheiros.
- A configuração dos serviços.
A seguir, analisaremos cada um destes pontos.
A segurança física dos sistemas:
Pode parecer óbvio, mas todos os nossos servidores devem estar localizados numa sala controlada, que deve obedecer ao modelo de infraestruturas TIER:
- Deve existir um acesso controlado à sala, com pelo menos uma fechadura, de qualquer tipo (chave, teclado, biométrica…).
- A sala deve ter determinadas condições, como ar condicionado, uma fonte de alimentação ininterrupta (UPS), sistemas de extinção de incêndios, etc.
- O sistema deve contar com cópias de segurança, que devem ser mantidas noutras delegações ou por um fornecedor externo, como garantia da continuidade do negócio em caso de desastre.
A configuração de firewalls:
Como todos sabemos, ter uma firewall é obrigatório em todos os sistemas de uma organização, e como as bases de dados contêm informações de grande valor, merecem cuidados especiais.
- Para começar, deve existir pelo menos uma firewall entre a internet e a nossa infraestrutura.
- A criação de zonas de segurança na empresa pode ajudar a proteger a infraestrutura.
- Se possível, pode-se acrescentar o uso de VLANs e limitar os acessos à rede.
- Além disso, devemos ter a firewall do Windows ativa com uma política de acessos o mais restritiva possível. Apenas as portas necessárias para o serviço SQL devem estar abertas, e qualquer outro acesso deve ser negado por defeito.
A configuração do sistema de ficheiros:
O sistema de ficheiros é um ponto muito importante, e devemos sempre ter em mente que o Windows Server possui o sistema de ficheiros NTFS, que nos dá uma segurança excelente, desde que façamos um uso adequado.
Além disso, nas últimas versões (desde o Windows Server 2016) contamos também com o ReFS, uma versão melhorada que pode aumentar a segurança. Atenção, não é necessário escalar para ReFS, já que o NTFS fornece boa segurança.
Seja qual for a opção escolhida, o NTFS e o ReFS fornecem-nos sistemas de ficheiros estáveis e opções de recuperação de erros, além de opções de segurança, como listas de controlo de acesso (ACLs) a diretórios e ficheiros.
O uso destes sistemas permite-nos usar o EFS (Encrypting File System) para criptografia de ficheiros.
A configuração dos serviços:
Uma configuração correta dos serviços vai minimizar o risco de vulnerabilidades de acesso e de ataques baseados em escalonamento de privilégios.
- Desta forma, o isolamento dos serviços é a melhor opção para garantir que tudo funcione corretamente e de forma segura.
- Devemos executar os serviços do SQL Server de forma independente, usando contas diferentes para cada um dos serviços. Estas contas devem ter privilégios limitados, garantindo que não possam operar algo para o qual não foram criadas.
- Estas contas têm de ser sempre locais.
Planificação para deploy de clusteres de failover:
O último ponto a considerar é se vamos implementar clusters de failover para saber se precisamos de responder a outras necessidades, bem como as etapas necessárias para o deploy desses clusters.
Para instalar um cluster de failover, devemos usar uma conta de domínio que também esteja registada como administrador local das máquinas nas quais o software se está a instalar, para iniciar sessão como um serviço. Este requisito aplica-se a todos os nós no cluster de failover.
Outros pontos, como pacotes de instalação, portas de rede, etc. também devem ser levados em consideração. mas serão abordados noutro artigo.
Com isto, encerramos esta breve revisão dos requisitos e noções para planificar a implementação do SQL Server 2022.
Conclusão:
Ao longo deste artigo discutimos os requisitos e alguns pontos que devemos ter em consideração no momento de implementar um novo serviço de Sistema de Gestão de Banco de Dados baseado no SQL Server 2022 em Windows Server.
Não abordámos todos os pontos, pois alguns deles serão desenvolvidos mais a fundo noutros artigos e tutoriais como, por exemplo, sobre os clusters do SQL Server 2022.
Esperamos que o conteúdo deste artigo tenha sido do seu interesse e seja útil na sua jornada para fazer o deploy de um dos SGBD mais utilizados no mundo das TI.
Obrigado por acompanhar-nos!