Ir para conteúdo
Fórum Script Brasil
  • 0

Problema conexão banco de dados Msql na aplicação java


Yarkhs

Pergunta

Olá a todos. Estou criando um banco de dados no Sql Server Enterprise 2000 para poder fazer aplicações web com Java. Mas quando tento rodar aplicação java dá o erro:

Obs: Este erro no Java só dá neste banco de dados. No da empresa funciona perfeitamente.

Conectando ao banco
Exception in thread "main" java.sql.SQLException: Network error IOException: Connection refused: connect
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:395)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC3.<init>(ConnectionJDBC3.java:50)
    at net.sourceforge.jtds.jdbc.Driver.connect(Driver.java:184)
    at java.sql.DriverManager.getConnection(DriverManager.java:525)
    at java.sql.DriverManager.getConnection(DriverManager.java:171)
    at jdbc.ConnectionFactory.getConnection(ConnectionFactory.java:13)
    at jdbc.teste.TestaSelect.main(TestaSelect.java:13)
Caused by: java.net.ConnectException: Connection refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:507)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at net.sourceforge.jtds.jdbc.SharedSocket.createSocketForJDBC3(SharedSocket.java:305)
    at net.sourceforge.jtds.jdbc.SharedSocket.<init>(SharedSocket.java:255)
    at net.sourceforge.jtds.jdbc.ConnectionJDBC2.<init>(ConnectionJDBC2.java:323)
    ... 6 more
E eu reparei que meu banco de dados não têm a seguinte mensagem (SQL server listening on 127.0.0.1: 1433) que aparece no log do banco de dados da empresa. Aqui está o log do meu banco de dados.
Date    Source    Message
2010-01-04 15:49:21.60     server    SQL Server is starting at priority class 'normal'(2 CPUs detected).
2010-01-04 15:49:21.60     server    Logging SQL Server messages in file 'C:\Arquivos de programas\Microsoft SQL Ser
2010-01-04 15:49:21.60     server    Server Process ID is 4408.
2010-01-04 15:49:21.60     server    All rights reserved.
2010-01-04 15:49:21.60     server    Copyright (C) 1988-2000 Microsoft Corporation.
2010-01-04 15:49:21.60     server    Microsoft SQL Server  2000 - 8.00.194 (Intel X86) ...
2010-01-04 15:49:22.18     server    SQL Server configured for thread mode processing.
2010-01-04 15:49:22.18     spid4    Starting up database 'master'.
2010-01-04 15:49:22.18     server    Using dynamic lock allocation. [500] Lock Blocks, [1000] Lock Owner Blocks.
2010-01-04 15:49:22.27     spid4    Skipping startup of clean database id 7
2010-01-04 15:49:22.27     spid4    Skipping startup of clean database id 6
2010-01-04 15:49:22.27     spid4    Skipping startup of clean database id 5
2010-01-04 15:49:22.27     spid4    Skipping startup of clean database id 4
2010-01-04 15:49:22.27     spid4    Server name is 'ECO-19249'.
2010-01-04 15:49:22.27     spid5    Starting up database 'model'.
2010-01-04 15:49:22.27     server    Using 'SSNETLIB.DLL' version '8.0.194'.
2010-01-04 15:49:22.38     spid5    Clearing tempdb database.
2010-01-04 15:49:22.46     server    SQL Server is ready for client connections
2010-01-04 15:49:22.46     server    SQL server listening on Shared Memory, Named Pipes, Rpc.
2010-01-04 15:49:22.74     spid5    Starting up database 'tempdb'.
2010-01-04 15:49:22.79     spid4    Recovery complete.
2010-01-04 15:49:31.73     spid51    Starting up database 'msdb'.
2010-01-04 15:49:32.20     spid51    Using 'xpsqlbot.dll' version '2000.80.194' to execute extended stored procedure
2010-01-04 15:49:55.09     spid53    Using 'xpstar.dll' version '2000.80.194' to execute extended stored procedure '
2010-01-04 15:50:00.59     spid53    Starting up database 'java'.
2010-01-04 15:50:00.75     spid53    Starting up database 'Northwind'.
2010-01-04 15:50:00.87     spid53    Starting up database 'pubs'.

Editado por Yarkhs
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

A classe que faz conexão com o banco de dados é a


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConnectionFactory {
public static Connection getConnection() throws SQLException {

try {
Class.forName("net.sourceforge.jtds.jdbc.Driver");
System.out.println("Conectando ao banco");
return DriverManager.getConnection
("jdbc:jtds:sqlserver://Meu-Computador:1433/java", "sa", "");


} catch (ClassNotFoundException e) {
throw new SQLException(e.getMessage());
}
}
}

[/codebox]

A classe que possui o main e que uso para testar é

[codebox]
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import jdbc.ConnectionFactory;

public class TestaSelect {
public static void main(String[] args) throws SQLException {
int i = 0;
Connection con = ConnectionFactory.getConnection();
PreparedStatement stmt = con.prepareStatement("select * from contatos");

ResultSet rs = stmt.executeQuery();

while(rs.next()) {
i++;
System.out.println("Tabela " + i);
System.out.println("Nome: " + rs.getString("nome"));
System.out.println("Email: " + rs.getString("email"));
System.out.println();
}


stmt.close();
con.close();
}

}

Obs: O código java está certo. Testei isto usando o banco de dados da empresa e funcionou tudo. Mas quando uso no banco de dados que criei dá connection refused. O nome do servidor está certo, a porta está certa, o banco de dados está certo, o usuário e a senha tb. Se tivesse errado daria outra mensagem de erro. Eu pus vários dados errados de propósito e todos eles davam uma exceção diferente de connection refused.

Obs2: Não é problema de java! É problema de configuração de banco de dados. O código java não está com problemas!

Link para o comentário
Compartilhar em outros sites

  • 0
Será que não é o driver? Eu uma vez estava com problemas na conexão e descobri que faltava o driver. Eu não lembro qual era o erro, mas dê uma olhada no diretório lib para ver se o driver tá lá. ;)

O driver está sim no lugar dele. Chegou até a rodar direitinho com o banco de dados da empresa. Só não roda no banco de dados local que eu criei. :P

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...