locked
conexao remota com sql server 2008 r2 com problewma. RRS feed

  • Pergunta

  • Olá pessoal

    Estou tentando conectar com o SQL Server 2008 r2 a partir de uma máquina cliente e recebo a mensagem de erro:

    Tempo Limite Expirou. O tempo limite esgotou antes da conclusão da operação ou o servidor não está respondendo.

    Ambiente: o SQL Server 2008 r2 está instalado em um Server member que faz parte de um DC dentro de um único domínio.

    O SQL Server está configurado como segue:

    Shared memory = enabled e rnuning

    Named puoes = enabled e running

    Tcp/Ip  = enabled e running

                      Keep Alive; Yes

                     Listen alkl = yes

                     Porta = 1433

    Via = disabled

    Service SQL Blowser está ative e running

    sqlServer = running

    No firewall do Windows na pasta exception consta o sqlsvr.exe mas NÃO CONSTA O SQL BLOWSER (não sei como incluir).

    Aplicação: vb2008 foi construído com visual studio 2008 professional, SP1.

    Abaixo segue o código que utilizo para testar a conexão.

    Se alguém passou por esse problema e solucionou pode me dar algumas dicas

    Abraço

    takeo

    Imports System.Data

    Imports System.Data.sqlclient

    Imports System.Data.OleDb

    Imports System.configuration

     

     

    Public Class Form1

     

        Private Sub Button1_Click( _

                ByVal sender As System.Object, _

                ByVal e As System.EventArgs) _

                Handles Button1.Click

            Dim strConn As String = "data source=MAQTAKEOV;initial catalog=dbVdda;integrated security=true"

            Dim objConn As New SqlConnection(strConn)

            Try

                objConn.Open()

                MessageBox.Show(" Conexão efetuada com sucesso !.")

            Catch ex As SqlException

                MessageBox.Show(ex.Message & "Falha - Conexão não efetuada")

            End Try

     

        End Sub


    um desenvolver buscando um aprendizado cada vez mais solido
    sexta-feira, 14 de janeiro de 2011 01:39

Respostas

  • Olá

    Galvão, Marcelo, Marcos e todos aqueles que esforçaram para tentar me ajdar na solução deste problema, acabei solucionando da seguinte forma:

    Pesquisando pelo google com o texto "como abrir a porta 1433 no sql server 2008" foi descoberto um artigo da microsoft suport center que dá duas alternativas para solução do problema, Escolhi a alternativa 2 "fix the problem by myself" que é reproduzido abaixo. Segui os passos indicados e o problema foi corrigido.

    grato a todos

    = ARTIGO ====================================================== 

    Abrir a porta 1433 do firewall para SQL Server 2008

     script discutido nesta seção abre as portas do firewall para o SQL Server.
    Para criar o script, execute as seguintes etapas:

    1.     Inicie o bloco de notas.

    2.     Copie e cole o seguinte código no bloco de notas:

    3. @echo =========  SQL Server Ports  ===================

    4. @echo Enabling SQLServer default instance port 1433

    5. netsh firewall set portopening TCP 1433 "SQLServer"

    6. @echo Enabling Dedicated Admin Connection port 1434

    7. netsh firewall set portopening TCP 1434 "SQL Admin Connection"

    8. @echo Enabling conventional SQL Server Service Broker port 4022 

    9. netsh firewall set portopening TCP 4022 "SQL Service Broker"

    10. @echo Enabling Transact-SQL Debugger/RPC port 135

    11. netsh firewall set portopening TCP 135 "SQL Debugger/RPC"

    12. @echo =========  Analysis Services Ports  ==============

    13. @echo Enabling SSAS Default Instance port 2383

    14. netsh firewall set portopening TCP 2383 "Analysis Services"

    15. @echo Enabling SQL Server Browser Service port 2382

    16. netsh firewall set portopening TCP 2382 "SQL Browser"

    17. @echo =========  Misc Applications  ==============

    18. @echo Enabling HTTP port 80

    19. netsh firewall set portopening TCP 80 "HTTP"

    20. @echo Enabling SSL port 443

    21. netsh firewall set portopening TCP 443 "SSL"

    22. @echo Enabling port for SQL Server Browser Service's 'Browse' Button

    23. netsh firewall set portopening UDP 1434 "SQL Browser"

    24. @echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)

    25. netsh firewall set multicastbroadcastresponse ENABLE

    26.  Salve o arquivo como um arquivo .txt usando o seguinte nome: OpenSqlServerPort.txt

    27.  Renomeie o arquivo OpenSqlServerPort.txt à seguinte: OpenSqlServerPort.bat



    Antes de executar o script OpenSqlServerPort.bat, você deve copiar o script para o computador que tem o firewall e executar o script nesse computador. Para executar o script, execute as seguintes etapas:

    1.     Clique em Iniciar, clique em Executar, digite cmd e, em seguida, clique em OK.

    2.     No prompt de comando, use o comando cd para navegar até a pasta em que você salvou o arquivo OpenSqlServerPort.bat.

    3.     Para executar o script OpenSqlServerPort.bat, digite OpenSqlServerPort.bat no prompt de comando e pressione ENTER.

    Voltar para o início

    Isso resolveu o problema?

    Verifique se o problema é corrigido pela tentativa de acessar a instância do SQL...

    Verifique se o problema é corrigido pela tentativa de acessar a instância do SQL Server a partir de outro computador. Se o problema seja corrigido, você terá solucionado o problema com este artigo. Se o problema não for corrigido, você pode contact support (http://support.microsoft.com/contactus) .

    Voltar para o início

    =======================================================


    um desenvolver buscando um aprendizado cada vez mais solido
    domingo, 6 de fevereiro de 2011 20:12
  • Takeo,

    Pode utilizar o comando telnet...


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quinta-feira, 20 de janeiro de 2011 23:20
    Moderador
  • Takeo

    existem algumas maneiras, no SP_READERRORLOG ele vai listar a porta e um jeito mais fácil é no Configuration management / SQL Server Network Configuration / TCP/IP / aba Ip Adresses

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    sexta-feira, 21 de janeiro de 2011 11:25
    Moderador

Todas as Respostas

  • Tente o seguinte. Na tela de login no SQL que está demorando, antes de confirmar o login, cliente em OPTION. No campo que vem o tempo de conexão troque o default 15 por 60.
    Marco Antônio Pinheiro / MCTS - Database Developer 2008 http://marcoantoniopinheiro.blogspot.com Se o post foi útil, não esqueça de marcá-lo.
    sexta-feira, 14 de janeiro de 2011 14:37
  • Takeo

    Faça alguns testes...
    - Teste um ping para o nome MAQTAKEOV
    - Teste um telnet  [TELNET MAQTAKEOV 1433]
    - Crie um arquivo .udl e aponte para o server MAQTAKEOV

    Poste os resultados.

    Att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    sexta-feira, 14 de janeiro de 2011 23:34
    Moderador
  • Takeo,

    Esta instância SQL Server, foi configurada para permitir acesso remoto?

    O serviço SQL Browser esta rodando?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    sábado, 15 de janeiro de 2011 17:39
    Moderador
  • Olá Galvão

    sim, o sql server está habilitado para permitir conexão remota. Vou fazer os testes que o Marcelo indicou, só poderei fazer esses testes na proxima segunda feira quando vou dar um pulo até a empresa onde está ocorrendo o problema. Na segunda feira à noite ou provavelmente na terça feira da semana que vem postarei os resultados dos testes aí poderá advir alguma luz.

    até lá, grato

    takeo

     


    um desenvolver buscando um aprendizado cada vez mais solido
    sábado, 15 de janeiro de 2011 19:57
  • Oi Galvão / Marcelo

    O serviço Browser está running e fiz os testes recomendados por Marcelo, os resultados estão abaixo. Estou imaginando que deve ser alguma coisa com o firewall que não estou conseguindo configurar.

    takeo

    ==========================================================

    RESULTADO DO PING VITALEED

    Disparando vitaleed.VITALE.SP [10.0.0.7] com 32 bytes de dados:

    Resposta de 10.0.0.7: bytes=32 tempo<1ms TTL=128

    Resposta de 10.0.0.7: bytes=32 tempo<1ms TTL=128

    Resposta de 10.0.0.7: bytes=32 tempo<1ms TTL=128

    Resposta de 10.0.0.7: bytes=32 tempo<1ms TTL=128

    Estat¡sticas do Ping para 10.0.0.7:

        Pacotes: Enviados = 4, Recebidos = 4, Perdidos = 0 (0% de

                 perda),

    Aproximar um n£mero redondo de vezes em milissegundos:

        M¡nimo = 0ms, M ximo = 0ms, M‚dia = 0ms

    =================================================

    RESULTADO DO PING 1433

    Disparando 0.0.5.153 com 32 bytes de dados:

    PING: falha na transmissÆo. C¢digo de erro 1231.

    PING: falha na transmissÆo. C¢digo de erro 1231.

    PING: falha na transmissÆo. C¢digo de erro 1231.

    PING: falha na transmissÆo. C¢digo de erro 1231.

    Estat¡sticas do Ping para 0.0.5.153:

        Pacotes: Enviados = 4, Recebidos = 0, Perdidos = 4 (100% de

                 perda),

    =========================================================

    RESULTADO DO TESTE TELNET VITALEED 1433

    Conectando-se ao VITALEED... Não foi possível abrir conexão com Host na

    porta 1433.

    ==========================================================

    RESULTADO DO TESTE COM ARQUIVO UDL, usando o provedor OLEDB para SQL SERVER,

    conectou com sucesso ao servidor VITALEED.

    ======================================================

    Observando pelo sql server configuration manager o

    TCP/IP está enabled=yes, listen ALL = yes.  No ipAdress

    o tcpAll está da seguinte forma:

      tcp dynamics ports: 57195 ( coloco 0, mas assume automaticamente o valor ao lado)

      tcp ports           1433 

     


    um desenvolver buscando um aprendizado cada vez mais solido
    segunda-feira, 17 de janeiro de 2011 21:49
  • Takeo,

    Cara os testes indicam e comprovam que a portão 1433 esta bloqueado para troca de dados entre estas máquinas, você possui algum outro firewall, algum hardware firewall?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quarta-feira, 19 de janeiro de 2011 00:55
    Moderador
  • Olá Galvão

    Não sei dizer se existe outro firewall ou hardware de firewall, preciso consultar a empresa e checar com a pessoa que cuida da rede. De antemão posso dizer que o servidor onde está instalado o sql server 2008 R2 é um server member. Existe um servidor DC provavelmente este servidor DC tambem tenha um firewall ativado. A minha dúvida e se uma máquina cliente que está no mesmo dominio do DC para acessar o server member terá que passar pelo servidor DC se fir assim, então está sendo barrado nesse servidor (opinião de liego em rede). Mas amanhã vou checar isso e retornarei ao forum. E se fizer um teste, por ex, desabilitando o firewall do servidor para ver se a conexão será estabelecida?

    takeo

     

     

     


    um desenvolver buscando um aprendizado cada vez mais solido
    quarta-feira, 19 de janeiro de 2011 02:15
  • Galvão

    Falei com a pessoa responsável pela rede me disse que não tem hardware firewal somente winows firewal, inclusive foi feito um teste desativando o firewal do windows no server member onde está instalado o sql server, usando telnet (telnet vitaleed 1433) o erro persiste.

    Existe um SQL SERVER EXPRESS instalado, provavelmente instalado com o visual studio, é posswível que esta instalação pode conflitar cm sql server r2?

    takeo

     


    um desenvolver buscando um aprendizado cada vez mais solido
    quarta-feira, 19 de janeiro de 2011 21:46
  • Takeo

    confirme se o SQL esta usando a porta 1433.

    Att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    quinta-feira, 20 de janeiro de 2011 11:23
    Moderador
  • Oi Marcelo

    Acredito que o sql server esteja configurado para porta 1433, como faço para confirmar se o sql server está usando a porta 1433, além dos testes que já foram feitos e postados. Pode me indicar os procedimentos de confirmação

    grato

    takeo 


    um desenvolver buscando um aprendizado cada vez mais solido
    quinta-feira, 20 de janeiro de 2011 15:12
  • Takeo,

    Pode utilizar o comando telnet...


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quinta-feira, 20 de janeiro de 2011 23:20
    Moderador
  • Takeo

    existem algumas maneiras, no SP_READERRORLOG ele vai listar a porta e um jeito mais fácil é no Configuration management / SQL Server Network Configuration / TCP/IP / aba Ip Adresses

    att.
    Marcelo Fernandes


    MCP, MCDBA, MCSA, MCTS.
    Se útil, classifique!!!
    Me siga no twitter: @marcelodba

    sexta-feira, 21 de janeiro de 2011 11:25
    Moderador
  • Marcelo

    No SP_READERRORLOG lista datas e um texto não ví nas '64 mensagens qualquer referencia a porta.

    quanto ao configuration manager -> sql server network configuration -> aba ipAdress, em ipALL está configurado da seguinte forma:

    tcp dynamic ports <em brancvo>

    tcp ports:            1433

    Estou propenso a desinstalar tudo e re-instalar novamente, mas tenho receio que ocorra o mesmo problema, de novo. Instalaria sòmente o data base engine, posteriormente instalaria os demais servicos, o que acham?


    um desenvolver buscando um aprendizado cada vez mais solido

    domingo, 23 de janeiro de 2011 03:08
  • Olá

    Galvão, Marcelo, Marcos e todos aqueles que esforçaram para tentar me ajdar na solução deste problema, acabei solucionando da seguinte forma:

    Pesquisando pelo google com o texto "como abrir a porta 1433 no sql server 2008" foi descoberto um artigo da microsoft suport center que dá duas alternativas para solução do problema, Escolhi a alternativa 2 "fix the problem by myself" que é reproduzido abaixo. Segui os passos indicados e o problema foi corrigido.

    grato a todos

    = ARTIGO ====================================================== 

    Abrir a porta 1433 do firewall para SQL Server 2008

     script discutido nesta seção abre as portas do firewall para o SQL Server.
    Para criar o script, execute as seguintes etapas:

    1.     Inicie o bloco de notas.

    2.     Copie e cole o seguinte código no bloco de notas:

    3. @echo =========  SQL Server Ports  ===================

    4. @echo Enabling SQLServer default instance port 1433

    5. netsh firewall set portopening TCP 1433 "SQLServer"

    6. @echo Enabling Dedicated Admin Connection port 1434

    7. netsh firewall set portopening TCP 1434 "SQL Admin Connection"

    8. @echo Enabling conventional SQL Server Service Broker port 4022 

    9. netsh firewall set portopening TCP 4022 "SQL Service Broker"

    10. @echo Enabling Transact-SQL Debugger/RPC port 135

    11. netsh firewall set portopening TCP 135 "SQL Debugger/RPC"

    12. @echo =========  Analysis Services Ports  ==============

    13. @echo Enabling SSAS Default Instance port 2383

    14. netsh firewall set portopening TCP 2383 "Analysis Services"

    15. @echo Enabling SQL Server Browser Service port 2382

    16. netsh firewall set portopening TCP 2382 "SQL Browser"

    17. @echo =========  Misc Applications  ==============

    18. @echo Enabling HTTP port 80

    19. netsh firewall set portopening TCP 80 "HTTP"

    20. @echo Enabling SSL port 443

    21. netsh firewall set portopening TCP 443 "SSL"

    22. @echo Enabling port for SQL Server Browser Service's 'Browse' Button

    23. netsh firewall set portopening UDP 1434 "SQL Browser"

    24. @echo Allowing multicast broadcast response on UDP (Browser Service Enumerations OK)

    25. netsh firewall set multicastbroadcastresponse ENABLE

    26.  Salve o arquivo como um arquivo .txt usando o seguinte nome: OpenSqlServerPort.txt

    27.  Renomeie o arquivo OpenSqlServerPort.txt à seguinte: OpenSqlServerPort.bat



    Antes de executar o script OpenSqlServerPort.bat, você deve copiar o script para o computador que tem o firewall e executar o script nesse computador. Para executar o script, execute as seguintes etapas:

    1.     Clique em Iniciar, clique em Executar, digite cmd e, em seguida, clique em OK.

    2.     No prompt de comando, use o comando cd para navegar até a pasta em que você salvou o arquivo OpenSqlServerPort.bat.

    3.     Para executar o script OpenSqlServerPort.bat, digite OpenSqlServerPort.bat no prompt de comando e pressione ENTER.

    Voltar para o início

    Isso resolveu o problema?

    Verifique se o problema é corrigido pela tentativa de acessar a instância do SQL...

    Verifique se o problema é corrigido pela tentativa de acessar a instância do SQL Server a partir de outro computador. Se o problema seja corrigido, você terá solucionado o problema com este artigo. Se o problema não for corrigido, você pode contact support (http://support.microsoft.com/contactus) .

    Voltar para o início

    =======================================================


    um desenvolver buscando um aprendizado cada vez mais solido
    domingo, 6 de fevereiro de 2011 20:12
  • Fiz esse procedimento em um cliente e funcionou! 
    OBS: procedimento do BAT\script

    terça-feira, 7 de junho de 2022 19:16