none
Usuários e contas diferentes no mdf localdb . RRS feed

  • Pergunta

  • Olá amigos, estou seguinte cenário.

    Tenho uma aplicação rodando como serviço e que faz uma conexão com banco de dados mdf localdb.  Essa aplicação está rodando a baixo nível quando ela conecta no banco de dados  com o usuário  'AUTORIDADE NT\SISTEMA' ela não deixa nenhuma aplicação de alto nível conectar a ao banco, da erro de conta de usuário.  O posto também acontece se uma conta de usuário de uma aplicação de alto nível conectar primeiro o serviço não consegue conectar no banco. 

    O que devo fazer nessa situação, consigo dar permissão para as duas contas acessarem e utilizarem o banco de dados ao mesmo tempo?

     
    • Editado Renato B Lima terça-feira, 29 de janeiro de 2019 13:01
    terça-feira, 29 de janeiro de 2019 12:59

Respostas

Todas as Respostas

  • Te sugiro mudar o método de conexão para conectar na instancia do sql server e não diretamente ao arquivo mdf, por esses e outros motivos que você informa.

    Fabiano Carvalho

    terça-feira, 29 de janeiro de 2019 15:55
  • Deleted
    terça-feira, 29 de janeiro de 2019 16:56
  • Tenho uma aplicação rodando como serviço e que faz uma conexão com banco de dados mdf localdb.  Essa aplicação está rodando a baixo nível quando ela conecta no banco de dados  com o usuário  'AUTORIDADE NT\SISTEMA' ela não deixa nenhuma aplicação de alto nível conectar a ao banco, da erro de conta de usuário.  O posto também acontece se uma conta de usuário de uma aplicação de alto nível conectar primeiro o serviço não consegue conectar no banco.

    Renato, o LocalDB não roda como serviço, sendo que acesso para a instância de LocalDB é limitado a seu proprietário. Verifique se o tópico “Instâncias compartilhadas do LocalDB” atende ao que necessita.

    Para que mais de um usuário acesse o banco de dados ao mesmo tempo você deve instalar a edição Express do SQL Server.


    José Diz     Belo Horizonte, MG - Brasil     [Linked In]   [e-mail]   [Porto SQL]


    Este conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    José,

    Concordo, mesmo assim, vale ressaltar que o LocalDB é sim uma instância do SQL Server e não um servidor, seu funcionamento como destacado é local e limitado a conta de usuário que esta fazendo acesso ao mesmo no momento.

    Eu particularmente se for para compartilhar uma instância LocalDB prefiro então utilizar um SQL Server Express, ou então fazer uso de um container.


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    terça-feira, 29 de janeiro de 2019 17:15
    Moderador
  •  Olá José se passar as credencias do usuário para o serviço, ele roda sim com o localdb. O meu problema era que o serviço estava sendo executado com uma conta LocalServe que não tem privilégio para acessar o banco.
    terça-feira, 29 de janeiro de 2019 17:32
  • Olá Junior,  então na minha opnião o localdb é uma versão simplificada (nem por isso desprovida dos recursos principais) do Sql Server Express, voltada para os desenvolvedores afim de evitar a instalação desnecessária de um edição completa do SQL Server. E concordo com você ele é uma instancia do sql server que gerencia os bancos de dados. Mas acredito que não é possivel uma aplicação (sem ser management studio) conectar a um banco de dados gerenciado por apenas  o localdb sem passar o caminho aonde o banco de dados se encontra como nosso amigo FabianoCarvalho07 tinha dito, caso seja possivel por favor me corriga. 

    A opção da ultilização do localdb foi pela facilidade e rapidez para criar e baixar o instalador do nosso programa e o serviço do windows é uma extensão que faz parte do mesmo programa. 


    • Editado Renato B Lima terça-feira, 29 de janeiro de 2019 18:45
    terça-feira, 29 de janeiro de 2019 18:39
  • Olá Junior,  então na minha opnião o localdb é uma versão simplificada (nem por isso desprovida dos recursos principais) do Sql Server Express, voltada para os desenvolvedores afim de evitar a instalação desnecessária de um edição completa do SQL Server. E concordo com você ele é uma instancia do sql server que gerencia os bancos de dados. Mas acredito que não é possivel uma aplicação (sem ser management studio) conectar a um banco de dados gerenciado por apenas  o localdb sem passar o caminho aonde o banco de dados se encontra como nosso amigo FabianoCarvalho07 tinha dito, caso seja possivel por favor me corriga. 

    A opção da ultilização do localdb foi pela facilidade e rapidez para criar e baixar o instalador do nosso programa e o serviço do windows é uma extensão que faz parte do mesmo programa. 


    Renato,

    Concordo com o seu pensamento.


    Pedro Antonio Galvão Junior [MVP | MCC | MSTC | MIE | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | Professor Universitário | @JuniorGalvaoMVP | http://pedrogalvaojunior.wordpress.com]

    sexta-feira, 1 de fevereiro de 2019 11:03
    Moderador