2012-05-02 17 views
8

Estoy tratando de conectar una base de datos con un proyecto de Java. Después de leer algunos tutoriales y el soporte del curso, he entendido que necesito crear una nueva fuente de datos en la Consola de administración.fuentes de datos derby - conexión rechazada

Por lo tanto, he iniciado sesión en la consola de administración, luego navegué a Recursos -> JDBC -> Fuentes de datos -> Nuevo; rellena los campos y cuando estoy probando la conexión, el error que consigo es éste:

Mensajes La operación de conexión de prueba para MyDB origen de datos en server1 servidor en RO2CVG6CNode01 nodo con la siguiente excepción: java .sql.SQLNonTransientException: java.net.ConnectException: Error que se conecta al servidor localhost en el puerto 1527 con el mensaje Connection denied: connect.DSRA0010E: SQL State = 08001, Código de error = 40,000. Ver registros de JVM para obtener más detalles.

No sé dónde está el problema. Tal vez con el nombre de la base de datos: jdbc: derby: D: \ MyDB? ¿Alguien puede ayudarme por favor? También intenté usar solo MyDB, después de this tutorial.
Pero aún así no funciona.

+1

Error al conectar con localhost servidor en el puerto 1527 -> este error dice que no hay una base de datos que se ejecuta en el puerto 1527. – oers

+0

asegurarse de que el servidor está en ejecución: http: //www.myeclipseide .com/documentation/quickstarts/blueedition/blue_websphere_data_source/images/myeclipse_derby_server_running.png – oers

+0

Este enlace será útil: http://stackoverflow.com/a/30272670/3728901. Si lo hacemos paso a paso correctamente, evitaremos errores. –

Respuesta

27

¿Tiene el Derby Server que se ejecuta?

Es muy posible que usted está intentando conectarse a una base de datos sin el servidor real ejecutando en el puerto 1527.

Usted podría intentar establecer una conexión utilizando el shell de línea de comandos/Linux - dependiendo del sistema operativo que esté utilizando.

Prueba este si te gusta:

  1. Abra un símbolo del sistema
  2. Navegue hasta el directorio de instalación Derby
  3. Vaya al directorio "bin" (Nota: vaya más a la carpeta NetworkServer si existe)
  4. Tipo "startNetworkServer" y presiona Enter

debe obtener un mensaje que dice somethi ng así:

2012-08-29 10: 57: 16.559 GMT: Administrador de seguridad instalado utilizando la política de seguridad del servidor básico. 2012-08-29 10: 57: 16.809 GMT: Servidor de red Apache Derby - 10.6.2.1 - (999.685) comenzó y listo para aceptar conexiones en el puerto 1527

Si no, entonces tal vez se puede comprobar el servidor de seguridad (comentarios aquí :) invitados

Si lo hace, entonces se podría poner a prueba su conexión utilizando el siguiente método:

  1. abierto otro símbolo del sistema
  2. Navegue hasta el directorio de instalación Derby
  3. Vaya al directorio "bin"
  4. Tipo "ij" y presiona Enter
  5. Escriba lo siguiente:

    connect 'jdbc:derby://localhost:1527/MyDB'; 
    

    ... y pulse Intro

Si todo va bien, obtendrá el "ij>" del sistema espalda.

Desde aquí puede ingresar algunas consultas SQL para probar más la conexión.

Si no, entonces puede haber algunos otros problemas.

Si va a crear la base de datos por primera vez en el derby, entonces usted tendría que usar esto en lugar del paso 5 anterior:

 connect 'jdbc:derby://localhost:1527/MyDB;create=true'; 

... y pulse Intro

Esperemos que después de haciendo estas cosas, obtendrás una conexión. En última instancia, al menos obtendrá una nueva base de datos llamada MyDB que está activa en el Servidor Derby. Si su base de datos original (MyDB) es relativamente pequeña, entonces podría ser más rápido simplemente reconstruirla nuevamente para el propósito para el que la necesite.

Además de esto, si establece una conexión, entonces puede probar otras herramientas que utiliza para el desarrollo de la base de datos, ya que al menos ha eliminado la posibilidad de que la conexión sea el problema.

Simplemente asegúrese de verificar el número de puerto que se informa desde el Paso 4. Esto suele ser 1527. De lo contrario, cambie el número de puerto en el Paso 5 (o su comando de reemplazo para una nueva base de datos) en el mensaje de Derby.

Espero que esto ayude y buena suerte :)

Wayne Riesterer

+1

+1 para la explicación descriptiva. – dShringi

+0

+1 para esta gran explicación detallada .. – EsmaeelQash

1

Mira la documentación de Apache Derby here .....

entorno Configurar para utilizar Derby de red de cliente JDBC

Para usar el controlador Derby Network Client JDBC, configure su CLASSPATH para incluir los archivos jar enumerados a continuación:

  • derbyclient.jar: contiene el controlador JDBC
  • derbytools.jar: opcional, proporciona la herramienta ij

Puede configurar su CLASSPATH explícitamente con el comando muestra a continuación: de Windows:

C:\> set CLASSPATH=%DERBY_INSTALL%\lib\derbyclient.jar;%DERBY_INSTALL%\lib\derbytools.jar;. 

UNIX:

$ export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:. 

A continuación, intente crear una base de datos de esta manera después de ingresar el comando ij en un prompt ..... ij> connect

jdbc:derby://localhost:1527/Chapter01DB;create=true; 
1
  1. Descargar derby de ubicación siguiente:

    /home/ <user_directory> /apache-derby/ 
    
  2. de configuración de ruta de clases/rutas como abajo:

    export DERBY_HOME=/home/<user_directory>/magister-database 
    
    export DERBY_INSTALL=/home/<user_directory>/apache-derby/db-derby-10.11.1.1-bin 
    
    export CLASSPATH=$DERBY_INSTALL/lib/derbyclient.jar:$DERBY_INSTALL/lib/derbytools.jar:$CLASSPATH 
    
  3. de inicio del servidor de red:

    /home/<user_directory>/apache-derby/db-derby-10.11.1.1-bin/bin/startNetworkServer 
    
  4. comando Run Derby línea como abajo:

    java org.apache.derby.tools.ij 
    
    connect 'jdbc:derby://localhost:1527//home/<user_directory>/<database-directory>/<database-name>'; 
    
    show tables; 
    
    disconnect; 
    
    exit; 
    
Cuestiones relacionadas