Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
O Microsoft SQL Server Express LocalDB é um recurso do SQL Server Express destinado a desenvolvedores. Está disponível na edição SQL Server Express com Advanced Services. No SQL Server 2025 (17.x) e versões posteriores, está disponível na edição SQL Server Express.
A instalação do LocalDB copia um conjunto mínimo de arquivos necessários para iniciar o Mecanismo de Banco de Dados do SQL Server. Depois que o LocalDB estiver instalado, você poderá iniciar uma conexão usando uma cadeia de conexão especial. Quando você se conecta, a infraestrutura necessária do SQL Server é criada e iniciada automaticamente, permitindo que o aplicativo use o banco de dados sem tarefas de configuração complexas. As Ferramentas de Desenvolvedor podem fornecer aos desenvolvedores um Mecanismo de Banco de Dados do SQL Server que permite que eles escrevam e testem Transact-SQL código sem precisar gerenciar uma instância de servidor completa do SQL Server.
Mídia de instalação
LocalDB é um recurso selecionado durante a instalação do SQL Server Express e está disponível quando você baixa a mídia. Se você baixar a mídia, escolha Express Advanced ou o pacote LocalDB .
- Edição do SQL Server 2022 Express
- Edição do SQL Server 2019 Express
- Edição do SQL Server 2017 Express
- Edição do SQL Server 2016 Express
Os clientes que usam o Visual Studio 2019 e o Visual Studio 2022 devem instalar o SQL Server 2019 Express edition.
O instalador SqlLocalDB.msi do LocalDB está disponível na mídia de instalação para todas as edições, exceto para o Express Core. Ele está localizado na <installation_media_root>\<LCID>_ENU_LP\x64\Setup\x64 pasta. LCID é um identificador de localidade ou código de idioma. Por exemplo, um valor LCID de 1033 refere-se à en-US localidade.
Como alternativa, você pode instalar o LocalDB por meio do Visual Studio Installer, como parte da carga de trabalho de Armazenamento e Processamento de Dados , da carga de trabalho de ASP.NET e desenvolvimento da Web ou como um componente individual.
Instalar o LocalDB
Instale o LocalDB através do assistente de instalação ou usando o SqlLocalDB.msi programa. LocalDB é uma opção ao instalar o SQL Server Express LocalDB.
Selecione LocalDB na página Seleção de recursos/Recursos compartilhados durante a instalação. Só pode haver uma instalação dos arquivos binários LocalDB para cada versão principal do Mecanismo de Banco de Dados do SQL Server. Vários processos do Mecanismo de Banco de Dados podem ser iniciados e todos usam os mesmos binários. Uma instância do Mecanismo de Banco de Dados do SQL Server iniciada como LocalDB tem as mesmas limitações do SQL Server Express.
Uma instância do SQL Server Express LocalDB é gerenciada usando o SqlLocalDB.exe utilitário. O SQL Server Express LocalDB deve ser usado no lugar do recurso de instância de usuário do SQL Server Express, que foi preterido.
Descrição
O programa de instalação LocalDB usa o SqlLocalDB.msi programa para instalar os arquivos necessários no computador. Uma vez instalado, o LocalDB é uma instância do SQL Server Express que pode criar e abrir bancos de dados do SQL Server. Os arquivos de banco de dados do sistema para o banco de dados são armazenados no caminho local AppData , que normalmente está oculto. Por exemplo, C:\Users\<user>\AppData\Local\Microsoft\Microsoft SQL Server Local DB\Instances\LocalDBApp1\. Os arquivos de banco de dados do usuário são armazenados onde o usuário designa, normalmente em algum lugar na C:\Users\<user>\Documents\ pasta.
Para obter mais informações sobre como incluir LocalDB em um aplicativo, consulte Visão geral de dados locais do Visual Studio, Criar um banco de dados e adicionar tabelas no Visual Studio.
Para obter mais informações sobre a API LocalDB, consulte Referência do SQL Server Express LocalDB.
O SqlLocalDB utilitário pode criar novas instâncias de LocalDB, iniciar e parar uma instância de LocalDB e inclui opções para ajudá-lo a gerenciar LocalDB. Para obter mais informações sobre o SqlLocalDB utilitário, consulte Utilitário SqlLocalDB.
O agrupamento de instâncias para LocalDB está definido como SQL_Latin1_General_CP1_CI_AS e não pode ser alterado. Os agrupamentos no nível do banco de dados, no nível da coluna e no nível da expressão são suportados normalmente. Os bancos de dados contidos seguem as regras de agrupamentos e de metadados definidas por tempdb.
Restrições
O LocalDB não pode ser gerenciado remotamente por meio do SQL Server Management Studio.
O LocalDB não pode ser um assinante de replicação de mesclagem.
LocalDB não suporta FILESTREAM.
O LocalDB só permite filas locais para o Service Broker.
Uma instância do LocalDB, pertencente a contas internas como
NT AUTHORITY\SYSTEM, pode enfrentar problemas de gerenciamento devido ao redirecionamento do sistema de arquivos do Windows. Em vez disso, use uma conta normal do Windows como proprietário.
Instâncias automáticas e nomeadas
O LocalDB suporta dois tipos de instâncias: instâncias automáticas e instâncias nomeadas. Diferentes usuários de um computador podem ter instâncias com o mesmo nome. Cada instância é executada como o respetivo usuário em seu próprio processo.
Instâncias automáticas
As instâncias automáticas do LocalDB são públicas. Eles são criados e gerenciados automaticamente para o usuário e podem ser usados por qualquer aplicativo. Existe uma instância automática do LocalDB para cada versão do LocalDB instalada no computador do usuário. As instâncias automáticas do LocalDB fornecem gestão contínua de instâncias. Não há necessidade de criar a instância; simplesmente funciona. Este recurso permite a fácil instalação de aplicativos e migração para um computador diferente. Se a máquina de destino tiver a versão especificada do LocalDB instalada, a instância automática do LocalDB para essa versão também estará disponível na máquina de destino. As instâncias automáticas do LocalDB têm um padrão especial para o nome da instância que pertence a um namespace reservado. As instâncias automáticas evitam conflitos de nome com instâncias nomeadas do LocalDB. O nome da instância automática é MSSQLLocalDB.
Instâncias nomeadas
As instâncias nomeadas do LocalDB são privadas. Eles pertencem a um único aplicativo que é responsável pela criação e gerenciamento da instância. As instâncias nomeadas fornecem isolamento de outras instâncias e podem melhorar o desempenho reduzindo a contenção de recursos com outros usuários do banco de dados. Você deve criar instâncias nomeadas explicitamente por meio da API de gerenciamento do LocalDB ou implicitamente por meio do app.config arquivo para uma aplicação gerida (embora a aplicação gerida também possa usar a API, se desejado). Cada instância nomeada do LocalDB tem uma versão do LocalDB associada que aponta para o respetivo conjunto de binários do LocalDB. O nome da instância de um LocalDB é o tipo de dados sysname e pode ter até 128 caracteres. (Esse nome de instância difere das instâncias nomeadas regulares do SQL Server, que limita os nomes a nomes NetBIOS regulares de 15 caracteres ASCII.) O nome de uma instância de LocalDB pode conter quaisquer caracteres Unicode que sejam legais dentro de um nome de arquivo. Uma instância nomeada que usa um nome de instância automático torna-se uma instância automática.
Instâncias compartilhadas do LocalDB
Para oferecer suporte a cenários em que vários usuários do computador precisam se conectar a uma única instância do LocalDB, o LocalDB oferece suporte ao compartilhamento de instâncias. Um proprietário de instância pode optar por permitir que os outros usuários no computador conectem a instância. As instâncias automáticas e nomeadas do LocalDB podem ser compartilhadas. Para compartilhar uma instância do LocalDB, um usuário seleciona um nome compartilhado (alias) para ele. Como o nome compartilhado é visível para todos os usuários do computador, esse nome compartilhado deve ser exclusivo no computador. O nome compartilhado para uma instância de LocalDB tem o mesmo formato que a instância nomeada de LocalDB.
Somente um administrador no computador pode criar uma instância compartilhada do LocalDB. Uma instância compartilhada do LocalDB pode ser descompartilhada por um administrador ou pelo proprietário da instância compartilhada do LocalDB. Para partilhar e descompartilhar uma instância do LocalDB, use os métodos LocalDBShareInstance e LocalDBUnShareInstance da API LocalDB ou as opções de partilha e despartilha do utilitário SqlLocalDB.
Inicie o LocalDB e conecte-se ao LocalDB
Esta seção descreve como se conectar a uma instância automática, uma instância nomeada ou uma instância compartilhada.
Conectar-se à instância automática
A maneira mais fácil de usar o LocalDB é conectar-se à instância automática de propriedade do usuário atual usando a cadeia de conexão Server=(localdb)\MSSQLLocalDB;Integrated Security=true. Para se conectar a um banco de dados específico usando o nome do arquivo, conecte-se usando uma cadeia de conexão semelhante a Server=(LocalDB)\MSSQLLocalDB;Integrated Security=true;AttachDbFileName=D:\Data\MyDB1.mdf.
Observação
Na primeira vez que um usuário em um computador tenta se conectar ao LocalDB, a instância automática deve ser criada e iniciada. O tempo extra para a instância a ser criada pode fazer com que a tentativa de conexão falhe com uma mensagem de tempo limite. Quando isso acontecer, aguarde alguns segundos para permitir que o processo de criação seja concluído e, em seguida, conecte-se novamente.
Criar e conectar-se a uma instância nomeada
Além da instância automática, o LocalDB também oferece suporte a instâncias nomeadas. Use o SqlLocalDB.exe programa para criar, iniciar e parar uma instância nomeada do LocalDB. Para obter mais informações sobre SqlLocalDB.exe, consulte o Utilitário SqlLocalDB.
REM Create an instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" create LocalDBApp1
REM Start the instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" start LocalDBApp1
REM Gather information about the instance of LocalDB
"C:\Program Files\Microsoft SQL Server\160\Tools\Binn\SqlLocalDB.exe" info LocalDBApp1
A última linha no exemplo de código anterior, retorna informações semelhantes à tabela a seguir.
| Categoria | Valor |
|---|---|
| Nome | LocalDBApp1 |
| Versão | <Current version> |
| Nome partilhado | "" |
| Proprietário | <Your Windows user> |
| Criação automática | No |
| Estado | Running |
| Última hora de início | <Date and time> |
| Nome do pipe da instância | np:\\.\pipe\LOCALDB#F365A78E\tsql\query |
Observação
Se seu aplicativo usa uma versão do .NET Framework antes da 4.0.2, você deve se conectar diretamente ao pipe nomeado do LocalDB. O valor do nome do pipe da instância é o pipe nomeado que a instância do LocalDB está a escutar. A parte do nome do pipe da instância após o LOCALDB# será alterada sempre que a instância do LocalDB for iniciada. Para se conectar à instância do LocalDB usando o SQL Server Management Studio, digite o nome do pipe da instância na caixa Nome do servidor da caixa de diálogo Conectar ao Mecanismo de Banco de Dados . A partir do seu programa personalizado, você pode estabelecer conexão com a instância do LocalDB usando uma cadeia de conexão semelhante a SqlConnection conn = new SqlConnection(@"Server=np:\\.\pipe\LOCALDB#F365A78E\tsql\query");
Conectar-se a uma instância compartilhada do LocalDB
Para se conectar a uma instância compartilhada do LocalDB, adicione \.\ (barra invertida + ponto + barra invertida) à cadeia de conexão para fazer referência ao namespace reservado para instâncias compartilhadas. Por exemplo, para se conectar a uma instância compartilhada do LocalDB chamada AppData, utilize uma cadeia de conexão como (localdb)\.\AppData. Um utilizador que se liga a uma instância partilhada do LocalDB que não possui deve ter um login de Autenticação do Windows ou Autenticação do SQL Server.
Solucionar problemas
Para obter informações sobre como solucionar problemas do LocalDB, consulte Problemas conhecidos de instalação e migração do SQL Server 2012.
Permissões
Uma instância do SQL Server Express LocalDB é uma instância criada por um usuário para seu uso. Qualquer usuário no computador pode criar um banco de dados usando uma instância do LocalDB, armazenar arquivos em seu perfil de usuário e executar o processo sob suas credenciais. Por padrão, o acesso à instância do LocalDB é limitado ao seu proprietário. Os dados contidos no LocalDB são protegidos pelo acesso do sistema de arquivos aos arquivos de banco de dados. Se os arquivos de banco de dados do usuário forem armazenados em um local compartilhado, o banco de dados poderá ser aberto por qualquer pessoa com acesso ao sistema de arquivos nesse local, usando uma instância do LocalDB de sua propriedade. Se os arquivos de banco de dados estiverem em um local protegido, como a pasta de dados dos usuários, somente esse usuário e quaisquer administradores com acesso a essa pasta poderão abrir o banco de dados. Os arquivos LocalDB só podem ser abertos por uma instância do LocalDB de cada vez.
O LocalDB sempre é executado sob o contexto de segurança do usuário. O LocalDB nunca é executado com credenciais do grupo do administrador local. Isso significa que todos os arquivos de banco de dados usados por uma instância do LocalDB devem estar acessíveis usando a conta do Windows do usuário proprietário, sem considerar a associação ao grupo Administradores local.