Instalação SQL Server 2008

Bem-vindo ao SQL Server 2008 para Desenvolvedores. Este livro foi escrito para aqueles que têm interesse em aprender como criar soluções com Microsoft SQL Server 2008, mas que ainda não conhece o SQL Server 2008. É possível que você tenha experiência com outros bancos de dados, como MySQL, Oracle ou Microsoft Access, mas SQL Server usa interfaces diferentes e possui uma maneira diferente de trabalho comparado a muitos dos concorrentes. O objetivo deste livro é rapidamente levá-lo a um nível no qual você estará competentemente desenvolvendo com SQL Server 2008. Este livro é especificamente dedicado a iniciantes e àqueles que neste momento desejam usar somente o SQL Server 2008. Também é para aqueles desenvolvedores que possuem experiência em SQL Server 2005 e desejam um método rápido para acelerar no SQL Server 2008. Você achará este livro útil para entender os fundamentos de outros bancos de dados no mercado, especialmente ao trabalhar com T-SQL. Muitos bancos de dados usam um SQL padrão ANSI, então mudar de um SQL Server para Oracle, Sybase, etc., depois de ler este livro será muito mais fácil.

Neste capítulo, explicaremos as seguintes áreas:

• Por que o SQL Server 2008?

• Qual o hardware de que preciso?

• Posso confirmar se tenho o sistema operacional correto?

• Como descubro se meu hardware obedece aos requisitos?

• O que posso fazer com o SQL Server 2008?

Também observaremos a instalação da nossa edição escolhida e abordar o seguinte:

• A instalação do SQL Server 2008 em uma plataforma Windows XP

• As opções que não são instaladas por padrão

• Onde instalar fisicamente o SQL Server

• Múltiplas instalações em um computador

• Como o SQL Server é executado em uma máquina

• Como a segurança é implementada

• Identificações de logon para o SQL Server, especialmente o logon sa (administrador do sistema)

 

Por que o SQL Server 2008?

A discussão a seguir condiz com o meu ponto de vista, que sem dúvida alguma será diferente de outros; entretanto, a base da discussão é muito útil. Há a concorrência com outros bancos de dados, não apenas com outros produtos da Microsoft, como o Microsoft Access e o Microsoft Visual FoxPro, mas também com concorrentes como a Oracle, a Sybase, DB2 e Informix, para citar alguns. Ao olharmos para as soluções da Microsoft, as outras opções são o Microsoft Access e o Microsoft Visual FoxPro.

O Access é um banco de dados para estação de trabalho bastante prolífico, encontrado em um grande número de PCs. O fato de ser empacotado em algumas edições do Office e existir por alguns anos em diferentes versões do Office ajudou a torná-lo onipresente; entretanto, muitas pessoas realmente utilizam esse software. Infelizmente, ele tem suas limitações na escalabilidade, velocidade e flexibilidade, mas, para muitos sistemas, essas áreas de preocupação não são um problema, já que eles são pequenos, caseiros e não exigem funcionalidades especializadas de banco de dados.

Agora chegamos aos concorrentes, Oracle e Sybase. Oracle é visto talvez como o líder de mercado na comunidade de bancos de dados e possui uma base de usuários extremamente grande. Não há dúvidas de que é um grande produto e se adapta muito bem a grandes empresas, embora seja mais complexo de instalar e administrar do que o SQL Server; possui grandes soluções.

 

Visão Geral e Instalação do SQL Server 2008

Há muitos aspectos do banco Oracle que o tornam uma ferramenta poderosa, incluindo escalabilidade e desempenho. Ele também lhe proporciona flexibilidade, já que você pode adicionar ferramentas à medida que precisa delas, com mais flexibilidade nessa área do que o SQL Server. Por exemplo, o SQL Server 2005 força você a instalar o framework .NET em seu servidor, caso você o utilize ou não. Entretanto, ele não é amigável ao usuário do ponto de vista do desenvolvedor, em pontos como a ferramenta de Consulta SQL, seu XML e ferramentas de tecnologia web, assim como na maneira como você cria uma solução completa de banco de dados; outras desvantagens incluem seu custo e a complexidade envolvida na instalação e na execução eficiente. Mas você descobrirá que ele é muito utilizado por mecanismos de pesquisa na web, embora o SQL Server possa funcionar com bastante eficiência. Com a nova funcionalidade do SQL Server 2005, a Oracle ficará sob pressão para expandir a funcionalidade existente para encarar o desafio. O SQL Server sempre foi uma solução de uma compra, uma vez que (desde que você tenha comprado a versão correta) as ferramentas que permitem a você analisar seus dados ou copiar dados de uma origem como o Excel para o SQL Server estarão todas incluídas “no pacote”. Com Oracle, ao contrário, para cada recurso adicional desejado você terá de adquirir mais opções.

Há, então, o banco da Sybase. Ele é muito parecido com o SQL Server, com uma grande exceção: o front end da GUI – não há nenhum. O Sybase Adaptative Server Anywhere, que é usado principalmente para pequenas instalações, possui um front end, mas o topo de linha da Sybase não. Para os puristas, não há necessidade de um, e front ends de GUI são para aqueles que não sabem como escrever código – bem, esse é o seu argumento, é claro, mas por que usar 60 toques ou mais quando eu posso apontar, clicar e arrastar?

Sybase também pode ser encontrado em Unix, apesar de haver uma versão Windows. Você pode instalar Sybase em uma máquina Unix através de uma maquina Windows usando ferramentas para se conectar a ele, mas você ainda precisará usar o código puro para construir sua solução de banco de dados. É muito rápido e robusto e é reiniciado somente uma vez, talvez duas vezes, ao ano.

Outra coisa sobre Sybase é que ele não é rico em comandos e recursos como o SQL Server. SQL Server tem uma linguagem de programação mais poderosa e uma funcionalidade que é mais poderosa do que Sybase.

Cada banco de dados possui sua própria sintaxe SQL, apesar de terem a mesma sintaxe SQL básica, conhecida como ANSI-92 padrão. Isso significa que a sintaxe para a recuperação de dados, entre outras, é a mesma de um banco de dados para o outro. No entanto, cada banco de dados possui sua própria sintaxe especial para sua manutenção, e tentar usar um recurso da sintaxe SQL de um pode não funcionar, ou funcionar de outra maneira, em outro.

Assim, o SQL Server parece ser a melhor opção do mercado, e em muitas ocasiões ele é mesmo. Pode ser pequeno o suficiente para vários usuários ou grande o bastante para as maiores corporações. Ele não precisa custar tanto quanto Oracle ou Sybase, mas precisa ser escalável e deve lidar com terabytes de dados sem grandes preocupações. Como você vai ver, o SQL Server é fácil de instalar, uma vez que vem como um pacote completo para a maioria de suas funcionalidades, e as áreas restantes, se necessárias, também poderão ser incluídas em uma simples instalação.

Agora que você já sabe os motivos por trás da escolha do SQL Server, precisa saber quais versões existem, para qual mercado se destina cada uma delas e qual será a melhor para você, incluindo qual versão poderá ser executada em sua máquina.

A evolução do SQL Server

O SQL Server evoluiu com o passar dos anos até chegar ao estágio de hoje. A Tabela 1-1 mostra um resumo desse processo.

Tabela 1-1. Os estágios da evolução do SQL Server

Ano Versão Descrição

– 1988 SQL Server A aplicação SQL Server é criada em conjunto com a Sybase para uso no OS/2.

– 1993 SQL Server 4.2

– 1994 A Microsoft se separa da Sybase.

Um banco de dados de estação de trabalho, de baixa funcionalidade,capaz de atender às necessidades de um armazenamento de dados ede manipulação de dados de um pequeno departamento. O conceito de um banco de dados que foi integrado com o Windows e tinha uma interface fácil de usar que se mostrou popular.

Um banco de dados de estação de trabalho

– 1995 SQL Server 6.05 A maior parte do núcleo do mecanismo de banco de dados foi Um banco de dados reescrita.Primeira versão “significativa”. O desempenho melhorou e para pequenos negócios houve melhoras significativas em recursos. Ainda teria um longo caminhoem termos de desempenho e conjunto de recursos até as últimas versões,mas com essa versão do SQL Server nos tornamos capazesde manipular aplicações pequenas de e-commerce e de intranet e ela custava uma fração do preço dos concorrentes.

– 1996 SQL Server 6.5 O SQL Server estava ganhando notoriedade e a Oracle lançou a versão 7.1 para a plataforma NT como concorrente direto.

– 1998 SQL Server 7.0 Mais uma vez uma parte do núcleo do mecanismo de banco de Um banco de dados para web dados foi significativamente reescrita. Uma versão de definição,  que oferecia um banco de dados razoavelmente poderoso e com muitos recursos que era uma alternativa verdadeiramente viável (e ainda barata) para os negócios pequenos e médios, entre um verdadeiro banco de dados de estação de trabalho como o MS Access e as capacidades de empresas de ponta (e o preço)do Oracle e do DB2. Ganhou uma boa reputação por sua facilidade de uso e por oferecer ferramentas fundamentais de negócio (por exemplo, serviços de análise e de transformação de dados) em seu pacote e que eram recursos adicionais (add-ons) nos bancos de dados concorrentes.

– 2000 SQL Server 2000 Com uma vasta melhora no desempenho, na escalabilidade e na Um banco de dados confiabilidade, o SQL Server se tornou um grande player do mercado para empresas de banco de dados para empresas (agora suportando as operações de negócios on-line, como a NASDAQ, Dell e Barnes & Noble). Um grande aumento no preço (embora ainda seja, reconhecidamente, em torno da metade do preço do Oracle) não foi bem compreendido, mas a excelente gama de ferramentas de gerenciamento, desenvolvimento e análise conquistou novos clientes. Em 2001, o Oracle (com 34% do mercado) finalmente cedeu a posição de número 1 no mercado de banco de dados para Windows (que valia US$ 2,55 bilhões em 2001) para o SQL Server ( com 40% do mercado). Em 2002, a distância aumentou, com o SQL Server com 45% e o Oracle caindo para 27%.Fonte: relatório do Gartner de 21 de maio de 2003.

– 2005 SQL Server 2005 Muitas áreas do SQL Server foram reescritas, tais como a capacidade de carregar dados por meio de um utilitário chamado Integration  Services, mas o maior salto à frente é a introdução do Framework .NET. Ele permitirá que os objetos específicos do SQL Server .NET sejam criados, dando ao SQL Server a funcionalidade flexível que o Oracle possui com a inclusão do Java.

– 2008 SQL Server 2008 O objetivo do SQL Server 2008 é lidar com os muitos formatos que os dados agora podem ter. Ele amplia a infraestrutura do SQL Server 2005 oferecendo novos tipos de dados e o uso da Consulta Integrada de Linguagem (LINQ – Language Integrated Query). Ele também lida com dados, como XML, dispositivos compactos e massivas instalações de banco de dados, que residem em muitos lugares diferentes. Ele também oferece a habilidade de configurar regras dentro de um framework para garantir que bancos de dados e objetos se adaptem aos critérios definidos, e oferece a habilidade de relatar quando estes objetos não se adequam a estes critérios.

 

Requisitos de hardware

Agora que você já conhece as edições do SQL Server que poderiam ser usadas neste livro, a próxima grande questão em sua lista deve ser: “eu tenho um computador poderoso o suficiente para executar essas edições? Isso me ajudará a refinar minha decisão?”.

A julgar pelos padrões atuais mínimos de especificação de hardware que pode ser adquirido, a resposta na maioria dos casos é “sim” para quase todas as edições. Entretanto, talvez você tenha um hardware mais antigo (tudo muda tão rapidamente que mesmo o hardware comprado há alguns meses já pode estar abaixo da especificação mínima), portanto vamos dar uma olhada nas recomendações mínimas e como você pode verificar seu próprio computador para garantir que possui os recursos suficientes.

 

CPU

A CPU mínima recomendada em que o SQL Server será executado é um Intel Pentium com processar de 500 MHz, um processador compatível ou um poder de processamento similar. No entanto, como a maior parte dos requisitos mínimos listados aqui, a Microsoft recomenda um processador mais rápido, na verdade de 1GHz. Quanto mais rápido o processador, melhor será o desempenho do seu SQL Server e menos gargalos poderão aparecer. Muitos dos computadores atuais começam em 2GHz ou acima, e 500 MHz não é uma instalação padrão já há alguns anos. Se você tiver um processador de menor velocidade, tente investir em sua atualização. Você verá como seu tempo de desenvolvimento será reduzido.

Contudo, não é só o processador que acelera o SQL Server. Uma grande parte também é feita pela quantidade de memória do seu computador.

 

Memória

Agora que você sabe que tem um processador rápido o suficiente, é hora de verificar se tem memória suficiente no sistema. Todas as edições do SQL Server, exceto a do Windows Express e das versões Mobile, exigem um mínimo de 512MB de RAM onboard em seu computador. Muitas das edições que podem ser usadas serão executadas com isso, só que você não poderá ter muitas outras aplicações abertas e em execução, já que poderiam facilmente não deixar memória suficiente para que o SQL Server seja executado com a velocidade ideal. A Microsoft recomenda 1GB ou mais, e realmente você terá de dobrar isso quando começar a usar o seu SQL Server com seriedade.

Se você quiser executar a Enterpise Edition, então um mínimo, digo um mínimo mesmo, de1 GB deve ser instalado, especialmente se você quiser qualquer uma das características mais avançadas.

Quanto mais memória melhor: eu realmente recomendo um mínimo de 1GB em qualquer computador usado pelo desenvolvedor, e 2GB é o ideal e o suficiente para obtermos um bom desempenho geral. Se um processo puder ser armazenado na memória, em vez de ficar em swap no disco rígido ou em outra área enquanto você estiver executando outro processo, então você não vai ficar esperando o SQL Server ser novamente carregado na memória para começar. Isso é chamado de swap, e quanto mais memória menos swap pode, e deve, acontecer.

Juntando a velocidade da CPU e a memória como um todo, esses são os dois itens cruciais para a velocidade da execução no computador, e tê-los em quantidade suficiente permitirá que você desenvolva com mais rapidez possível.

Quando se trata de instalação do SQL Server, memória insuficiente não vai impedir a instalação, mas você será avisado que precisa de mais memória.

 

Espaço em disco rígido

Muitos! Mostre-me uma grande aplicação atual que não precise de muitos! Para o SQL Server apenas, ignorando os arquivos de dados que serão adicionados, você precisará de 1GB de espaço. Certamente as opções de instalação que serão usadas mais adiante no capítulo significarão que você precisa desse espaço. É possível reduzi-lo se você optar por não instalar algumas opções, como o Books Online, por exemplo, mas mesmo os notebooks atuais vêm com um mínimo de 40GB, e 80GB também não são incomuns. O espaço em disco é barato, assim como é melhor comprar um disco muito maior que a sua necessidade do que ter um disco rígido que é suficiente agora e então ter de comprar outro mais tarde com todos os problemas de mudar as informações de lugar para ter espaço na unidade original.

Novamente, você precisará de espaço livre na unidade para a expansão do SQL Server e de seus bancos de dados, assim como espaço para arquivos temporários necessários no processo de desenvolvimento. Pense grande – grande é lindo!5 visão geral e instalação do sql server 2008 C a p í t u l o 1

Requisitos do sistema operacional

Você descobrirá que o SQL 2008 pode ser executado no Windows 2000 Professional ou superior com Service Pack 4 ou em todas as edições do Windows XP Service Pack 2 ou superior. Ele também funciona em sistemas operacionais de 64 bits para Windows XP, assim como nas edições de 64 bits do Windows Server 2008. Portanto, há muitas opções de sistemas operacionais para a execução do SQL Server.

 

O exemplo

Para demonstrar o SQL Server 2008 em sua totalidade, desenvolveremos juntos um sistema para uma empresa financeira que terá recursos como banking, compra compartilhada e compras normais, assim como um plano unitário de poupança etc. Essa é uma aplicação que poderia servir para uma grande empresa ou, com algumas pequenas modificações, poderia ser usada por uma única pessoa para registrar transações bancárias.

O livro cria uma idéia e desenvolve o exemplo demonstrando como pegar uma idéia e formulá-la em um projeto com a arquitetura correta. Deve ser mencionado, no entanto, que o exemplo será o mínimo possível para ser executado, já que eu não quero diminuir o SQL Server. O livro oferecerá a você o poder e o conhecimento para que pegue o exemplo, expanda-o para que atenda às suas necessidades financeiras e dê a ele os aspectos específicos e intrínsecos necessários para que ele seja totalmente útil a você.

Mas antes de chegarmos a esse ponto, precisamos instalar o SQL Server.

 

Instalação

O restante deste capítulo vai te guiar pelo processo de instalação da Developer Edition, apesar de que tudo o que você vê estará em todas as edições. Algumas diferenças serão devido à funcionalidade de cada edição. A Microsoft oferece uma versão de teste de 120 dias em http://www.microsoft.com/sql/evaluation/trial/, que você pode usar junto com os exemplos neste livro, se você ainda não possuir o SQL Server 2008.

Este livro vai abordar muitas das opções e combinações de características que podem ser incluídas dentro de uma instalação. Várias ferramentas diferentes são fornecidas com o SQL Server para serem incluídas com a instalação. Daremos uma olhada nestas ferramentas para que um entendimento básico do que elas são nos permita decidir qual instalar.

A instalação abrange muitas áreas diferentes:

• Questões de segurança

• Tipos diferentes de instalação – seja essa a primeira instalação e instância do SQL Server ou uma instância subseqüente, para desenvolvimento, teste ou produção

• Instalações personalizadas

• Instalação de apenas alguns dos produtos disponíveis

Muitas dessas áreas serão explicadas para que, ao final do capítulo, possamos nos sentir confiantes e tenhamos o conhecimento para completarmos quaisquer instalações posteriores que satisfaçam as nossas necessidades.

Este livro usa a Developer Edition porque é mais adequada às nossas necessidades, como desenvolvedores, por ela não ter todos os requisitos de sistema operacional da Enterprise Edition. Insira o CD da edição Microsoft SQL Server 2008 da sua escolha no seu drive de CD-ROM e inicie a instalação. O que o próximo texto aborda é uma instalação padrão.

 

Iniciando a Instalação

Certifique-se de que está conectado em sua máquina com direitos administrativos. Os direitos administrativos permitirão que sejam criados os arquivos e pastas em sua máquina, o que é obviamente necessário para o sucesso da instalação.

Se quando você colocar o CD em seu computador o processo de instalação não começar automaticamente, abra o Windows Explorer e clique duas vezes sobre autorun.exe, encontrado na raiz do CD-ROM.

Você agora está vendo a tela de instalação da Microsoft.NET 3.5 Framework, se ela já não estiver instalada. .NET é uma framework que a Microsoft criou que permite que programas escritos em VB .NET, C# e outras linguagens de programação tenham um conjunto comum compilado para computadores. SQL Server 2008 usa .NET para alguns dos seus próprios trabalhos internos, mas também, como um desenvolvedor, você pode escrever código .NET em qualquer linguagem .NET da Microsoft e incluir isso dentro do SQL Server. Com SQL Server 2008 há também a habilidade de consultar o banco de dados usando .NET e LINQ ao invés de T-SQL.

Observação A inclusão de código .NET é um tópico avançado e além do escopo deste livro. Para obter mais informações, tente o livro Pro SQL Server 2005 Assemblies (Apress, 2005).

 

Depois de instalado você verá o SQL Server Installation Center, lida com o planejamento de uma instalação, processos de configuração, novas instalações, atualizações de versões anteriores do SQL Server e muitas outras opções para manter as instalações SQL Server.

Ao clicar no item Installation à esquerda do Installation Center, você pode então selecionar do primeiro item da lista de opções de Installation, instalação independente do Nove SQL Server ou adicionar características a uma instalação existente, e a instalação do SQL Server 2008 é iniciada.

Uma rápida checagem do sistema é realizada antes de você inserir a chave do seu produto e aceitar os termos da licença do SQL Server. Há vários arquivos de suporte que o SQL Server usa como parte do processo de instalação, também para garantir que ocorra uma instalação limpa e válida, você verá que não há nenhuma advertência no processo, mas ainda é possível prosseguir. Sendo que nenhum erro é listado no seu processo, clique em Next.

 

Escolha dos Componentes para Instalação

Agora chegamos à tela Feature Selection, onde temos que tomar algumas decisões, esta instalação terá tudo instalado, porque esta será sua instância de desenvolvimento, no qual você irá testar todos os aspectos do SQL Server distantes de qualquer desenvolvimento de projetos que estejam acontecendo. Isso será então mais como um ambiente de teste. Porém, você pode ser seletivo no que se refere a quais partes dos componentes você quer instalar. Para este livro, você precisará de Database Engine Services, Reporting Services, Client Tools e Business Intelligence Development Studio para criar relatórios, então certifique-se que pelos menos três destes estejam selecionados.

Vamos dar uma rápida olhada nestes componentes:

· Database Engine Services: Este é o núcleo principal do SQL Server 2008 e instala a ferramenta principal, arquivos de dados, etc., para executar o SQL Server.

· SQL Server Replication: Quando você quer enviar alterações de dados não somente no banco de dados que estão sendo executados, mas também em um banco de dados similar que foi construído para duplicar estas alterações, então você pode usar esta opção para replicar as mudanças neste banco de dados.

· Full text search: Esta opção permite que você busque o texto dentro do seu banco de dados.

· Client Tools: Algumas destas ferramentas estão na máquina do cliente e fornecem a interface gráfica ao SQL Server, enquanto outros residem no cliente e trabalham com o SQL Server. Esta é a opção que você usará para solicitar aos desenvolvedores que fiquem nas suas máquinas.

· Microsoft Sync Framework: Ao trabalhar com aplicações offline como aquelas em dispositivos móveis, deve haver algum tipo de mecanismo de sincronização. Esta opção permite que estes tipos de interações aconteçam.

· SQL Server Books online: Este é o sistema de ajuda. Se você precisar de mais informações, esclarecimento ou detalhes extras sobre qualquer área do SQL Server, então esta é a área para recorrer.

· Business Intelligence Development Studio: Quando você quiser analisar dados usando serviços baseados em análise, então você pode usar esta GUI para interagir com seu banco de dados. Este livro não aborda esta opção.

· Integration Services: Esta opção final permite que você construa processos para completar ações, como importar dados de outras fontes de dados e manipular os dados. Você verá Integration Services em ação no Capítulo 7 quando analisarmos a construção de um plano de manutenção de backup.

Destes componentes, Analysis Services e Business Intelligence Development Studio estão fora do objetivo deste livro, e apenas abordamos Integration Services como mencionado.

Observação Neste ponto, SQL Server não tem mais a opção de instalar os exemplos de bancos de dados. Microsoft também está alterando a maneira que exemplos de bancos de dados e amostras são liberadas, então você pode encontrar versões mais novas no site do SQL Server, http://www.microsoft.com/sql, ou em http://www.codeplex.com/SqlServerSamples.

Nomeie a instância

Como você sabe, o SQL Server é instalado em um computador. É possível instalar o SQL Server mais de uma vez em um computador. Isso poderia acontecer quando você tem um servidor poderoso e com recursos suficientes, como memória, processador etc. para agüentar duas ou três aplicações diferentes em execução. Essas aplicações diferentes querem ter seu próprio SQL Server. Cada instalação é chamada de instância. Estamos agora no estágio em que podemos nomear a instância da instalação. Cada instância deve ter um nome exclusivo, embora “sem nome” – conhecido como Instância Padrão – também seja classificado como um nome exclusivo.

Nomear instâncias é importante como o primeiro passo para a organização dos seus ambientes. Por exemplo, você pode ter uma instância para desenvolvimento, outra para teste de sistema, e finalmente uma para teste de usuários. É uma prática ruim compartilhar hardware do servidor de produção com qualquer outra coisa que não seja bancos de dados de produção. Se você não faz isso, e se ocorre uma ação de desenvolvimento pobre e trava o servidor, você vai impedir a produção de rodar. Embora você tenha que tomar esta decisão no início do processo de instalação pelo qual está passando agora, este segundo lembrete é útil ao nomear a instância.

A instância padrão está disponível, que é o que está selecionado quando você não dá à instalação um nome específico; quando você instala o SQL Server fora de um ambiente de teste, você deve evitar isso, já que lhe dará uma instalação sem nome e portanto sem dicas sobre a sua utilização. Como você ainda está aprendendo, a opção mais fácil para entender é o uso da instância padrão, então selecione Default Instance e então clique em Next. Uma vez instaladas as instâncias no servidor, elas serão listadas aqui. Você também pode ver o caminho detalhado para cada diretório dos três serviços selecionados no passo anterior.

 

Escolhendo Contas de serviço

O SQL Server e outros serviços, como definido na tela Feature Selection, requerem que você efetue logon no Windows antes de sua inicialização, assim como você precisa efetuar o login no Windows antes de usar o sistema. O SQL Server, Reporting Services etc. podem ser executados sem você ou qualquer um conectado ao computador em que foram instalados. Eles podem ser executados desde que o computador tenha sido inicializado com sucesso. Isso é normal quando um SQL Server é instalado em um servidor mantido em um local remoto, como uma sala de servidores.

Olharemos estas opções mais detalhadamente no final do capítulo. As opções ira instalar o SQL Server com um baixo nível de conjunto de privilégios.

Você sempre pode alterá-las, através do ícone Services, dentro do Control Panel. Porém, seria muito mais fácil usar o Configuration Manager do SQL Server, encontrado em Configuration Tools. Usando o Configuration Manager, a conta será adicionada ao grupo correto e receberá as permissões certas. Clique em Next.

Se você observar o Browser do SQL Server, que é um outro nome para SQL Server Management Studio, ele é desativado por padrão. Muitas instalações SQL Server estarão nos servidores, muito freqüentemente em servidores remotos; assim, não há necessidade de ter o SQL Server Browser rodando. Normalmente, você terá que se conectar ao SQL Server a partir da máquina de um cliente. Porém, eu suponho que esta instalação não está em um servidor e sim em um computador local, então altere esta opção para iniciar automaticamente.

Selecionando um Modo de Autenticação

Agora veremos como queremos reforçar a segurança na instalação do nosso SQL Server, há duas escolhas: o modo de autenticação Windows e modo misto. Você aprenderá mais sobre os modos mais adiante no capitulo, mas de maneira muito simplificada, o modo de autenticação Windows significa que você usará a segurança do Windows para manter os logins do seu SQL Server, enquanto que o modo misto usa a segurança do Windows ou um ID de login e senha definidos pelo SQL Server. Nós também precisamos definir uma senha para um ID de login especial, chamado sa, se você estiver trabalhando com modo misto. Novamente, você aprenderá mais sobre isso em instantes, mas por ora você deve inserir uma senha válida. Use uma senha significativa e impossível de adivinhar, mas não uma que você irá esquecer.

Também é necessário definir uma conta SQL Server Administrator. Esta é uma conta especial que você pode usar para logar em situações de emergência, como quando o SQL Server recusa conexões. Esta conta especial permite que você faça login, resolva a situação e faça o SQL Server rodar novamente. Normalmente, esta conta Administrator será o ID de conta de um servidor, mas por enquanto, use a conta que você utilizou para logar no seu computador.

Você também verá uma tela similar para Analysis Services e as configurações são as mesmas.

 

Definindo os Diretórios de Dados

A aba Data Directories, é onde você define onde o SQL Server armazena seus dados, diretórios de backup e banco de dados temporário por padrão. Para cada instância você define onde as pastas relevantes devem ficar. Como mencionado anteriormente, você pode ter diversas instalações em um servidor físico e não é incomum que um servidor físico contenha mais de uma instalação de produção do SQL Server. Por exemplo, pode haver uma instalação para contas, outra para controle de produto e assim por diante. Cada instância teria seus dados mantidos em um diferente diretório de dados. Isso inclui qualquer banco de dados temporário que seja criado e qualquer arquivo de log que é gerado, então embora o servidor físico seja compartilhado, a instalação é isolada. Como estamos lidando apenas com uma instância dentro deste livro, deixe as configurações como estão.

A aba FILESTREAM é outro tipo de diretório de dados, mas ignore-a por enquanto. Nós discutiremos sobre isso mais adiante no livro. Porém, para te dar uma pequena percepção, FILESTREAM é usada ao lidar com grandes quantidades de dados desestruturados. No passado, estes dados eram mantidos totalmente separados do SQL Server, mas agora FILESTREAM permite que os dados sejam gerenciados pelo SQL Server e esta aba informa ao SQL Server onde eles residem dentro do servidor físico.

Você verá estas mesmas abas no próximo passo se você selecionou Analysis Services.

Criando o Banco de Dados do Reporting Services

Como selecionamos a instalação do Reporting Services precisamos criar um banco de dados para o servidor de relatório usar. Há três opções diferentes de instalações possíveis para Reporting Services: Native, SharePoint e instalado mas não configurado. Se você selecionar a última opção, o SQL Server Reporting Services será instalado no servidor mas não será configurado. Isso é ideal se você estiver configurando um servidor específico somente para as opções de relatório. Depois de instalado, você terá então que criar um banco de dados de relatórios.

A configuração de modo Native, é a mais simples e aquela que iremos usar. Ela instala o Reporting Services e também cria os bancos de dados necessários dentro do nosso SQL Server. Ela somente estará disponível se você estiver instalando em uma instância local ao invés de uma instância remota e se o Reporting Services também estiver nesta instância local. Valores padrões são usados para a conta de serviço, a URL do servidor de relatório na instância local – que será o localhost – a URL do gerenciador de relatório e o nome do banco de dados de Reporting Services.

Se você tiver uma instalação SharePoint e quiser que o Reporting Services use esta arquitetura, então selecione esta opção, que permite que você use a funcionalidade de SharePoint. Isso está fora do objetivo deste livro.

 

Configurações de Relatório de Uso e Erro

É recomendável que você mantenha habilitadas as configurações de erro.

Enviar os erros para a Microsoft provavelmente vai produzir consertos mais rápidos e releases melhores no futuro. Também é possível que o SQL Server anote informações de como você está usando o SQL Server. Esta também é uma configuração útil de se ter ativada, para que a Microsoft possa receber informações que podem ajudá-la a melhorar o produto. No entanto, seria útil ter isso ativado em um ambiente de produção mais relevante.

Quando você clicar em Next, você verá uma tela detalhando as regras de instalação. Não há nada a fazer, apenas clique em Next, na qual a tela final é exibida. A configuração está completa, e você está pronto para instalar.

 

Segurança

Para discutir apropriadamente a caixa de diálogo Services Accounts, precisamos investigar a segurança do Windows.

Nesta seção, primeiro discutiremos o conceito de serviços do Windows em oposição aos programas e discutiremos os diferentes tipos de autenticação que podemos escolher na instalação do SQL Server.

 

Contas de serviços

O SQL Server é executado como um Serviço do Windows. Mas o que é um serviço? Um bom exemplo de serviço é qualquer software de anti-vírus que seja executado continuamente a partir da reinicialização da máquina até o ponto em que o computador é desligado. Um programa, por outro lado, pode ser executado ou não. Pode ser carregado na memória e executado ou nem ser iniciado. Assim, qual é a vantagem de executar um serviço? Quando você possui uma unidade de trabalho que possa ser executada como um serviço, o Windows pode controlar muito mais coisas sobre esse processo. Um serviço pode ser definido para iniciar automaticamente antes de que qualquer usuário efetue o login; todos os outros programas exigem que o usuário esteja conectado no Windows para que eles sejam iniciados.

Um serviço não possui interface com o usuário. Não haverá formulário a ser exibido, nem entrada de usuário para se lidar em tempo de execução. A única interação com o processo é executada em uma interface com o usuário separada, que então vincula com o serviço, mas é uma unidade de trabalho totalmente separada (por exemplo, o SQL Server Management Studio), ou a partir do gerenciamento do próprio serviço feito pelo Windows. Qualquer saída obtida do serviço deve ir para o Log de Eventos, que é uma área do Windows que armazena qualquer notificação vinda dos serviços executados pelo sistema operacional.

 

Não ter interface significa que todo o processo pode ser controlado sem a intervenção humana. Estando o serviço bem projetado, o Windows pode cuidar de cada eventualidade por conta própria e também pode executá-lo antes de qualquer pessoa efetuar login no computador.

Na maioria dos ambientes de produção, o SQL Server será executado em um servidor remoto, provavelmente trancado em uma área segura e controlada, possivelmente onde apenas os engenheiros de hardware poderão entrar. Provavelmente não há nenhum programa de acesso remoto instalado nessa máquina, uma vez que isso poderia conceder acesso não-autorizado a esses computadores. O SQL Server será executado facilmente e se espera que nunca ocorra um erro. Mas o que acontece se um dia houver um erro? Se ele tivesse sido escrito como um programa, alguma decisão deveria ser tomada. Mesmo se o SQL Server travar, deve haver pelo menos algum tipo de mecanismo para reiniciá-lo. Isso significa que outro processo precisa ser executado, um processo de monitoramento, que ele próprio poderia dar um monte de problemas. Entretanto, sendo um serviço, o SQL Server está sob o controle do Windows. Se houver um problema, seja com o SQL Server, com o Windows ou com qualquer influência externa, o Windows é esperto o suficiente para lidar com ele através do processo de serviços.

Se você se logar no computador, como provavelmente você vai enquanto trabalha ao longo deste livro, como o SQL Server estará rodando em casa ou em um sistema local, então você pode usar este ID de usuário Windows para SQL Server também para se logar e iniciar seu serviço. Isso é conhecido como uma conta de sistema local.

Por outro lado, você pode criar um login Windows que exista puramente para o SQL Server. Este pode existir por diversas razões. Por exemplo, sua conta Windows deve ser configurada para que a senha expire depois de tantos dias após ser configurada, ou para que bloqueie depois de um número de tentativas de senhas incorretas. Isso é para proteger seu computador e a rede, entre muitas outras coisas. Porém, SQL Server deve usar uma conta separada que também possua uma senha expirada e a habilidade de bloquear a conta depois de um número de tentativas. Este tipo de conta “genérica”, não específica a um usuário, remove o link entre o SQL Server e uma pessoa dentro de uma organização. Se você estiver olhando para a opção de conta de domínio exibida anteriormente é provável que esta conta esteja em um ambiente de rede ou em um ambiente de produção. Não há uma opção para definir uma conta diferente para cada serviço. Esta é uma opção muito importante ao mover para um ambiente corporativo devido às implicações de segurança com as quais você deve lidar.

SQL Server possui diversos processos diferentes que existem para trabalhos diferentes. SQL Server é usado para rodar o próprio SQL Server e o SQL Server Agent executa processos como trabalhos em lote. SQL Server deve somente precisar acessar a si próprio. Assim, deve somente exigir um login de domínio com privilégios muito restritos.

SQL Server Agent, que executa processos em lote e tarefas complexas, incluindo trabalhar com outros servidores, precisa de uma conta de domínio mais poderosa. Seu administrador de rede deve ter criado estas contas e saberá qual conta é melhor para usar ou melhor para criar estas tarefas.

É hora de prosseguirmos até as opções de modo de autenticação oferecidas durante a instalação.

 

Procurando o modo de autenticação

Provavelmente as informações mais cruciais em todo o processo de configuração, e também a maior decisão que deve ser feita, acontecem na tela Authentication Mode.

Como você pode ver, há duas opções: Windows Authentication Mode e Mixed Mode.

 

Modo de autenticação do Windows

Para efetuar logon em uma máquina com Windows 2000/2003/XP, deve-se fornecer um nome de usuário. Não há maneira de evitar isso (ao contrário do Windows 9x/ME, onde o nome de usuário é opcional). Assim, para efetuar logon no Windows, o nome de usuário e a senha devem ser validados no Windows antes de o usuário efetuar o login com sucesso. Quando isso acontece, o Windows na verdade está verificando o usuário pelas credenciais de nome de usuário mantidas no controlador de domínio ou, se você estiver executando o SQL Server em uma máquina independente em casa, as credenciais são armazenadas localmente.

Essas credenciais verificam o grupo de acesso a que pertence o usuário (seus direitos de usuário). O usuário pode ser um administrador, que tem a capacidade de alterar qualquer coisa no computador, até um usuário básico com direitos muito restritos.

Depois de logar no Windows, o SQL Server usa uma conexão confiável para trabalhar com o modo de Autenticação do Windows. Isso significa que o SQL Server está confiando que o nome de usuário e senha foram validados como acabamos de mencionar. Se, porém, o nome de usuário não existir, então baseado somente no ID do usuário, você não será capaz de logar nesta máquina. Se o login não for válido, o SQL Server irá checar o grupo Windows ao qual o usuário pertence e verificar sua segurança para ver se este grupo é configurado para acessar o SQL Server. Se este usuário tiver direitos administrativos ao seu computador, então o usuário pode muito bem ser capaz de pelo menos se conectar ao SQL Server.

Outra pessoa também pode logar-se na sua máquina com o ID e senha dela, desde que tenha permissão para isso. Embora ela seja capaz de entrar no SQL Server encontrando a executável no drive C, primeiro o SQL Server irá verificar se aquele usuário possui um login válido dentro do SQL Server.

Estamos no meio de uma situação complicada aqui. Você precisa conhecer a segurança para o seu processo de instalação, mas demonstrá-la totalmente significa trabalhar com o SQL Server Management Studio, que será explicado no próximo capítulo. Vamos simplificar esta área, portanto vamos dar uma olhada em um exemplo que envolva segurança.

Experimente – Modo de Autenticação do Windows

1. No Windows Vista você pode precisar alterar o acesso de controle do seu usuário para evitar muitas caixas de diálogo confirmando se você deseja continuar a cada passo.

2. Em Start | Control Panel, selecione Users and Passwords.

3. Quando a caixa de diálogo Users and Passwords for exibida, clique em Create a New Account no XP ou Manage Another Account no Vista, seguido por Create New Account.

4. Quando a caixa de diálogo Name the Account and Choose an Account Type aparece, insira o nome de usuário JThakur.

5. Certifique-se de que o tipo de conta especificado seja Limited no XP ou Standard no Vista. Isso significa que ela não terá privilégios de administrador. Depois de pronto, clique em Create Account. Criação de uma nova conta de usuário.

6. Permaneça na caixa de diálogo Users and Passwords para adicionar um segundo nome de usuário. Repita o processo acima usando os seguintes detalhes:

Nome de usuário: VMcGlynn

Tipo de conta: (Computer) Administrator

7. Efetue logoff do Windows e então logon usando o primeiro ID que você criou: JThakur.

8. Depois do login, inicie o SQL Server Management Studio selecionando Start / All Programs / Microsoft SQL Server 2008 / SQL Server Management Studio. Você precisará popularizar o diálogo com o nome do servidor de instalação. Clique em Browse For More, então selecione Database Engine e selecione a instalação.

9. Examine a mensagem de erro exibida, que deve ser parecida com a mensagem vista. JThakur como login não foi definido no SQL Server especificamente e não pertence a um grupo que permita o acesso. O único grupo no momento é um usuário que está no grupo Administrators do Windows. Lembre-se de que JThakur é um usuário Limited.

10. Agora tentaremos o outro usuário que criamos. Feche o SQL Server, faça logoff do Windows, e faça logon usando o segundo ID que criamos-VMcGlynn. Depois de logado, inicie o SQL Server Management Studio e se conecte ao seu servidor. Desta vez o login vai funcionar.

Criamos dois nomes de usuário: um com acesso restrito (JThakur) e outro (VMcGlynn) com direitos administrativos. No entanto, nenhum desses nomes de usuários específicos existe no SQL Server: afinal, não os digitamos e nem eles apareceram como por mágica. Então por que um teve sucesso e o outro falhou?

O modelo de segurança do Windows garantiu que ambos os IDs eram válidos. Se o ID ou a senha estivessem incorretos, eles não poderiam ter efetuado login no Windows. Assim, quando você tentou iniciar o SQL Server, a única verificação feita é se o usuário tem acesso ao SQL Server caso pertença a um grupo do sistema operacional ou através de uma conta específica de usuário conectado. Como pudemos ver na

 

No entanto, poderemos ver que há um Grupo do Windows chamado BUILTIN\Administrators. Isso significa que qualquer nome de usuário configurado como parte de um grupo Administrator poderá efetuar logon no SQL Server. Conseqüentemente, evite, se possível, configurar os usuários como Administradores em seus próprios PCs.

Em um ambiente de produção, pode ser aconselhável remover esse grupo do sistema se você não permite que os usuários sejam Administradores. Como VMcGlynn é um membro do grupo Administrators, então esse nome de usuário também será membro do grupo BUILTIN\Administrators.

 

Modo misto

Se instalamos o SQL Server com Mixed Mode, isso significa que podemos usar a autenticação do Windows, como acabamos de explicar, ou a autenticação do SQL Server.

Qual a diferença entre o modo misto e o modo de autenticação do Windows? Para começar, você precisa fornecer um ID de usuário e senha para se conectar, ao invés do SQL Server pegar o ID do Windows ou o grupo ao qual o usuário pertence, da conta em que efetuou o login. Não há suposição de que o nome de usuário fornecido seja um ID válido. Usar o modo misto também é apropriado em muitos casos ao trabalhar com ISPs. Para esclarecer isso, se você estiver trabalhando em seus dados remotos em uma máquina de cliente local, a máquina remota vai precisar saber as credenciais do seu login, e o método mais fácil é usar a autenticação do SQL Server. Porém, não se confunda aqui. Se você quiser trabalhar com seus dados no seu ISP, o ISP pode oferecer algum tipo de ferramenta ou você pode usar o SQL Server Management Studio para se conectar aos seus dados. Você deverá então ser capaz de fazer o que quiser. O código do site, se escrito em ASP.NET, irá usar uma conta Windows para fazer login, então apesar de você poder bloquear sua conta de modo misto SQL Server, isso não impedirá seu site de funcionar.

Vamos abordar a criação de nomes de usuários no SQL Server (em oposição à adição de usuários do Windows).

Há uma área de segurança que ainda precisa ser discutida. É o login sa.

 

O login sa

O login sa é o login padrão que possui direitos administrativos completos no SQL Server. Vimos durante o processo de instalação que seríamos forçados a incluir uma senha para essa conta se estivéssemos instalando com a Autenticação do SQL Server habilitada porque ela é um login muito poderoso que existe em todas as instalações do SQL Server. Se você estiver conectado no SQL Server como sa, terá controle total de todos os aspectos do SQL Server. O SQL Server insere esse ID, seja qual for o modo de autenticação instalado por você. Se você tiver uma conta do Windows definida como sa, por exemplo, para Steve Austin, então esse usuário será capaz de efetuar login no servidor caso você tenha definido o servidor como modo de Autenticação do Windows sem qualquer outra intervenção da parte dele. Tente evitar IDs de login sa.

Na instalação do Modo Misto, o sa será um nome de usuário válido e será validado como tal. Como você pode imaginar, se qualquer usuário obtiver esse nome de usuário e senha, terá acesso completo para ver, adicionar ou excluir quaisquer dados. No pior caso, eles poderiam corromper qualquer banco de dados, assim como o próprio SQL Server. Poderiam até mesmo definir tarefas para enviar e-mails com dados para um local remoto à medida que fossem processados.

É essencial configurar uma senha forte para a conta sa na tela do modo de Autenticação se você escolher o Modo Misto. Um dos maiores aperfeiçoamentos do SQL Server 2005 é que agora você é forçado a digitar uma senha, embora seja possível configurar uma senha fácil. Não utilize senhas como senha ou senhaadmin, por exemplo. Sempre mantenha a senha segura, mas anote-a também em um local seguro. Se você esquecer a senha de sa e esse for o único ID de administração existente, você precisará reinstalar o SQL Server para resolver o problema. Uma boa senha é aquela que mistura números e letras, mas nem sempre inclui letras que podem ser transformadas em números e números em letras em todos os casos. Por exemplo, pa55word é tão fácil de adivinhar quando password. Ou 4pr355 em lugar de Apress.

Há também outro motivo pelo qual não se deve efetuar logon no SQL Server com o nome de usuário sa. Haverá ocasiões quando será essencial que você saiba quem está executando uma consulta em particular em um banco de dados do SQL Server. Em um banco de dados de produção, alguém pode executar uma atualização de dados, o que ocupará espaço em disco ou encherá o log de transações. Precisamos entrar em contato com essa pessoa para verificar se ela pode interromper esse processo. Se ela estiver conectada como sa, não teremos a menor idéia de quem ela seja. Entretanto, se ela estiver conectada com um nome identificável, terá um ID no SQL Server que poderemos rastrear. Ao restringirmos o login sa para que as pessoas tenham de usar suas próprias contas, podemos garantir um grau muito mais alto de monitoramento e integridade do sistema.

Assim, há muitas ocasiões em que queremos o Modo Misto; é perfeitamente aceitável. Os provedores de Internet utilizam o modo misto, já que muitas aplicações podem estar em apenas um servidor web. Se esse ISP for um revendedor (em outras palavras, muitas pessoas no mundo utilizam um computador), você não vai querer que essas pessoas consigam ver os seus dados. Também decidimos não ter sa como um logon de administração depois de lermos as seções até aqui. Então o que devemos fazer? Bem, criamos um ID de logon que terá os mesmos privilégios que desejamos; em outras palavras, a capacidade de ver os dados e trabalhar com os dados de que precisamos e nada mais. O ISP pode requisitar um ID de usuário e senha que usará para criar uma conta sem sua instância do SQL Server.

 

Resumo

Neste ponto, você já deve entender as pequenas diferenças entre cada versão do SQL Server. Você também já deve saber como verificar o seu computador para ver se ele é apropriado para uma instalação do SQL Server.

Ao seguir esses passos, você deve ter sucesso em uma instalação do SQL Server em seu computador. Talvez você já tenha até completado a instalação duas vezes, para ter um servidor de desenvolvimento assim como um servidor de teste. Essa é uma boa idéia e algo a ser considerado se você só tiver feito uma instalação até aqui. Esteja você trabalhando em uma grande empresa ou em uma “banda de um homem só”, manter seu código de produção e o de desenvolvimento separados reduzirá muito as complicações se, durante o desenvolvimento, você precisar fazer uma correção em produção.

A segurança foi apresentada para que possamos nos sentir confortáveis sabendo de que maneira queremos implementá-la e como lidar com os nomes de usuários diferentes. Podemos não ter nenhum dado ainda, mas queremos garantir que, quando tivermos, apenas as pessoas certas os verão!

Você agora está pronto para explorar o SQL Server 2008. Uma das melhores maneiras de gerenciar o SQL Server é usando o SQL Server Management Studio, que será discutido a seguir.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s