CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO Antes de criarmos um novo Banco de Dados quero fazer um pequeno parênteses sobre segurança. Você deve ter notado que sempre que abrimos o SQL Server Management Studio, tivemos acesso a todos os elementos do SQL Server 2008 R2. Nunca foi solicitado que digitássemos um nome de usuário e senha. Isto acontece porque ao instalarmos o SQL Server 2008 R2 no Capítulo 2, optamos pela segurança integrada com o Windows. Como estou fazendo o logon com a conta Administrado, a qual faz parte do grupo local Administradores, esta possui poderes totais sobre todos os elementos do servidor SQL Server, quando estamos utilizando a segurança integrada com o Windows. Falaremos detalhadamente sobre segurança no Capítulo 6. Agora chega de conversa e vamos à criação de um Banco de Dados de exemplo. A seguir, temos os detalhes sobre o Banco de Dados que iremos criar: Nome no SQL Server: Exemplo1 Arquivo primário: C:\livrosql\exemplo1\exemplo1-prim.mdf Arquivo secundário: C:\livrosql\exemplo1\exemplo1-sec.ndf : C:\livrosql\exemplo1\exemplo1-log.ldf Exemplo prático: Para criar um novo Banco de Dados na instância SERVER2008\JBCURSOS, usando o SQL Server Management Studio, siga os passos indicados a seguir: 1. Abra o SQL Server Management Studio e conecte-se com a instância no qual você deseja criar um novo banco de dados. Neste exemplo, estou fazendo a conexão com instância SERVER2008\JBCURSOS. 2. No painel da esquerda, localize a janela Pesquisador de Objetos. Se esta janela não estiver aberta, pressione a tecla de função F8 para exibi-la. Caso a janela não esteja na posição desejada, você pode arrastá-la para qualquer posição, dentro da janela do SQL Server Management Studio. Clique no sinal de + ao lado da instância na qual será criado o banco de dados Exemplo1 3. Nas opções que surgem abaixo da instância, dê um clique em Bancos de Dados para selecioná-la. 4. Clique com o botão direito do mouse em Bancos de Dados. No menu que surge dê um clique na opção Novo Banco de Dados... Será exibida a janela Novo Banco de Dados, com a guia Geral, selecionada por padrão. 5. Na guia Geral iremos definir o nome do Banco de Dados, no nosso exemplo digitaremos: Exemplo1. Nesta guia você também define quem será o usuário dono do banco de dados. O usuário dono, por padrão, tem permissões completas sobre todos
os objetos do banco de dados. Por padrão, é sugerido o usuário padrão, que é o usuário sa, que é o usuário com permissões de Administrador no SQL Server 2008 R2. Vamos aceitar a sugestão e deixar o usuário as como dono do banco de dados. Nesta guia aceite a opção padrão do servidor e digite Exemplo1 no campo Nome do banco de dados. 6. Na parte de baixo desta guia, poderemos definir quais os arquivos de dados que serão utilizados para o Banco de Dados Exemplo1. Lembre que neste caso teremos o arquivo primário C:\livrosql\exemplo1\exemplo1-prim.mdf e o secundário C:\livrosql\exemplo1\ exemplo1-sec1.ndf. Definimos as características destes arquivos (nome, tamanho máximo, pasta onde serão criados, etc.), usando as opções do grupo Arquivos de bancos de dados, ainda na guia Geral. Observe no grupo Arquivos de banco de dados que o SQL Server já sugere as configurações para um arquivo primário e um arquivo de log. Vamos modificar estas opções para criar o banco de dados conforme a proposta deste exemplo. 7. No grupo Arquivos de banco de dados clique na primeira linha, para selecioná-la. A primeira linha tem as definições do arquivo primário de dados. Observe que, automaticamente, é sugerido o mesmo nome lógico do banco de dados: Exemplo 1. Você também pode definir o tamanho inicial para o arquivo. No nosso exemplo, digite 20 na coluna Tamanho inicial (MB) na linha Exemplo1, para criarmos um arquivo primário com um tamanho inicial de 20 MB. Na coluna Aumento automático você define de que maneira o arquivo primário irá crescer, a medida que os dados forem sendo adicionados. O padrão é crescer de 1 MB em 1 MB com tamanho ilimitado (evidentemente que o tamanho máximo será limitado pelo espaço disponível em disco). Se você quiser alterar a forma de crescimento, clique no botão com as reticências... ao lado da opção selecionada. Será exibida a janela Alterar Aumento Automático para Exemplo1, indicada na Figura 3.22, na qual você pode definir diferentes formas de crescimento para o arquivo primário Exemplo1, do banco de dados Exemplo1. Você pode habilitar ou desabilitar o crescimento automático, pode fazer com que o crescimento seja em percentual ou em MB e pode permitir um tamanho máximo ou crescimento irrestrito. Selecione as opções desejadas, que para o nosso exemplo serão: Tamanho inicial: 20 MB, Crescimento automático em incrementos de 1 MB e Poderá crescer até o máximo de 50 MB. Selecione estas opções e clique em OK, para fechar a janela Alterar Aumento Automático para Exemplo1
Figura 3.22 Definindo as opções de crescimento do arquivo primário. 8. Agora vamos definir a pasta onde será gravado o arquivo primário. Por padrão, o SQL Server 2008 R2 sugeri o caminho onde está a pasta DATA, para a instância que está sendo utilizada. Por exemplo: C:\Arquivos de programas\microsoft SQL Server\MSSQL.1\MSSQL\DATA. Vamos alterar o caminho para: C:\livrosql\exemplo1. Você pode digitar este caminho diretamente, ou clicar no botão com as reticências, para selecionar o caminho com o mouse e deixar que o SQL Server 2008 R2 preencha esta coluna, com o caminho selecionado. Finalmente, no campo nome do arquivo, digite exemplo1-prim.mdf. Pronto, terminamos as definições para o arquivo primário de dados do banco de dados Exemplo1. 9. Ainda na guia Geral, e seguindo as orientações passadas anteriormente, vamos configurar as opções do arquivo secundário C:\livrosql\exemplo1\exemplo1-sec1.ndf, com as seguintes características: Nome lógico: Exemplo1sec Tipo de arquivo: Dados de linha Grupo de arquivos: PRIMARY Tamanho inicial: 10 MB. Crescimento automático em incrementos de 2 MB. Poderá crescer até o máximo de 100 MB. Pasta: C:\livrosql\exemplo1 Nome do arquivo: exemplo1-sec.ndf 10. Para adicionar um arquivo secundário, clique no botão Adicionar, na parte de baixo da guia Geral. Uma nova linha será criada faça as configurações para o arquivo exemplo1-sec.ndf, conforme descrito na lista anterior. 11. passo final é a definição do arquivo de log C:\livrosql\exemplo1\exemplo1-log.ldf. Este arquivo já vem com definições padrão, na linha logo abaixo de onde foi definido o arquivo primário. Vamos criar um arquivo de log com as seguintes características:
Tamanho inicial: 5 MB. Crescimento automático em incrementos de 10 %. Poderá crescer até o máximo de 40 MB. 12. Observe que na coluna Tipo de arquivo já vem selecionado Log e na coluna Grupo de arquivos vem selecionada a opção Não aplicável. Na coluna Tamanho Inicial (MB), digite 5. Clique no botão de reticências, ao lado da opção de Aumento automático, para abrir a janela Alterar Aumento Automático... e selecione um Crescimento automático em incrementos de 10% e defina que o arquivo Poderá crescer até o máximo de 40 MB. Clique em OK para fechar a janela Alterar Aumento Automático... 13. Agora vamos definir a pasta onde será gravado o arquivo de log. Vamos alterar o caminho para: C:\livrosql\exemplo1. Você pode digitar este caminho diretamente, ou clicar no botão com as reticências, para selecionar o caminho com o mouse e deixar que o SQL Server 2008 R2 preencha esta coluna, com o caminho selecionado. Na coluna Nome do arquivo digite: exemplo1-log.ldf. Suas configurações devem estar conforme indicado na Figura 3.23: Figura 3.23 - Configurações para o banco de dados Exemplo1. Nota: Poderíamos usar as demais guias Opções e Grupos de Arquivos para definir opções avançadas do banco de dados. Para este primeiro exemplo, estas guias não serão utilizadas. Nota: A pasta C:\livrosql\exemplo1 já deve ter sido criada, se não será gerado um erro na hora de criar o banco de dados Exemplo1. 14. Dê um clique no botão OK e aguarde. Após alguns segundos o Banco de Dados Exemplo1 terá sido criado. 15. Agora vamos nos certificar de que o banco de dados Exemplo1 foi, efetivamente, criado. Na janela Pesquisador de Objetos clique no sinal de + ao lada da opção
Databases, abaixo da instância na qual o banco de dados foi criado. Clique na opção Databases para selecioná-la e pressione F5 para atualizar a listagem. Na lista de banco de dados já deverá ser exibido o banco de dados Exemplo1. Dê um clique neste banco de dados, para exibir as suas propriedades, no painel da direita, conforme indicado na Figura 3.24: Figura 3.24 O banco de dados Exemplo1, recém criado. Dica: Caso o Banco de Dados Exemplo1 ainda não esteja aparecendo na listagem, clique com na opção Databases para selecioná-la e pressione a tecla F5 para atualizar a listagem. 16. Após termos criado um Banco de Dados, podemos, facilmente, adicionar novos arquivos de dados ou de log. Para isso basta clicar com o botão direito do mouse no nome do Banco de Dados e no menu que surge clicar na opção Propriedades. Será exibida a janela de propriedades do Banco de Dados. Na janela de Propriedades clique na guia Arquivos para ter acesso as opções de alterações dos arquivos existentes e de adição de novos arquivos secundários e/ou novos arquivos de log. Agora que já sabemos criar um Banco de Dados utilizando o Enterprise Manager, vamos propor um pequeno exercício para o amigo leitor fixar os conceitos apresentados. Exercício proposto: Acesse as propriedades do Banco de Dados Exemplo1 e crie mais um arquivo secundário e um arquivo de log, conforme definido a seguir. Para isso basta clicar com o botão direito do mouse no banco de dados Exemplo1 e, no menu de opções que é exibido, clicar em Propriedades. Na janela de propriedades que é exibida, clique na guia Arquivos. Agora é só usar o botão Adicionar, para adicionar novos arquivos e configurar as propriedades de cada novo arquivo, conforme definições da Tabela 3.1:
Tabela 3.1 Criando arquivos adicionais, no banco de dados Exemplo1. Arquivo Secundário Definições C:\livrosql\Exemplo1\exemplo1-sec2.ndf. Tamanho inicial: 5 MB. Tamanho máximo de 20 MB. C:\livrosql\Exemplo1\exemplo1-log2.ldf. Tamanho inicial: 5 MB. Crescimento em incrementos de 1 MB. Exercício: Criar o Banco de Dados indicado na Tabela 3.2, utilizando os passos que você aprendeu no exemplo prático anterior. O banco de dados será chamado de Exemplo2 e será criado na instância SERVER2008\JBCURSOS (use a instância que você tem disponível, no seu computador). Os arquivos do Banco de Dados Exemplo2 serão gravados na pasta: C:\livrosql\Exemplo2. Lembre-se de que esta pasta já deve ter sido criada, antes que o banco de dados possa ser criado, se não será gerado um erro na hora da criação do banco de dados. Tabela 3.2 O banco de dados Exemplo2. Arquivo Primário Secundário Secundário Definições C:\livrosql\Exemplo2\exemplo2-prim.ndf. C:\livrosql\Exemplo2\exemplo2-sec1.ndf. C:\livrosql\Exemplo2\exemplo2-sec2.ndf. C:\livrosql\Exemplo2\exemplo2-log1.ldf. C:\livrosql\Exemplo2\exemplo2-log2.ldf. C:\livrosql\Exemplo2\exemplo2-log3.ldf. Então mãos à obra. Em caso de dúvidas sobre a criação do banco de dados Exemplo2, é só entrar em contato, pelo e-mail: webmaster@juliobattisti.com.br
Observação importante sobre o crescimento automático de arquivos. Vamos falar um pouco mais sobre o crescimento automático dos arquivos primário, secundário(s) e de log de um Banco de Dados. Por exemplo, vamos supor que estejamos criando um Banco de Dados com um as características indicadas na Tabela 3.3. Tabela 3.3 Algumas questões sobre espaço em disco. Arquivo Primário Secundário Definições C:\livrosql\qualeur\qualquer-prim.mdf. Tamanho inicial: 5 MB. Crescimento em incrementos de 1 MB. C:\livrosql\qualquer\qualquer-sec1.ndf. Tamanho inicial: 7 MB. Crescimento em incrementos de 2 MB. Tamanho máximo de 15 MB. C:\livrosql\qualquer\qualquer-log1.ldf. Tamanho inicial: 7 MB. Crescimento em incrementos de 2 MB. Tamanho máximo de 25 MB. Vamos responder às seguintes questões: 1) Ao criarmos este Banco de Dados, quanto ele estará, inicialmente, ocupando de espaço em disco? R: 19 MB. Este valor é a soma dos tamanhos iniciais do arquivo primário (5 MB), mais todos os arquivos secundários, que no caso temos apenas um (7 MB), mais todos os arquivos de log, que no nosso exemplo temos apenas um (7 MB). Com isso podemos concluir que um arquivo (primário, secundário ou de log) de um Banco de Dados do SQL Server, é criado com o seu tamanho inicial. Este tamanho vai aumentando, conforme definido pelas configurações de auto crescimento, a medida que mais espaço vai sendo necessário no Banco de Dados. 2) Qual o tamanho máximo que pode atingir este Banco de Dados? Esta parece e é fácil. Basta somar os tamanhos máximos que cada arquivo pode atingir. No nosso exemplo, teríamos: 10+15+25 = 50 MB. Porém, se a pergunta fosse um pouco diferente, como: Qual o tamanho máximo para dados deste Banco de Dados? Neste caso devemos desconsiderar os arquivos de log, nos quais ficam registradas apenas as operações realizadas sobre os dados. A utilização do crescimento automático juntamente com a definição de tamanho máximo são mecanismos importantes para o administrador do Banco de Dados. O crescimento automático facilita a vida do DBA Database Administrador, pois dispensa o administrador de ter que aumentar, manualmente, o tamanho dos arquivos do Banco de Dados, sempre que o tamanho máximo fosse atingido. A definição de um tamanho máximo também é recomendada, pois evita
que devido a alguma operação com problemas, devido a algum erro de programação, todo o espaço do disco seja preenchido.