• Nenhum resultado encontrado

ApostilaAdministraçãoeManutençãodo SQLServer2005

N/A
N/A
Protected

Academic year: 2021

Share "ApostilaAdministraçãoeManutençãodo SQLServer2005"

Copied!
175
0
0

Texto

(1)

1

APOSTILA

ADMINISTRAÇÃO

E MANUTENÇÃO

DO SQL SERVER

2005

(2)

2

INDICE

Instalando o SQL Server 2005...1

SQL Server 2005 Surface Area Configuration Tool……….…….21

Configurando Conexões Remotas Microsoft SQL Server 2005...25

Modelo de Recuperação para Banco de Dados SQL Server 2005... 44

Criação e Restauração de Backup no SQL Server 2005... 50

Database snapshots... 88

Desempenho do Servidor... 95

Enviando e-mails com o SQL Server 2005... 107

Introdução ao SQL Server Replication... 119

Log Shipping... 140

(3)

3

Instalando o SQL Server 2005

Edições do SQL Server 2005

Conhecer as edições do SQL Server 2005 disponíveis é essencial para que o

Administrador decida qual delas utilizar, levando em consideração o ambiente onde será instalado e a que tipo de tarefa a qual se destina. Analisar quais as suas necessidades atuais e como essas necessidades irão escalonar são essenciais para decidir quais componentes instalar.

Veja abaixo as edições disponíveis do SQL Server 2005 e uma descrição resumida sobre suas funcionalidades e aplicabilidades:

Enterprise Edition: Edição mais completa do SQL Server, com todas as funcionalidades e ferramentas disponíveis. Esta edição é própria para servidores de alta-disponibilidade e de missão crítica, pois possui recursos avançados de Espelhamento, Backup, Restauração Online e Snapshots. A arquitetura do programa é otimizada para ambientes de alta

performance e eficiência.

Developer Edition: Esta edição possui todos os recursos da Enterprise Edition, mas sua licença de uso é restrita a ambientes de desenvolvimento e teste, não para produção. Esta edição é recomendada para empresas e fábricas de softwares, para fins de teste e

desenvolvimento de bancos de dados. O upgrade para a Enterprise Edition é possível.  Standard Edition: Edição padrão, onde são encontrados os recursos mais comuns para

bancos de dados de pequeno e médio porte. Utilize esta versão em sistemas que funcionarão via intranets ou sistemas web. Essa edição não oferece suporte a alguns serviços de alta-disponibilidade e performance existentes na Enterprise Edition.  Express Edition: Edição gratuita do SQL Server, própria para aplicações locais e

desenvolvedores de pequenas soluções. Todos os recursos básicos para criação e

manutenção de bancos de dados estão disponíveis nesta edição. A Express Edition possui algumas limitações de conexões e de recursos.

Mobile Edition: Edição para dispositivos móveis, onde se é possível a replicação de bancos de dados SQL Server 2000 e SQL Server 2005, garantindo o sincronismo e a consistência dos dados.

Confira na Tabela 1 as versões disponíveis para cada edição do SQL Server 2005:

Tabela 1. Versões disponíveis para cada classe de processador.

Vale lembrar que a Microsoft disponibiliza o SQL Server 2005 Enterprise Edition para download na versão de avaliação, com todas as funcionalidades disponíveis na versão normal. Esta versão de avaliação funciona por 120 dias.

(4)

4 Requisitos de Hardware

È importante verificar se o hardware disponível atende o mínimo solicitado pelo SQL Server 2005, para que todos os componentes sejam instalados com sucesso. Se estes requisitos mínimos não forem atendidos, o servidor apresentará problemas de desempenho e de armazenamento, além do não funcionamento de alguns

componentes do SQL Server 2005. Confira abaixo os requisitos de hardware necessários para uma instalação correta:

Processador: O mínimo solicitado para a instalação é um Pentium III ou superior, com o clock de 600 MHz. O recomendando pela Microsoft é que o processador ultrapasse 1 GHz. Vale lembrar que este recurso deve ser analisado cuidadosamente: pois além do SQL Server, temos outras aplicações rodando (incluindo o Windows Server) que consomem o processador.

Memória RAM: Varia de acordo com a edição desejada. Para as edições Enterprise e Developer, o mínimo de memória solicitado é de 256 MB e o recomendado é 512 MB. Já para a edição Standart, o mínimo é 64 MB. Por fim, a edição Express solicita no mínimo 32 MB de memória no Windows XP e 64 MB de memória no Windows 2000 e Windows Server 2003. Da mesma forma que o processador, estes requisitos de memória são apenas para o SQL Server: leve sempre em conta as aplicações que serão executadas no computador.  Espaço em Disco: Os componentes do Banco de Dados do SQL Server alocam de 50

MB a 300 MB, dependendo das opções escolhidas na instalação. A instalação padrão consome em torno de 250 MB do disco. Caso você instale os serviços de analises (Analysis Services), serão necessários mais 50 MB para a instalação mínima e 130 MB para a instalação padrão. O serviço de relatórios (Reporting Services) aloca 50 MB para o servidor e 30 MB para a ferramenta de design.

Outros requisitos são: drive de CD/DVD, placa de rede e monitor com suporte a resolução 1024x768 (as ferramentas do SQL Server 2005 são otimizadas para esta resolução ou superior).

Requisitos de Software

Depois de verificado se o hardware é compatível com o SQL Server 2005, é essencial verificar se o Sistema Operacional atende as necessidades da edição e versão escolhidas. Na Tabela 2 estão disponíveis quais edições do SQL Server cada versão do Windows suporta:

(5)

5 Tabela 2. Requisitos de Software das edições do SQL Server 2005.

Uma observação importante: no caso dos Windows Server 2000 e 2003, versões do SQL Server 64-bits só serão instalados em versões do Windows 64-bits. Não é possível a instalação do SQL Server 32-bits em um Windows Server 64-bits e vice-versa.

Conclusões

Antes de instalar o SQL Server, o Administrador deve efetuar os três passos de preparação para efetuar a instalação de forma simples e tranqüila. Os passos da pré-instalação são: Escolha da Edição, baseado nas necessidades do ambiente; Verificação do Hardware, para que o mesmo atenda as necessidades do SQL

Server; e Verificação do Software, garantindo que o Sistema Operacional oferecerá o suporte solicitado ao SGBD.

Você pode encontrar mais informações sobre as edições e requisitos do SQL Server 2005 no endereço: http://www.microsoft.com/brasil/sql/. No próximo artigo, abordaremos as considerações e passos necessários para efetuar uma instalação do SQL Server 2005 em um servidor que possui instalada uma versão anterior do SQL Server. Até lá.

Instâncias Padrão e Instância Nomeada

Instância é uma cópia do SQL Server instalada em um servidor. Toda vez que você instala o SQL Server em um servidor, você estará instalando uma instância dele. Quando você está instalando o SQL Server, o assistente permite você definir a instalação corrente como a Instância Padrão ou como uma Instância Nomeada. Uma Instância Nomeada significa apenas que você definirá um nome para esta cópia que está sendo instalada. Isso faz com que o acesso a esta instalação seja feito através do nome do servidor e do nome da instância (Ex:

SERVIDOR\NOMEDAINSTANCIA). Uma Instância Padrão é uma copia sem nome, e que o seu acesso é feito apenas informando o nome do servidor onde ele está instalado. Portanto, você só poderá ter uma Instância Padrão por máquina, mas poderá ter várias Instâncias Nomeadas.

No assistente de instalação, o SQL Server detecta as instâncias já existentes no servidor e as lista no botão “Installed Instances”. Caso você queira instalar uma instância padrão, marque a opção “Default Instance”. Caso queria criar uma Instância Nomeada, marque a opção “Named Instance” e escreva o nome da nova instância. Confira na Figura 1 o momento da instalação onde você configura as instâncias.

(6)

6 Figura 1. Instalando uma instância.

Um detalhe a ser observado: ao instalar o SQL Server 2005 Express Edition, é criado automaticamente a Instância Nomeada SQLEXPRESS.

Instâncias Múltiplas

Instâncias Múltiplas é o nome dado a situação onde você possui várias instâncias instaladas em uma única máquina. Pode ser tanto quando o servidor possui uma Instância Padrão e outras Nomeadas; ou quando você tem somente Instâncias Nomeadas. O SQL Server 2005 suporta a instalação de instâncias múltiplas: tanto de cópias da versão 2005 como em paralelo a versões anteriores do SQL Server. Usar Instâncias Múltiplas aumenta consideravelmente a manutenção administrativa e ocasiona a duplicação de componentes. Além disso, as instâncias adicionais consumirão mais recursos de processamento e de memória do servidor. Entretanto, em certas situações, trabalhar com Instâncias Múltiplas possui vantagens frente a trabalhar com uma única instância do SQL Server. Confira alguns casos abaixo:

Testando várias versões do SQL Server: Quando você quer testar diferentes versões do SQL Server, incluindo edições diferente de uma mesma versão (Testar a Enterprise Edition e a Standard Edition do SQL Server 2005, por exemplo) em uma única máquina, você pode utilizar uma instância para cada versão e assim efetuar os testes desejados.

Testando Services Packs e Upgrades de Aplicativos: Com a finalidade de evitar problemas de compatibilidade e disponibilidade do banco de dados em atualizações do SQL e/ou da Aplicação, recomenda-se usar uma instância somente para testes, em paralelo com a que já funciona.

(7)

7  Clientes diferentes desejam ter controle completo do SQL Server: Existem casos em

que um servidor atende vários clientes, e os mesmos exigem privacidade e privilégios administrativos no SQL Server (criação de usuários e jobs próprios, por exemplo). Nessas situações, o uso de Instâncias Múltiplas garante a independência e autonomia entre as instalações dos clientes.

A aplicação vem com o banco de dados embutido: Para evitar problemas entre outros

programas instalados no servidor que usam bancos de dados, algumas aplicações instalam instâncias próprias e independentes do SQL Server, garantindo assim a sua autonomia e configuração de acordo com as necessidades.

Trabalhando com versões anteriores do SQL Server

Quando você está trabalhando com versões anteriores do SQL Server em um servidor, você pode tanto atualizar o SQL instalado para a versão 2005, como pode usar o SQL Server 2005 lado a lado com a instalação existente. O primeiro tipo de instalação é chamada de In-Place e o segundo tipo de Side-by-Side.

A instalação In-Place sobrescreve os arquivos de programas das versões anteriores do SQL Server, mas mantém os bancos de dados criados pelos usuários, não havendo a necessidade de mover ou recuperar os bancos de dados existentes. Entretanto, recomenda-se que você realize um backup de todos os objetos dos existentes, por questões de segurança.

A instalação Side-by-Side trabalha com o sistema de Instâncias Múltiplas, onde você mantém a instalação já existente e adiciona uma nova instância da versão 2005. Como mostrado no item anterior, uma instalação Side-by-Side permite um processo de migração menos traumático e com a possibilidade de testes, sem alterar no sistema que já está em funcionamento.

É possível efetuar as instalações In-Place e Side-by-Side do SQL Server 2005 em máquinas que possuem o SQL Server 7.0 e SQL Server 2000. Versões mais antigas devem ser antes atualizadas para essas versões e depois atualizadas para o 2005. Caso exista a necessidade de manter a compatibilidade dos bancos de dados com aplicações desenvolvidas em cima de versões anteriores do SQL Server, você pode usar o procedimento sp_dbcmptlevel para definir qual a compatibilidade do banco. Veja na Tabela 1 os valores usados para definir a compatibilidade no procedimento:

Tabela 1. Valores do procedimento sp_dbcmptlevel.

Uma observação importante: o SQL Server Management Studio (SSMS) e o SQL Management Objects (SMO) não dão suporte aos bancos de dados com a

compatibilidade 60 (SQL Server 6.0). Conclusões

Trabalhar com instâncias pode facilitar o trabalho do DBA na hora de gerenciar um servidor de banco de dados. Além disso, é requisito necessário para determinar que

(8)

8 tipo de instalação executar em um servidor com uma versão anterior do SQL Server instalado.

Você pode encontrar mais informações sobre instâncias e compatibilidade do SQL Server 2005 no endereço: http://www.microsoft.com/brasil/sql/. No próximo artigo, simularemos todos os passos da instalação de uma instância do SQL Server 2005 em uma nova máquina, como sua alteração e remoção de um servidor. Até lá.

Instalação dos Pré-requisitos

Na primeira etapa da instalação, o SQL Server 2005 verifica todos os componentes já instalados e exibe a janela de Instalação dos Pré-requisitos, como mostra a Figura 1:

Figura 1. Janela de Instalação dos Pré-requisitos.

Este componente de atualização garante o ambiente exigido pelo instalador do SQL Server 2005. Os componentes que podem ser instalados são o Windows Installer, .NET Framework 2.0, Microsoft SQL Native Client (Cliente Nativo SQL) e o Microsoft SQL Server 2005 Setup Support Files (Arquivos de Instalação). Efetue a instalação destes componentes e clique em Next. Uma observação importante: caso você cancele a instalação o SQL Server, os componentes instalados pela ferramenta de atualização (exceto o Setup Files) não são removidos.

System Configuration Checker (SCC)

Instalados os Pré-requisitos, inicia-se a instalação do SQL Server, apresentando a janela de boas vindas. Clique em Next para iniciar o System Configuration Checker (SCC), como mostra a Figura 2:

(9)

9 Figura 2. Janela do System Configuration Check.

Esta ferramenta verifica várias características do sistema e compara as

configurações detectadas com os requisitos solicitados para uma instalação bem sucedida do SQL Server. Caso o SCC detecte alguma incompatibilidade, o mesmo apresenta detalhes sobre este problema e soluções para resolvê-lo.

As verificações do SCC são divididas em 5 categorias:

Configuração do Sistema: Nesta categoria, o SCC verifica informações triviais, como versão do sistema operacional, Service Packs instalados e Requisitos de Hardware. No primeiro artigo da série, você confere todos esses requisitos.

Disponibilidade do Sistema: Neste grupo, o verificador confere se não há nenhuma pendência de reinicialização ou de outra instalação ocorrendo no mesmo instante.

Configuração de Segurança: Verifica se o usuário que está instalando o SQL Server possui os privilégios administrativos necessários para efetuar a instalação.

Configuração de Versão: Checa que versões do Internet Explorer, SQL Server e do MSXML estão instalados.

(10)

10  Configuração de Cluster e Remoto: Para ambientes distribuídos, verifica se o compartilhamento do administrador (admin$) está disponível no computador remoto ou no nó do cluster.

Após verificar todos os itens, o SCC exibe um relatório com todos os detalhes dos itens verificados, as incompatibilidades encontradas e que soluções tomar para resolver o problema. Ele também exibe, em alguns casos, alertas sobre alguns itens que não impedirão a instalação do SQL Server, mas que podem trazer problemas futuros, como a Configuração do Hardware e as Atualizações de Segurança. Este relatório pode ser salvo.

Uma vez o System Configuration Checker ter sido executado e o resultado final ter sido Success, clique em Next para abrir a janela de Informações do Registro. Informações do Registro

Nesta janela são inseridos os dados de personalização da instalação. Preencha os campos Name, Company e insira o Serial Number do produto, como solicitados pelo registro (Observe a Figura 3).

Figura 3. Janela de Informações do Registro.

Uma vez preenchido os dados solicitados, clique em Next para escolher os Componentes do SQL Server a serem instalados.

Componentes do SQL Server

Uma das principais janelas da instalação do SQL Server 2005, a janela de Instalação dos Componentes é onde você escolhe que componentes e serviços

(11)

11 oferecidos pelo SQL Server você deseja instalar (ou atualizar, caso uma versão anterior esteja instalada). Observe a Figura 4:

Figura 4. Janela de Instalação dos Componentes do SQL Server.

Para facilitar ao Administrador que está efetuando a instalação, o setup do SQL Server exibe os cinco serviços disponíveis como opções para serem escolhidas. Uma opção marcada significa que todos os arquivos daquele serviço serão instalados na máquina.

A ultima opção, quando marcada, instala os componentes de estação de trabalho, o Books Online (Ajuda) e as ferramentas de desenvolvimento. Esta opção não instala nenhum banco de dados de exemplo (Exemplo: AdventureWorks). Para instalá-lo, acesse a opção de instalação avançada.

Para uma instalação avançada, clique no botão Advanced. É então carregada a janela de seleção avançada, onde você pode navegar em cada um dos seis itens da janela anterior e decidir que características você deseja ou não instalar. Confira esta janela na Figura 5.

(12)

12 Figura 5. Janela de Seleção de Características.

No nosso exemplo, vamos instalar todos os serviços oferecidos, e também vamos instalar os bancos de dados de exemplo para estudo. Confirmada estas opções, clique em Next para acessar a parte de configuração de Instâncias.

Nome da Instância

O próximo passo é definir o nome da Instância e, consequentemente, o tipo de instalação a ser executada. Na Figura 6 você pode observar que você pode

escolher a opção Default Instance (onde o nome da instância é o nome do servidor) ou Named Instance (Onde o nome da instância é definido por você).

(13)

13 Figura 6. Janela de Instâncias.

Caso você queira instalar uma instância padrão, marque a opção Default Instance. Caso queria criar uma Instância Nomeada, marque a opção Named Instance e escreva o nome da nova instância. No assistente de instalação, o SQL Server também detecta as instâncias já existentes no servidor e as lista no botão Installed Instances (Figura 7).

(14)

14 Figura 7. Janela de Instâncias Instaladas.

Você pode atualizar uma instância já instalada, selecionando-a na lista e clicando em OK (Instalação In-Place). Para instalar uma nova instância (Instalação Side-by-Side), apenas coloque o nome da nova instância na janela anterior.

Depois de decidido o nome da instância (no nosso exemplo, usaremos a Default Instance), avance na instalação clicando em Next.

Componentes Existentes

Esta janela é opcional. Caso um dos componentes a ser instalados já estiver instalado, o assistente oferece a chance de você atualizar este componente ou de manter a versão atual intacta. Veja na Figura 8 um exemplo.

(15)

15 Figura 8. Janela de Componentes Existentes.

Marcando a opção você está dizendo ao setup do SQL Server para atualizar este componente. Desmarcando a opção, o componente não será alterado. Caso queira ver mais detalhes, clique no botão Details.

Contas dos Serviços

Assim como em versões anteriores do SQL Server, nesta etapa você deve associar contas de usuários aos serviços do SQL Server (Figura 9). Basicamente, você tem duas opções: associar uma conta a todos os serviços que estão sendo instalados, ou associar contas diferentes para cada serviço (Marcando a opção Customize for each service account). É função do Administrador de Banco de Dados definir a política de usuários que terão acesso ao SQL Server, principalmente quando o servidor será inserido no contexto de um domínio.

(16)

16 Figura 9. Janela de Contas dos Serviços.

Além disso, na mesma janela, você pode definir quais serviços serão inicializados quando a instalação do SQL Server for finalizada.

Para o nosso exemplo, escolheremos a conta Network Service e iniciaremos todos os serviços instalados. Clique em Next para escolher o Modo de Autenticação a ser usado.

Modo de Autenticação

Na tela de Modo de Autenticação, você decidirá que método usar para autenticar conexões ao SQL Server 2005. São duas as opções disponíveis:

Windows Authentication: Esta opção de autenticação só aceita conexões de usuários que já tenham sido validados pelo Windows. É o modo de autenticação padrão e o recomendado, por oferecer os mais altos níveis de segurança.  Mixed Mode: Este modo de autenticação suporta tanto autenticações via

Windows ou através de usuário e senha criados no SQL Server 2005. Recomenda-se o uso deste modo de autenticação quando a rede possui aplicações que não utilizam as contas de usuários do Windows (Sistemas Legado). É essencial a criação de senhas fortes, principalmente para o usuário sa.

(17)

17 Figura 10. Janela do Modo de Autenticação.

Diferente da versão 2000, o setup do SQL Server não aceita a senha do sa em branco. Neste exemplo, escolhemos o Mixed Mode e definimos uma senha com letras, números e caracteres especiais. Lembre-se de que a escolha do Modo de Autenticação é essencial na definição das regras de seguranças a serem aplicadas no ambiente. Clique em Next.

Configurações de Intercalação

A próxima tela é a de definir qual vai ser a regra de armazenamento de caracteres Não Unicode e como ordenar e comparar dados Unicode e Não Unicode. É a

configuração de Intercalação. Basicamente, o assistente de instalação já determina esta propriedade, baseado nas propriedades do Windows instalado. Somente altere esta propriedade em duas situações:

Linguagem do SQL Server diferente: Caso você esteja instalando o SQL Server para receber bancos de dados de outro idioma diferente do configurado no Windows;

Participação de Replicação: Caso o servidor que você está preparando faça parte de uma replicação e o idioma do banco de dados a ser replicado é

diferente do idioma padrão.

(18)

18 Instalação do Serviço de Relatórios

Caso você tenha escolhido instalar o Report Services, esta janela aparecerá para que você decida se o instalador do SQL Server irá instalar e configurar

automaticamente o serviço ou não (Figura 11). Clicando no botão Details, você poderá conferir todas as propriedades da configuração automática, além de já disponibilizar o serviço logo após a instalação.

Figura 11. Janela das opções do Report Server.

Somente escolha a opção Install but do not configure the server se você for

configurá-lo manualmente, para atender as necessidades específicas do ambiente. No nosso caso, deixaremos que o próprio setup defina as propriedades padrões do serviço. Depois disso, clique em Next.

Finalizando a Instalação

Uma vez que todas as propriedades desejadas foram configuradas, são mostradas as ultimas telas da instalação. Primeiro, o assistente pergunta se você deseja enviar relatórios de erros e de estatísticas de uso para a Microsoft. Marque as duas opções caso deseje e clique em Next. Então o assistente de instalação exibirá um resumo do que será instalado, como mostra a Figura 12:

(19)

19 Figura 12. Janela Ready to Install (Pronto para instalar).

Clique em Install. A partir deste instante, o resto é por conta do instalador, que vai exibindo o progresso da instalação de cada componente, como mostra a Figura 13:

(20)

20 Figura 13. Janela Setup Progress (Progresso da Instalação).

Por fim, após todos os componentes instalados e com a mensagem Setup finished em cada um dos itens, clique em Next e a instalação estará concluída. A ultima tela exibe um link para o Log da instalação, para o Surface Configuration Area e

algumas informações sobre os serviços instalados. Clique em Finish para encerrar o assistente do SQL Server 2005.

Conclusões

O setup do SQL Server 2005 ajuda não somente a instalar o produto, mas a entender os passos e resolver problemas que acontecem ao longo da instalação. Ferramentas como o System Configuration Checker verificam se o servidor está pronto para uma instalação bem sucedida. Também vimos como efetuar a instalação de instâncias e como associar contas de usuários aos serviços do SQL Server.

Você pode encontrar mais informações sobre as etapas de instalação do SQL Server 2005 no endereço: http://www.microsoft.com/brasil/sql/.

(21)

21

SQL Server 2005 Surface Area

Configuration Tool

Acessando o Surface Area Configuration

O SQL Server Surface Area Configuration está disponível para todas as edições do SQL Server 2005 (Express, Workgroup, Standard, Developer e Enterprise). Uma vez instalada uma instância do SQL Server, o programa poderá ser acessado através do Menu Iniciar, na pasta “Microsoft SQL Server 2005 > Configuration Tools”.

Ao abrir o programa, é exibida a tela inicial, onde o Administrador pode escolher que tipo de configuração efetuar e em que servidor esta configuração será feita, como mostra a Figura 1.

(22)

22 No nosso exemplo, o Surface Area está conectado ao servidor local (Localhost). Para se conectar a uma máquina remota, clique no link “Change Computer” e defina o nome do servidor a ser conectado (Figura 2).

Figura 2. Caixa de alteração do servidor ao qual o Surface Area vai configurar. Observe que este recurso faz com que a administração de várias instâncias do SQL Server seja simplificada. Observe também que o Surface Area se conecta ao servidor, e não apenas a uma instância: se o servidor conectado possuir três instâncias do SQL Server, o DBA tem total liberdade de configurá-las de uma só vez.

Uma vez definido o servidor, o próximo passo é escolher que configuração você deseja realizar. Você pode configurar os serviços e conexões das instâncias do SQL Server; ou configurar recursos de automação e compatibilidade, como o Database Mail e o suporte a CLR.

Configuração de Serviços e Conexões

A Configuração de Serviços e Conexões (Surface Area Configuration for Services and Connections) é responsável por duas atividades: estabelecer como os serviços do SQL Server serão iniciados e como poderão ser feitas as conexões remotas para estes serviços. Os serviços do SQL Server são o Database Engine, responsável pelo gerenciamento dos bancos de dados; o Reporting Services, responsável pelo

(23)

23 agendamento e automação de tarefas administrativas; e o Full-Text Search,

responsável pela pesquisa aprimorada em campos com conteúdo do tipo texto. Ao escolher a opção de serviços e conexões, o Surface Area apresenta ao Administrador a janela de configuração, como mostra a Figura 3.

Figura 3. Configurando Serviços e Conexões do SQL Server.

No lado esquerdo da janela, o Surface Area apresenta a listagem das instâncias instaladas no servidor, com seus respectivos serviços. Esta listagem pode ser ordenada por instância (padrão), onde ele lista os serviços de cada instância; ou por componente, onde ele lista as instâncias por serviço disponível. Ao expandir as opções da listagem, o DBA encontrará no final duas configurações possíveis: Services (Serviços) e Remote Connections (Conexões Remotas).

Na configuração dos serviços, o Administrador tem a possibilidade de visualizar o nome do serviço selecionado, seu nome de exibição, sua descrição e estado atual. Além disso, o DBA pode configurar a forma de inicialização e alterar o estado do serviço. A configuração de serviços está disponível para todos os componentes do SQL Server.

No nosso exemplo (Figura 3), atualmente o serviço Database Engine do SQL Server está parado (Service Status). Para iniciá-lo, basta clicar no botão “Start” e o serviço será iniciado. Ainda no exemplo, a inicialização do serviço (Startup Type) está “Manual”, o que implica ao Administrador iniciar o serviço toda vez que for usá-lo. Podemos configurar a inicialização do serviço para “Automatic”, fazendo com que o serviço suba toda vez que o servidor for ligado.

Uma dica para os DBAs é a de configurar a inicialização dos serviços do SQL Server 2005 apenas após a instalação de uma instância. Isto permite ao administrador

(24)

24 efetuar as configurações de conectividade e inicialização desejada no Surface Area Configuration Tool para então iniciar somente os serviços desejados.

Todos os outros serviços disponíveis no SQL Server 2005 são configurados da mesma forma apresentada acima para o Database Engine, incluindo o Integration Services (SSIS) e o SQL Server Browser, que são serviços disponíveis para todas as instâncias instaladas no servidor.

A Configuração de Conexões Remotas é responsável por estabelecer se os clientes terão acesso a um serviço e como será feita esta conexão. Os componentes que oferecem a opção “Remote Connections” são: Database Engine e Analysis Services. Observe a Figura 4.

Figura 4. Escolhendo as opções de conexão remota do SQL Server.

No exemplo acima, estamos alterando as opções de conexão do serviço “Database Engine” da instância MSSQLSERVER. Por padrão, as edições Express, Developer e Evaluation só permitem conexões locais, enquanto as edições Standard, Workgroup e Enterprise permitem conexões via TCP/IP.

Para alterar esta opção, o Administrador deve definir duas opções: se vai permitir conexão remota ao serviço selecionado e; em caso de positivo; que protocolo utilizar. Na instância MSSQLSERVER, a conectividade está configurada para dar suporte a conexões remotas via TCP/IP. O Administrador pode configurar para dar suporte a conexões remotas via Named Pipes, TCP/IP ou a ambos. É importante o DBA determinar que protocolo utilizar, pois influenciará diretamente na quantidade de portas a serem configuradas no Firewall do servidor. Os protocolos disponíveis são:

(25)

25

NAMED PIPES: Protocolo desenvolvido para redes locais, permite que as

informações de um processo passem para um processo seguinte, através da memória, de tal forma que a saída do primeiro é a entrada do segundo. O segundo processo pode ser local ou remoto.

TCP/IP: Protocolo comumente usado para transmissão de dados em redes

heterogenias (diversas arquiteturas), como a internet. Oferece padrões de roteamento de tráfego e configurações avançadas de segurança.

No caso do Analysis Services, a configuração de conexão se limita a escolher entre permitir ou não conexões remotas: o Analysis Services só permite conexões usando o protocolo TCP/IP. Já as conexões remotas do Reporting Services e do SQL Server Agent não são configuradas no Surface Area Configuration Tool.

Uma vez definido os serviços e as conexões remotas das instâncias instaladas no servidor, o Administrador pode acessar a configuração de recursos para

disponibilizar ou bloquear várias funções do SQL Server.

Configurando Conexões Remotas

Microsoft SQL Server 2005

Muitos casos de problemas com conexão ao servidor de Banco de Dados ocorrem por uma limitação que o SQL Server 2005 possui por padrão. Esta configuração de segurança que vem padronizada no SQL pode ser alterada facilmente. Neste artigo, será apresentada uma maneira de como solucionar este problema rapidamente. Para simular o ambiente, duas máquinas serão utilizadas. Uma será o Servidor de Banco de Dados, e a outra será a máquina cliente. No diagrama abaixo, existe uma arquitetura de exemplo para ilustrar a solução.

O nome do Servidor de Banco de Dados é NGRSERVER e a máquina cliente se chama NOTEBOOK. A instância do SQL Server 2005 que está no servidor é chamada de SQL2005.

Vamos ao que interessa. Ao tentar acessar o Servidor de Banco de Dados com sua configuração padrão, uma mensagem de erro é apresentada. Esta mensagem diz que ocorreu um erro enquanto estabilizava uma conexão com o servidor, esta falha pode ser pelo fato da configuração padrão do SQL Server não permitir conexões remotas.

(26)

26 "An error has occurred while establishing a connection to the server. When

connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections."

A solução deste problema é resolvida em alguns passos:

1. Permitir conexões remotas à instância do SQL Server que será acessada de outro computador;

2. Habilitar o protocolo TCP/IP para conexão e tráfego de informações; 3. Iniciar o serviço do SQL Server Browser;

4. Configurar o Firewall para permitir que informações relacionadas ao SQL Server seja permitido de passar por ele.

Estes passos garantem a conexão remota do SQL Server. Abaixo cada passo é explicado detalhadamente.

Passo 1: Para permitir que computadores acessem instâncias do SQL Server em outra máquina, a primeira coisa a ser feita é uma configuração na instância que receberá as conexões remotas, no nosso caso, o SQL2005 no servidor NGRSERVER.

(27)

27 Para fazer isso, conecte-se localmente na instância do servidor, clique com o botão direito na instância conectada e aponte o mouse para Properties.

(28)

28 Depois de acessar a tela das propriedades da instância do SQL Server, escolha, no menu da esquerda, a opção Connection. A parte direita da tela será referente à Connection, procure a opção Allow remote connection to this server. Deixe esta opção marcada. Clique em OK.

A conclusão deste procedimento passa a garantir que a instância do SQL Server poderá receber conexões remotas, mas este não é o único passo a ser cumprido. Mais alguns passos devem ser seguidos para a conclusão da tarefa.

Passo 2: Para permitir que o protocolo TCP/IP trafegue informações do SQL e que conexões possam ser estabelecidas através deste protocolo, vamos liberá-lo no SQL Server, utilizando uma ferramenta disponível na instalação das ferramentas de administração. A ferramenta é o SQL Server 2005 Surface Area Configuration. Esta ferramenta por padrão, encontra-se na pasta Configuration Tools do SQL Server 2005. Nesta ferramenta, utilizaremos os recursos de Surface Area

(29)

29 Acesse Surface Area Configuration for Services and Connections, no menu da esquerda expanda o item da instância, neste caso, SQL2005. Depois expanda

Database Engine e selecione Remote Connections. Na tela da direita, selecione

a opção Local and remote connections e em seguida Using TCP/IP only. Clique em OK.

(30)

30 Esta configuração permite agora, que a instância selecionada receba conexões locais e remotas, as conexões remotas serão somente por TCP/IP. A opção Using both TCP/IP and named pipes também poderia ser sido utilizada, sem problemas. Continuando com a configuração do TCP/IP, vamos utilizar agora outra ferramenta,

SQL Server Configuration Manager. Nesta ferramenta utilizaremos o recurso SQL Server 2005 Network Configuration, que se encontra no menu da

esquerda. Ao expandir este item, encontramos o Protocols for SQL2005. Ao clicar nele, algumas opções se abrirão do lado direito da tela. Nas opções

disponibilizadas, devemos deixar o protocolo TCP/IP com status de Enabled. Para fazer isso, clique com o botão direito do mouse em TCP/IP e vá em Enabled. Após isso, ele aparecerá configurado.

(31)

31 Depois de configurar o status para Enabled, mais duas verificações devem ser feitas nas propriedades do protocolo TCP/IP. Para acessar estas configurações, clique com o botão direito do mouse em TCP/IP e em seguida em Propriedades. Uma tela com duas abas superiores se abrirá. A primeira aba Protocol, deve ficar com a

propriedade Enabled configurada para Yes.

Na segunda aba, IP Addresses, devemos garantir que as propriedades Active e Enabled estejam configuradas para Yes.

(32)

32 Após garantirmos estas configurações, clicamos em OK para salvar nossas

alterações.

As alterações que foram feitas nestas duas ferramentas são úteis para garantir que a instância do SQL Server selecionada possa receber conexões remotas e que o protocolo remoto de conexão é o TCP/IP.

Passo 3: Para iniciar o serviço do SQL Server Browser, utilizaremos novamente a ferramenta SQL Server Configuration Manger. Para acessar a área que controla os serviços do SQL Server, no menu da esquerda, será utilizado o item SQL Server 2005 Services. Na parte direita da tela, os serviços relacionados ao SQL Server são apresentados. O serviço SQL Server Browser encontra-se com seu State

configurado para Stopped. Para iniciar o serviço, clique com o botão direito do mouse no serviço e em seguida clique em Start. Este processo levará alguns instantes, e o State antigo passará a ser Running.

(33)

33 Após a inicialização do serviço do SQL Server Browser, e as configurações de

liberação para acesso remoto e de TCP/IP, o serviço da instância do SQL Server deve ser reiniciado para que as alterações tenham efeito. Para fazer isso, na mesma tela onde foi iniciado o serviço do SQL Server Browser, selecione o serviço do SQL Server (SQL2005), clique com o botão direito do mouse e aponte p ara Restart. Aguarde alguns instantes a parada e a inicialização do serviço. Lembre-se que SQL2005 é a instância do SQL Server do servidor que utilizamos como

exemplo.

Passo 4: Para que as conexões remotas funcionem no SQL Server 2005, o Firewall da rede deve ter exceções para as instâncias do SQL Server 2005 e o serviço do SQL Server Browser. Para exemplificar, colocaremos as exceções no Firewall do próprio Windows. Caso você utilize outro Firewall, você deve ler sua documentação para realizar o procedimento de liberação dos programas utilizados.

(34)

34 O Firewall do Windows está presente nas instalações do Windows XP com Service Pack 2 ou superior. Para acessar o Firewall do Windows, vá em Iniciar > Painel de Controle > Firewall do Windows ou digite firewall.cpl em Iniciar > Executar e clique em OK. A liberação no Firewall deve ser feita para cada instância que terá suas conexões remotas permitidas. Realizar estas exceções em cada instância do SQL Server é necessária pelo fato de ser permitido instalar diversas instâncias do SQL Server em um mesmo servidor. Cada instalação do SQL Server é chamada de instância, e cada instância pode ter quantos Bancos de Dados forem necessários, podendo ser repetidos ou não em uma instância ou outra. Para colocar uma

instância do SQL Server nas exceções do Firewall, devemos abrir a aba Exceções do Firewall do Windows, clicar em Adicionar Programa, procurar o arquivo

SqlServr.exe que por padrão, encontra-se na pasta C:\Arquivos de Programas\Microsoft SQL Server\MSSQL.1\MSSQL\Binn.

(35)
(36)

36 A pasta MSSQL.1 é a pasta referente à instância 1 do SQL Server. Se for colocar uma exceção para uma segunda instância do SQL, o arquivo SqlServr.exe deve ser localizado na pasta MSSQL.2.

Para colocar uma exceção ao serviço do SQL Server Browser, devemos seguir os mesmos passos que percorremos para colocar exceção à instância do SQL Server, a única diferença será procurar o arquivo SqlBrowser.exe que por padrão está na pasta C:\Arquivos de Programas\Microsoft SQL Server\90\Shared.

(37)
(38)

38 Estes passos apresentados auxiliam a conexão remota com o Servidor de Banco de Dados através de máquinas clientes. Podemos ver que seguindo os passos

corretamente, o acesso de aplicações e de ferramentas administrativas deixou de ser exclusivamente da máquina do Servidor de Banco de Dados, e passou a ter acessos liberados para outras máquinas da LAN (Local Area Network). Lembrando que, para acessar uma instância do Banco de Dados, você terá que colocar um usuário e senha válidos para realizar a conexão

(39)

39

Configurando os Serviços e Conexões do

Microsoft SQL Server 2005

Uma das tarefas rotineiras de um Administrador de Banco de Dados é configurar o SQL Server, estabelecendo os serviços disponíveis, formas de conexão ao servidor e recursos disponíveis para as instâncias instaladas. Em versões anteriores, realizar este trabalho consumia muito tempo, principalmente em ambientes distribuídos ou com vários servidores distribuídos pela

rede.

Pensando em agilizar o trabalho dos DBAs, o Microsoft SQL Server 2005 vem com duas ferramentas que permitem a configuração dos serviços, conexões e recursos de instâncias: o SQL Server Configuration Manager e o SQL Server Surface Area Configuration.

Estas ferramentas oferecem ao Administrador o poder de realizar todas essas configurações em instâncias locais e remotas, de forma simples e eficiente.

Configurando Serviços e Rede com o Configuration Manager

O SQL Server Configuration Manager é o utilitário baseado no sistema de console (snap-in) responsável por gerenciar os serviços relacionados às instâncias locais do SQL Server e os protocolos de conexões permitidos. Esta ferramenta está localizada no grupo Configuration Tools, presente na pasta Microsoft SQL Server 2005 do menu iniciar. Ao executá-lo, é exibida uma janela semelhante à Figura 1.

(40)

40 O Configuration Manager gerencia três características do servidor, que estão

localizados no lado esquerdo da janela. Estas características são:

SQL Server 2005 Services: Este item é responsável por todos os

serviços relacionados ao SQL Server. Nesta opção é possível iniciar, pausar, parar e reiniciar

um serviço, além de definir seu modo de inicialização (automática, manual ou desativada).

SQL Server 2005 Network Configuration: Esta opção permite ao

Administrador configurar os protocolos de rede que o SQL Server irá aceitar. A versão 2005

suporta quatro protocolos: TCP/IP, Pipes Nomeados, VIA e Memória Compartilhada.

SQL Native Client Configuration: Define a ordem dos protocolos

utilizados pelos clientes que acessam o SQL Server e a criação de Alias de conexões.

O primeiro passo ao configurar o servidor é definir como serão iniciados os serviços. Caso o

DBA tenha instalado todos os serviços disponíveis, o SQL Server 2005 trará 7 (sete) itens:

SQL Server 2005: Este é o principal serviço do SQL Server, sendo

responsável por toda a gerência dos bancos de dados do servidor. O serviço SQL Server Agent depende deste serviço.

SQL Server Browser: Fornece informações sobre as instalações

existentes do SQL Server em um servidor para aplicativos clientes, como o SQL Server Management Studio. Desta forma, o usuário consegue

encontrar facilmente a instância que deseja se conectar.

SQL Server Analysis Services: Serviço responsável pela análise de

dados e a geração de informações que dão suporte a softwares de apoio a decisão. É a

principal ferramenta de Business Intelligence.

SQL Server Integration Services: Responsável pela importação,

transformação e exportação de dados, através de pacotes customizáveis. Utilizando para integrar diferentes fontes de dados.

SQL Server Reporting Services: Fornece componentes para a criação

de relatórios de dados relacionais e de análise. Este serviço precisa do IIS (Internet Information Services) para sua execução.

SQL Server FullText Search: Serviço responsável pela execução de

buscas em

dados não estruturados (textos).

SQL Server Agent: Serviço de execução de tarefas agendadas e envio de

alertas,

de acordo com o estado do banco e do servidor.

Para verificar o estado de cada um destes serviços e alterar suas propriedades, abra o item

SQL Server 2005 Services. O Configuration Manager exibirá uma tela idêntica a Figura 2. No exemplo da figura, todos os serviços estão ativados.

(41)

41 Figura 2. Serviços do SQL Server 2005.

Interessante notar que, ao lado do nome de alguns serviços do SQL Server, o nome da instância relacionada a este serviço é exibido. Caso você possua um servidor com diversas instâncias do SQL Server, os serviços farão referência à instância a qual eles pertencem. Serviços sem o nome da instância indicam que são comuns a todas as instalações do SQL Server no servidor, como é o caso do navegador (Browser) e do serviço de integração (Integration).

Para iniciar um serviço, clique com o botão direito em cima do nome e escolha a opção Start. Também é possível pausar, parar e acessar as propriedades de um serviço com o menu rápido.

Nas propriedades do serviço, a parte mais importante é a definição do modo de inicialização do serviço, na guia Serviço. Um serviço pode ser iniciado

automaticamente (quando o servidor é ligado), manualmente (através de

programas ou pelo próprio Configuration Manager) ou desativado (não é iniciado de nenhuma forma). A Figura 3 mostra a configuração do modo de inicialização do serviço SQL Server para Automático (Automatic).

(42)

42 Figura 3. Propriedades do serviço do SQL Server 2005.

Para nosso exemplo, todos os serviços devem está em execução e iniciarão automaticamente. Finalizada esta etapa, a próxima é definir as configurações de rede do nosso servidor de dados.

O item SQL Server Network Configuration permite ao Administrador configurar quais protocolos a instância utilizará. Ao expandir este item, o Configuration Manager exibirá os protocolos por instância presente no servidor.

Vale lembrar que a edição Express possui uma limitação de conexões de rede: são suportadas até 10 (dez) conexões simultâneas em uma instância Express. Acima deste valor, o SQL Server retornará um erro para os clientes que tentarem conexão.

No exemplo da Figura 4, temos duas instâncias do SQL Server 2005 (SQL1 e SQL2) instaladas no servidor.

(43)

43 Figura 4. Configuração de rede do SQL Server 2005.

Ao acessar o item Protocols for SQL1, são exibidos os protocolos disponíveis e os seus respectivos status. O SQL Server 2005 oferece suporte a quatro protocolos diferentes, que são:

Shared memory (Memória Compartilhada): Este protocolo permite

que você se conecte a uma instância SQL Server presente localmente. Este protocolo não pode ser utilizado para acesso via rede.

Named Pipe (Pipes Nomeados): Esta opção permite acesso ao SQL

Server através de diversos protocolos, como o NetBEUI e IPX/SPX. O protocolo é definido de acordo com as configurações do cliente que está acessando.

TCP/IP: Protocolo comumente usado para transmissão de dados em

redes heterogenias (diversas arquiteturas), como a internet. Oferece padrões de roteamento de tráfego e configurações avançadas de segurança.

VIA (Virtual Interface Architecture): Protocolo específico para redes

de sistema. Nesta rede, os dados trafegam em alta velocidade e são utilizadas para a comunicação entre servidores e/ou clusters. A edição Express não suporta este protocolo.

Uma característica importante do SQL Server 2005 Express é que esta edição vem com o suporte a conexões remotas desativado. Para ativar ou desativar um

protocolo, clique com o botão direito no nome do protocolo e selecione a opção desejada.

Para o nosso exemplo, os protocolos TCP/IP e Shared Memory estarão habilitados. Os demais continuarão desabilitados.

(44)

44 Uma vez finalizada estas configurações iniciais, o servidor de dados já está pronto para receber as solicitações dos clientes através da rede e localmente, através de programas como o Management Studio.

Definindo Estratégia de Modelo de

Recuperação para Banco de Dados SQL

Server 2005

Uma estratégia para cópia de segurança é apenas um plano que determina quando usar cada tipo de backup. Uma definição importante para esta política é o modelo de recuperação do banco de dados.

De fato, se o servidor SQL Server estiver indisponível, os seus usuários não poderão fazer suas atividades normalmente. Isto resulta em transtornos para os clientes e produtividade comprometida das aplicações. Como administrador de banco de dados (DBA), é sua responsabilidade assegurar que isto não aconteça à sua companhia. Em outras palavras, você precisa garantir que o servidor SQL Server esteja disponível com mínimo ou nenhum tempo ocioso. Naturalmente que desastres acontecerão, e quando eles surgirem, é seu papel recuperar o servidor SQL Server o mais rápido possível.

Apresentaremos uma série de artigos que visa cobrir o que você tem de fazer para manter o seu servidor SQL Server disponível tanto quanto possível e recuperá-lo em caso de um desastre.

Selecionado e Configurando o Modelo de Recuperação

Antes de você começar a realizar cópias de seus bancos de dados e logs de transações, você precisa entender e configurar o modelo de recuperação que será usado para seu banco de dados. Conhecer qual modelo que você deve utilizar, afeta diretamente em que velocidade as suas cópias serão restauradas de maneira

eficiente, após a ocorrência de algum incidente. O SQL Server precisa saber antecipadamente que tipos de backups você planeja realizar em um banco de dados e qual modelo de recuperação escolhido. O modelo de recuperação padrão que um banco de dados utiliza é o modelo de recuperação FULL. Você pode

selecionar um dos três modelos de recuperação, de acordo com a sua estratégia de backup, que são:

(45)

45 O log de transações (Transaction Log) é usado muito pouco neste modelo de

recuperação. De fato, quase nada é registrado no log. Isto significa dizer que a escolha em usar este modelo para seus banco de dados só será possível recuperar o último backup. Qualquer modificação feita em seu banco de dados depois do último backup ter sido executado será perdida, porque estas alterações não são registradas no log de transações. Este modelo é uma boa escolha para bancos de dados de desenvolvimento onde a maior parte dos dados são dados de teste e que não têm de ser restaurados depois um incidente. Ele é também uma boa escolha para bancos de dados que não são modificados freqüentemente, por exemplo um banco de dados OLAP. Para implementar uma estratégia de backup que inclui somente cópias completas do seu banco de dados, você deve escolhe o modelo de recuperação SIMPLE.

Faça a conexão com seu servidor SQL Server, escolha o banco de dados em que você precisa definir o modo de recuperação, clique com o botão direito e escolha a opção Properties. Agora selecione a página Options para definir o modelo de recuperação, conforme figura abaixo.

(46)

46 BULK-LOGGED

Este modelo registra muito mais informação no log de transações do que o modelo SIMPLE. A única informação não registrada são operações de volume como: SELECT INTO, BCP, BULK INSERT,CREATE INDEX e operações com os tipos de dados texto e ntext. Isto significa que você pode recuperar a maior parte dos dados no caso de algum problema, porém só as operações citadas serão perdidas. Você pode configurar esta opção antes da execução de um operação de volume de inserção objetivando acelerar esta ação. Você deve realizar cópia do seu banco de dados imediatamente após a execução de operações de volume. Caso você escolha esta opção tudo que é inserido durante este período não estará no log de

transações.

Em alguns bancos de dados, esse modelo de recuperação não pode ser utilizado o tempo todo por causa das limitações do tamanho do log de transações e das questões de desempenho que surgem com operações de volume. Por isso, você precisa dimensionar a sua necessidade e aplicar o modelo de recuperação mais apropriado.

Para escolher este modelo de recuperação, altere a opção Recovery Model para Bulk-logged, conforme figura abaixo.

(47)

47 FULL

Este modelo de recuperação informa ao SQL Server que você quer realizar também o backup de log de transações. Para tornar isso possível, o SQL Server mantém todas as transações em um log de transações até que um backup do log de transações ocorra. Quando o backup do log de transações acontece, o SQL Server trunca o log de transações depois que o backup é gravado no dispositivo de

backup. No modelo de recuperação SIMPLE, o log de transações é truncado depois da cada ponto de verificação, o que significa que as transações praticadas são excluídas do log de transações. Usando este modelo, você será capaz de recuperar seu banco de dados até o minuto após acontecer um determinado problema. Esta é uma boa opção de modo de recuperação para a maior parte de bancos de dados de produção, porque ele oferece o mais alto nível de proteção.

Para escolher este modelo de recuperação, altere a opção Recovery Model para FULL, conforme figura abaixo.

(48)

48 Importante: Se nenhum backup de log de transações for feito quando você tiver utilizando o modelo de recuperação FULL, o seu arquivo de log do banco de dados aumentará até o seu tamanho máximo.

CENÁRIO

Você criou um novo banco de dados em seu Servidor SQL, e você precisa garantir que está sendo realizada tão rapidamente e eficientemente quanto possível a cópia de segurança. Você sabe que, para assegurar isto, você precisa configurar no banco de dados para usar o modelo de recuperação mais adequado a sua organização, portanto você decide configurar o modelo recuperação para seu novo banco de dados.

1. Em seu servidor SQL Server, clique com o botão direito em Databases e selecione New Database, conforme figura abaixo.

(49)

49 2. Digite o nome do seu banco de dados, conforme mostrado abaixo.

(50)

50 3. Selecione a página Options e configure o modelo de recuperação para sua base de dados, conforme sua estratégia de backup e clique em OK.

Importante: A primeira coisa em que você deve ter em mente é qual o nível de recuperação que você necessita ter para este novo banco de dados. Observe atenciosamente cada um dos modelos apresentados, a fim de que sua escolha para o modelo de recuperação seja a mais adequada possível

Criação e Restauração de Backup no SQL

Server 2005

Uma das tarefas mais comuns para os Administradores de Bancos de Dados é a criação e restauração de Backups. Criando cópia de segurança da base de dados, o

(51)

51 DBA está garantindo que as informações cadastradas no banco não serão perdidas em caso de falha no Servidor de Dados (quer seja de hardware ou de software). No entanto, não basta ao Administrador apenas criar Backups do banco de dados: ao entender os métodos de backup que o SQL Server oferece, o DBA passa a contar com um leque de opções para criar suas políticas de backup de forma a equilibrar eficiência e desempenho do servidor, ao mesmo tempo em que miniminiza a perda de dados.

Backup Engine do SQL Server 2005

Para entender como o SQL Server 2005 realiza o backup do banco de dados, é necessário entender como funciona a sua Backup Engine. Esta Engine é configurada para realizar todas as tarefas relacionadas a cópia dos dados da forma mais rápida possível, minimizando o impacto na performance do Servidor de Dados.

Quando o backup é iniciado, a Engine escreve as páginas de dados no dispositivo de backup (Disco ou Fita) sem se preocupar com a ordem. Graças a isso, o SQL Server pode abrir vários processos para escrever os dados no seu destino, agilizando o processo.

Mas como este processo geralmente ocorre em ambientes de produção (com usuários trabalhando com os dados), podem ocorrer alterações nos dados durante o processo de criação do backup, e isso poderia gerar inconsistência dos dados. Para evitar este problema, o SQL Server 2005 realiza uma seqüência de tarefas para garantir que ao término da criação da cópia de segurança, todos os dados e objetos existentes na base de dados estão copiados no backup. Estes passos são:

Travamento do Banco de Dados: Ao travar o banco de dados, o SQL

Server fecha todas as conexões existentes.

Criação da marca Checkpoint no Log de Transações: Neste passo, o

SQL Server insere uma marca chamada Checkpoint. É através desta marcação que o SQL Server delimita até que ponto do log será feito o backup inicial. As transações que forem realizadas durante o processo de criação são copiadas depois de criado o backup inicial.

Liberação do Banco de Dados: Depois de criado o Checkpoint, a base

de dados é então liberada para receber as transações durante o processo de backup.

Cópia de todas as páginas de dados: Neste passo, ocorre a criação do

backup, onde o SQL Server 2005 realiza a cópia de todas as páginas de dados para o destino.

Travamento do Banco de Dados: Uma vez copiada todas as páginas de

dados, o SQL Server fecha novamente todas as conexões existentes.

Criação da marca Checkpoint no Log de Transações: Novamente, o

SQL Server insere a marca Checkpoint no Log de Transações.

Liberação do Banco de Dados: Depois de criado o novo Checkpoint, o

SQL Server libera o banco.

Extração de todas as transações que ocorreram durante o

processo de Backup: Através dos dois Checkpoints criados no arquivo de log, o SQL Server extrai todas as transações que foram efetuadas entre as duas marcações e adiciona ao backup. Isto garante a consistência dos

(52)

52 dados e objetos existentes no backup no horário de termino da sua

criação.

Métodos de Backup no SQL Server 2005

O SQL Server 2005 oferece quatro métodos de Backups. Estes métodos são:

Full Backup;

Differential Backup;

Transaction Log Backup;

Filegroup Backup.

Cada método possui características e dependências específicas, que são utilizadas pelo DBA para decidir quando cada um será utilizado na sua política de backup.

Full Backup

O Full Backup (Backup Completo) captura todos os dados que estão armazenados no banco de dados. A Engine executa esta tarefa copiando todas as Extents (Uma Extent contém 8 páginas de dados físicas e contínuas, ocupando 64kb de espaço) que possuem objetos do banco alocados. Com este tipo de backup, é possível recriar toda a base de dados. Além disso, ele sempre está disponível para o Administrador, independente do Recovery Model (Full, Bulk Logged ou Simple) configurando no banco em questão.

O Full Backup é pré-requisito para criação dos outros tipos de backup.

Differential Backup

O Differential Backup (Backup Diferencial) captura todas as Extents que sofreram alterações desde o ultimo Full Backup. Isso significa que todas as alterações de dados e objetos realizadas no banco são copiadas e armazenadas. As informações das Extents alteradas são armazenadas através do Extents Map.

Extent Map é um conjunto de páginas de dados pertencentes ao banco de dados, onde é armazenado um mapeamento de todas as Extents usadas pela base de dados. Cada Extent é um bit no mapa, de valor inicial 0 (zero). Quando uma Extent sofre alterações, o SQL Server acessa o mapa e marca com o valor 1. Esta é a condição usada pela Backup Engine para realizar o backup diferencial: apenas as Extents que possuem o valor 1 no mapeamento. Quando é realizado o Full Backup, todos os valores são zerados.

O backup diferencial sempre trabalha em conjunto com o backup completo: caso não exista um backup completo do banco, o SQL Server não permite a criação de um backup diferencial. Graças a integração com o Full Backup, o Differential Backup também é independente do Recovery Model configurado na base de dados. Por fim, vale ressaltar que o backup diferencial não é a mesma coisa de um backup incremental: cada backup diferencial criado pode substituir todos os backups (Diferenciais e de Log) criados anteriormente até o ultimo backup completo, nos caso de restauração da base de dados.

Transaction Log Backup

O Transaction Log Backup (Backup do Log de Transações) trabalha em cima do log ativo, capturando todas as transações finalizadas deste o ultimo backup, qualquer que seja o tipo. Este tipo de backup é incremental: cada vez que é realizado, ele inicia a cópia do ponto em que foi realizado o ultimo backup e copia todas as transações finalizadas gravadas no log. Ao encontrar uma transação em aberto, o SQL Server finaliza a cópia.

(53)

53 Todas as transações que foram copiadas para o backup são marcadas pelo SQL Server. Esta marcação informa ao SQL Server que a transação em questão pode ser substituída por outra nova, ajudando a minimizar os impactos do crescimento do arquivo de log.

Filegroup e File Backup

O Filegroup Backup (Backup do Grupo de Arquivos) e os File Backup (Backup do Arquivo) são alternativas de backup em bancos que trabalham com múltiplos arquivos de dados. Enquanto todos os métodos de backup apresentados até agora realizam a cópia de toda a base de dados, estes backups permitem que você realize a cópia de cada arquivo e/ou grupo de arquivos pertencentes a um banco de dados de forma isolada. O conjunto de backups de todos os arquivos equivale ao um backup completo da base de dados.

A utilização deste tipo de backup apresenta algumas vantagens:

Recuperação dos Arquivos de uma mídia danificada: Ao utilizar o

método de backup de arquivos, a recuperação do banco de dados é mais rápida nos casos de falha parcial. Imagine um servidor com 3 (três) discos, e em cada um deles está armazenado um arquivo de dados do banco. Caso um destes discos falhe, só é necessário realizar a recuperação do arquivo que está na mídia danificada, e não do banco inteiro.

Realização de Backups de Arquivos e do Log simultaneamente: Ao

realizar o backup de um arquivo, o SQL Server não realiza a etapa de atualização das transações que foram realizadas no período de criação da cópia, somente a cópia das Extents do banco. Isto permite ao SQL Server a realização dos dois backups de forma independente.

Flexibilidade na política de backup: Trabalhar com backup de arquivos

permite ao administrador uma maior liberdade no agendamento das

tarefas e no gerenciamento das mídias de armazenamento, principalmente nos casos em que o backup completo pode se tornar impraticável (Bases de dados muito extensas e que trabalham com múltiplos arquivos). As principais desvantagens da utilização deste tipo de backup são o aumento da carga administrativa e a dependência de todos os backups para restaurar o banco de dados (se a mídia que possui um File ou Filegroup Backup falhar, não é possível a restauração da base de dados).

Filegroup Backup e File Backup requer que o Recovery Model do banco seja Full ou Bulk Logged, já que são os backups dos logs de transações que manterão a

consistência do banco. É possível criar Full Backups e Differential Backups de cada arquivo ou grupo de arquivos do banco de dados.

Criando um Backup no SQL Server 2005

O SQL Server oferece duas formas para a criação de backup: através do SQL Server Management Studio ou usando comandos Transact-SQL. Em ambos os casos, é possível criar todos os tipos de backups abordados acima.

Criando um backup através do SQL Server Management Studio

Para acessar a janela de criação de backups, abra o Management Studio e expanda a pasta Databases na caixa Object Explorer. Ao expandir, clique com o botão direito no banco de dados que você deseja criar o backup (no nosso exemplo, o

AdventureWorks) e vá em Tasks > Back Up. Ao selecionar a opção, é exibida a janela Back Up Database, como mostra a Figura 1.

(54)

54 Figura 1. Criando um backup – Página General.

A janela Back Up Database é divida em duas partes: General (onde você configura as informações gerais do backup) e Options (onde você define algumas ações que serão efetuadas pelo SQL Server ao longo do processo).

Na página General, o primeiro passo é definir qual o banco de dados será copiado e qual o tipo de backup a ser realizado. Na caixa Database já deve está exibindo o banco AdventureWorks, já que este fora selecionando antes de abrir a janela. A caixa Recovery Model exibe o modelo de recuperação do banco selecionado. Esta informação é importante para determinamos quais métodos de backup estarão disponíveis para a base de dados. A caixa Backup Type é onde definimos o tipo de backup a ser efetuado (Full, Differential ou Transaction Log).

O SQL Server 2005 ainda oferece a opção de você realizar uma cópia de segurança apenas de um Filegroup ou de um arquivo de dados (*.mdf ou *.ndf) da base de dados selecionada. Para tanto, basta selecionar a opção File and Filegroups da caixa Database Component e definir os nomes dos arquivos ou grupos de arquivos que você deseja realizar o backup.

(55)

55 Após definido o banco de dados e o método de backup, o segundo passo é definir um nome de identificação, uma descrição e a data de expiração do backup criado. A expiração do backup informa ao SQL Server até quando aquele backup é válido. Uma vez vencida a data, o SQL Server poderá sobrescrever este backup,

substituindo-o por um mais recente. Esta opção ajuda a manter constante o espaço do dispositivo de backup (Disco ou Fita) usado na criação dos backups, além de remover automaticamente backups desatualizados. Você pode configurar o vencimento informando a quantidade de dias que a cópia será valida ou

determinando uma data para o seu vencimento. Digitando o valor 0 (zero) na caixa After (quantidade de dias) informa ao SQL Server 2005 que este backup não

expira.

O ultimo passo para configurar o backup a ser criado é definir o destino da cópia. O SQL Server 2005 trabalha com duas opções de destino: Disk (Disco) ou Tape (Fita). Você pode trabalhar com até 64 destinos simultaneamente, de tal forma que o SQL Server dividirá o backup entre todos os destinos adicionados nesta opção. A opção de gravação em fita só estará disponível caso tenha um dispositivo DAT instalado. Para nosso exemplo utilizaremos o backup em disco.

Cada destino pode armazenar diferentes tipos de backup de diferentes bases de dados. Por exemplo, posso ter um backup completo do AdventureWorks e três backups de log de uma base de dados chamada CRM, todos armazenados no

mesmo destino. Na hora da recuperação, é possível definir o conjunto de backups a ser restaurado, quando o destino possui mais de um backup armazenado.

Por padrão, o SQL Server 2005 possui uma pasta chamada BACKUP, onde são armazenados os bancos copiados. É esta a pasta que a caixa Destination sugere. Para adicionar um novo destino, clique no botão Add... e será exibida a janela Select Backup Destination. Nesta caixa, clique no botão ao lado do caminho e na janela Locate Database Files navegue até encontrar o local do arquivo de backup e digite um nome para este arquivo, como mostra a Figura 2.

(56)

56 Figura 2. Janela de escolha do destino do backup em disco.

Definido o local, clique em OK e depois OK novamente e o SQL retornará a janela principal de criação de backup, mostrando o novo local adicionado a lista de

destinos. Para remover um destino, selecione-o na lista e clique no botão Remove. Para ver mais informações sobre a mídia e os backups que já existem em um destino, selecione-o e clique no botão Contents. Para o nosso exemplo,

realizaremos um Full Backup, removeremos o destino padrão e adicionaremos o destino C:\Backup\BackupSSMS.bak.

Configurado a página General, o próximo passo é configurar a página de Options. Ao selecioná-la no menu a esquerda da janela, o Management Studio apresenta a janela de opções, como mostra a Figura 3.

Referências

Documentos relacionados

A partir de 2004, com a junção de desenvolvimento tecnológico e inovação em política pública, o Brasil implementou um sistema de vanguarda para monitoramento e fiscalização

17 CORTE IDH. Caso Castañeda Gutman vs.. restrição ao lançamento de uma candidatura a cargo político pode demandar o enfrentamento de temas de ordem histórica, social e política

Box-plot dos valores de nitrogênio orgânico, íon amônio, nitrito e nitrato obtidos para os pontos P1(cinquenta metros a montante do ponto de descarga), P2 (descarga do

Acidente de Trabalho é o que ocorre pelo exercício do trabalho a serviço da empresa, provocando lesão corporal ou perturbação funcional que cause a morte, a perda ou

Fora do espaço da reunião anual, considerava-se conveniente fortalecer articulações com outras sociedades de ciên- cias humanas, participar de eventos, publicar e convi- dar

A Pró-Reitoria de Assuntos Estudantis, por intermédio da Divisão Multidisciplinar de Assistência ao Estudante (DIMAE/PROAES) torna público o lançamento do presente edital

O presente trabalho teve como objetivo caracterizar, em crianças com queixa de dificuldade de aprendizagem, associações entre problemas de comportamento e variáveis que determinam

[r]