Quando você instala o SQL Express, os protocolos de rede são desabilitados por padrão, isto faz com que ele não aceite conexões vindas de outras estações de uma rede. Sendo assim, descrevo também como configurar o SQL Express para permitir a
comunicação entre ele e suas aplicações.O SQL Server 2005 Express Edition (SQL Server Express) - sucessor do MSDE, é baseado nas tecnologias do SQL Server 2005 e suporta muita das características de banco de dados deste e versões anteriores do SQL Server.

Instalação Side-by-Side com o SQL Server 2000

Se você pretende instalar o SQL Express em um computador que já tenha o SQL Server 2000 ou MSDE instalado, garanta que o SQL Server 2000 ou MSDE esteja atualizado com o SP3 ou superior. Versões anteriores ao SP3 não compartilham apropriadamente a porta UDP 1434 e pode fazer com que sua instância do SQL Express não esteja disponível para as aplicações clientes. Embora você possa alterar a ordem de inicialização dos serviços para que o serviço SQL Browse inicie antes do SQL Server 2000 ou MSDE, o recomendado é que você atualize todas as versões do SQL Server 2000 ou MSDE para o SP3 ou superior. Para fazer download do Service Pack mais recente, veja Microsoft SQL Server Web site.

O Serviço SQL Browser

O serviço SQL Browser (sqlbrowser) permite que aplicações clientes se conectem a uma instância do SQL Server 2005 ou SQL Server 2005 Express sem conhecer a porta TCP/IP atribuída para a instância. Nota: Por razões de segurança, o SQL Express não inicia automaticamente o serviço SQL Browser durante a instalação.

Como o Serviço SQL Browser trabalha


Quando uma instância do SQL Express é iniciada, ela é atribuída a um número de porta TCP/IP. Esta porta será usada pela instância para se comunicar ou trocar dados com as aplicações clientes. Devido este número de porta ser geralmente desconhecido para as aplicações, o serviço SQL Browser atua como um tradutor, traduzindo o nome de instância passado pela aplicação, para o número de porta TCP/IP apropriada. Para fazer isso, o serviço SQL Browser fica escutando por requisições de rede nas portas TCP/IP 1433 e 1434. Por default, o serviço SQL Browser está desativado. Se você esta acessando um cópia local do SQL Express, você não necessitará iniciar este serviço. Entretanto, se você precisa que sua aplicação acesse o SQL Express através da rede, você deverá primeiro habilitar um dos protocolos de rede e então iniciar o serviço SQL Browse. Posteriormente veremos como configurar o SQL Express para trabalhar em uma rede.

Desinstalando um Relase Anterior do SQL Express e Visual Studio 2005

Caso você pretenda instalar a versão final do SQL Express na mesma máquina onde já tenha instalado um release Beta ou CTP do SQL Server Express ou Visual Studio 2005, você deverá remover os releases anteriores do SQL Express, Visual Studio 2005 e .NET Framework 2.0 antes da instalação. Como estes produtos dependem da mesma versão do .NET Framework, eles devem ser desinstalados na seguinte ordem:
  SQL Server 2005 Express
  Visual Studio 2005
  .NET Framework 2.0

Instalando o SQL Server Express

1) Para iniciar o processo de instalação do SQL Express, efetue duplo-clique sobre o arquivo SQLEXPR.EXE
Nota: Se preferir, é possível extrair os arquivos de instalação para um diretório temporário utilizando a sintaxe SQLEXPR.EXE /X via linha de comando.
2) Na janela End User License Agreement, leia a licença de uso e selecione o check box accept the licensing terms and conditions. Clique em Next para prosseguir.
3) O SQL Server Component Update é executado e instala os requisitos necessários para a instalação do SQL Express, como o Microsoft SQL Native Client e Microsoft SQL Server 2005 Setup Support Files.
4) Na janela Welcome to the Microsoft SQL Server Installation Wizard clique em Next para prosseguir.
5) No próximo passo o SQL Express apresenta a janela System Configuration Check (SCC).
Da mesma forma como no SQL Server 2005, o SQL Express faz uma verificação em busca de possíveis problemas (requisitos mínimos de hardware e software) que possam impedir a instalação do SQL Express. Caso algum problema seja encontrado, você terá a opção de visualizar o relatório sobre o problema encontrado e possível solução.
 dmw1
6) Na janela Registration Information entre com as informações solicitadas e clique em Next.
Algumas observações importantes devem ser feitas aqui:
a) Devido ao SQL Express ser um produto gratuito, não existe solicitação para o Product Key.
b) Se você selecionar a opção Hide advanced configuration options, a janela Service
Account - a qual permite definir qual conta de usuário será usada para iniciar os serviços do SQL Express, e a janela Collation Settings - o qual permite informar qual Collation e Code Page o SQL Express deverá utilizar, não serão apresentadas. Neste caso o SQL Server Express será instalado com sua configuração padrão.
dmw2
7) Na janela Feature selection, selecione os componentes que deseja instalar e clique em Next para prosseguir
 dmw3
8) A janela Instance Name (não será apresentada se você selecionar a opção Hide advanced configuration options), permite que você selecione uma Default Instance ou Named Instance para sua instalação. Uma instância pode ser Default Instance (não nomeada) ou Named Instance (nomeada). Quando o SQL Server 2005 é instalado como Default Instance, ele não requer que o cliente especifique o nome da instância para fazer a conexão. O cliente necessita conhecer apenas o nome do servidor SQL ao qual deseja se conectar.
Uma Named Instance é identificada pelo nome do servidor mais o nome da instância que você especificou durante a instalação. O cliente necessita conhecer o nome do servidor e o nome da instância para se conectar.
Por default, o SQL Server é instalado como Default Instance (não nomeada) a menos que você especifique um nome de instância durante a instalação. Ao contrário do SQL Server, o SQL Server Express é por default instalado como Named Instance, tendo como nome padrão para a instância o nome “SQLExpress”. Se você não informar um nome para a instância durante a instalação ou não desmarcar a opção Hide Advanced configuration options, o nome padrão será usado. Neste caso, você deverá acessar o SQL Express como computername/SQLExpress (a barra utilizada aqui deve ser a mesma utilizada na separação de diretórios).
Você também pode instalar o SQL Express como Default Instance (não nomeada), se nenhuma outra versão do SQL Server já estiver instalada no servidor como Default Instance. Para fazer isso, instale o SQL Express como Named Instance usando como nome para a instância o nome MSSQLSERVER.
 dmw4
Nota: Para que o SQL Express permita informar um nome diferente para a instância, desmarque a opção Hide Advanced configuration options na janela Registration Information no início da instalação.
9) A janela Service Account (não será apresentada se você selecionar a opção Hide advanced configuration options), permite que se atribua a conta local system (local system account) ou uma conta de usuário de domínio (domain user account) para iniciar os serviços SQL Server Express.
Por default o SQL Server Express é instalado tendo a conta de sistema Network Service como conta para a inicialização dos serviços. Entretanto, a recomendação é que se use uma conta de domínio ou então se crie uma conta local específica para a inicialização dos serviços.
 dmw5
10) Na janela Authentication Mode especifique o modo de segurança que deverá ser utilizado para se conectar ao SQL Express e clique em Next.
11) Na janela Collations Settings selecione o Collation e o sort order desejado e clique em Next para continuar.
 dmw6
Nota: Por padrão o SQL Express é instalado como case-insensitive, accent-sensitive. Ou seja, não faz restrição a maiúsculas e minúsculas, mas faz restrição a acentuação. Com isso, durante uma pesquisa, "João" e "joão" são a mesma coisa mas "João" e "Joao" ou "joão" e "joao" NÃO são. Para evitar futuros problemas com acentuação ou caracteres maiúsculos e minúsculos, recomendo que você selecione o Collate conforme tela acima. A não ser é claro, que você precise manter a compatibilidde de collate com outos servidores. Neste caso, selecione seu collate conforme o collate das versões anteriores.
12) Na janela Error Reporting, selecione se você deseja reportar erros para o SQL Express e seus componentes à Microsoft. Esta opção é habilitada por padrão.
13) Na janela Ready to Install , clique em Install para iniciar o processo de instalação do SQL Express.
Assim como no SQL Server 2005, a janela Setup Progress permite acompanhar o processo de instalação de cada componente.
 dmw8

Instalando o SQL Server Express via linha de comando
Para aqueles que estão acostumados a instalar o MSDE 2000 via linha de comando, verão que instalar o SQL Server Express via linha de comando é tão simples quanto instalar o MSDE.
Inclusive, a sintaxe e os parâmetros de instalação são bem semelhantes.
Antes de iniciar o processo de instalação do SQL Express via linha de comando, é preciso extrair os arquivos de instalação para um caminho temporário. Para extrair os arquivos de instalação, execute o pacote do SQL Express com a opção /X e informe o caminho onde os aquivos deverão ser extraídos.
Exemplo: C:\SQLEXPR.EXE /X
Depois de extraído os arquivos, a instalação do SQL Express via linha de comando pode ser realizada de duas formas bastante simples:
1. Chamando o setup.exe e especificando os parâmetros desejados na própria linha de
comando.
Exemplo:
start /wait <caminhotemporario>\setup.exe /qb ADDLOCAL=ALL
INSTANCENAME=SQLEXPRESS SECURITYMODE=SQL SAPWD=pass
SQLCOLLATION="SQL_Latin1_General_CP1_CI_AI" SQLAUTOSTART=1
DISABLENETWORKPROTOCOLS=0
2. Criando um arquivo de configuração e especificando o mesmo na linha de comando. Caso você não queira executar o setup especificando os parâmetros, uma alternativa é executá-lo informando um arquivo .ini, o qual deverá conter todos os parâmetros a serem utilizados durante a instalação.
O arquivo .ini é um arquivo texto que pode ser criado usando o NotePad e deve ser salvo com a extensão .ini. A primeira linha do arquivo deve ser Options, depois se devem especificar os parâmetros sendo um em cada linha. Depois de criado o arquivo .ini, execute o setup usando a opção /settings para informar o arquivo .ini O exemplo abaixo utiliza o arquivo setup.ini para executar o setup.exe e informar os parâmetros desejados.
Exemplo:
start /wait <caminhotemporario>setup.exe /qb SAPWD=pass /settings
<caminhotemporario>\setup.ini
-- conteúdo do arquivo setup.ini
Options
ADDLOCAL=ALL
INSTANCENAME=SQLEXPRESS
SECURITYMODE=SQL
SQLCOLLATION="SQL_Latin1_General_CP1_CI_AI"
SQLAUTOSTART=1
DISABLENETWORKPROTOCOLS=0
Nos exemplos acima, o parâmetro ADDLOCAL=ALL informa ao setup do SQL Express que devem ser instalados todos os seus componentes. INSTANCENAME indica o nome da instância, SECURITYMODE indica que o modo de autenticação a ser utilizado é o SQL Authentication, SQLCOLLATION informa o collation default a ser utilizado pelo SQL Express, SQLAUTOSTART informa ao setup para configurar o serviço do SQL Express para inicialização automática, SAPWD informa a senha para o usuário sa e o parâmetro DISABLENETWORKPROTOCOLS indica quais os protocolos deverão estar habilitados.
É importante ficar atento ao valor informado no parâmetro DISABLENETWORKPROTOCOLS, o qual por default é 1. O valor 1 informa ao SQL Express para desativar os protocolos TCP/IP e Named Pipes. Como conseqüência o SQL Express não aceitará conexões vindas de outras máquinas da rede. Os possíveis valores para o parâmetro podem ser.
DISABLENETWORKPROTOCOLS = 0; Shared Memory= On, Named Pipe= On, TCP= On
DISABLENETWORKPROTOCOLS = 1; Shared Memory= On, Named Pipe= Off (Local Only),TCP= Off
DISABLENETWORKPROTOCOLS = 2; Shared Memory= On, Named Pipe= Off (Local Only), TCP= On
Ao utilizar um dos dois métodos de instalação apresentados acima, as contas de serviço SQL Server Express e SQL Server Browser serão iniciadas com o usuário de sistema NT AUTHORITY\NetworkService. Para especificar uma conta de serviço diferente, acrescente os parâmetros abaixo:
SQLACCOUNT=<domain\user>
SQLPASSWORD=<domainuserpassowrd>
SQLBROWSERACCOUNT=<domain\user>
SQLBROWSERPASSWORD=<domainuserpassowrd>
Para obter uma lista completa de todos os parâmetros que podem ser utilizados na instalação via linha de comando e seus respectivos significados, após extrair os arquivos do SQL Express para um caminho temporário, leia o arquivo template.ini.
Configurando o SQL Express para a Rede Se você esta desenvolvendo ou possui uma aplicação que irá se conectar a uma instância do SQL Express através da rede, existem várias considerações que se deve estar ciente:
1) Por razões de segurança, os protocolos de rede são desabilitados por padrão. Você pode habilitar os protocolos individualmente durante a instalação (quando instalando o SQL Express via linha de comando) ou após a instalação.
2) Por padrão, o SQL Express é instalado como Named Instance.
3) O serviço SQL Browser é usado por alguns protocolos de rede para associar instâncias nomeadas com números de portas TCP/IP. Entretanto, se o SQL Express é instalado no mesmo computador que uma versão anterior ao SP3 do MSDE ou SQL Server 2000, pode ocorrer alguns conflitos.
Quando você instala o SQL Express, os protocolos de rede são desabilitados por padrão. Isto faz com que após a instalação, o SQL Express não aceite conexões vindas de outras estações de uma rede. Apenas a conexão local (na própria máquina onde o SQL Express foi instalado) é permitida. Para permitir que o SQL Express se comunique com suas aplicações através de uma rede, você deve primeiro habilitar um dos protocolos de rede e então iniciar o serviço SQL Browser.
O SQL Express suporta os seguintes protocolos de rede:
 dmw9
Habilitando os protocolos de Rede

Demonstrarei aqui como habilitar e configurar o protocolo TCP/IP no SQL Express usando o utilitário SQL Server Configuration Manager.
Nota: Você deverá reiniciar o serviço do SQL Express após fazer alterações para os protocolos de rede. Também é recomendado a reinicialização do serviço SQL Browser.
Para habilitar o protocolo TCP/IP siga os passos abaixo:
1) No menu Iniciar (Start), selecione Programas, Microsoft SQL Server 2005 e então clique sobre SQL Server Configuration Manager.
2) Expanda SQL Server 2005 Network Configuration e clique sobre Protocols for InstanceName. No painel da direita, clique com o botão direito sobre o protocolo TCP/IP e selecione Enable.
Para configurar
 dmw10
Para configurar o protocolo TCP/IP:
1) No SQL Server Configutation Manager, clique com o botão direito sobre TCP/IP e selecione Properties (Propriedades).
2) Na guia IP Addresses, para IPAll coloque 1433 em TCP Port.
3) Clique em OK para fechar a janela e salvar as alterações.
 dmw11
 
Nota: O procedimento acima configurou a porta 1433 para todos os IP configurados em sua máquina. Caso você deseje configurar uma porta apenas para um IP específico, localize o IP desejado (IP1, IP2...) e siga o mesmo procedimento.
Iniciando o serviço SQL Browser
Para iniciar o serviço SQL Browser, estando no SQL Server Configuration Manager:
1) Selecione SQL Server 2005 Services
2) No painel da direita, clique com o botão direito sobre o serviço SQL Server Browser e selecione Start (Iniciar).
3) Para fazer com que o serviço seja iniciado automaticamente, clique com o botão direito e selecione Properties (Propriedades)
4) Na guia Services (Serviços), em Start Mode selecione Automatic (Automático)
5) Clique em OK para fechar a janela e salvar as alterações.

Testando a Conectividade com o SQL Server Express

2) Para testar a conectividade com a porta TPC/IP 1433 digite C:/portqry -n
NomedoServidor_ou_IP -e 1433 -p tcp
Um retorno semelhante ao abaixo garante que

Querying target system called:
winxptmp
Attempting to resolve name to IP address...
Name resolved to 128.1.81.62
querying...
TCP port 1433 (ms-sql-s service): LISTENING

 Artech do Brasil