web-dev-qa-db-fra.com

Sources de données Derby - Connexion refusée

J'essaie de connecter une base de données avec un Java projet. Après avoir lu des didacticiels et le support du cours, j'ai compris que je dois faire une nouvelle source de données sous la console d'administration.

Donc, je suis connecté à la console d'administration, puis navigue sur Ressources -> JDBC -> Sources de données -> Nouveau; Rempli dans les champs et quand je teste la connexion, l'erreur que je reçois est celle-ci:

Messages L'opération de connexion de test a échoué pour la source de données MyDB sur Server Server1 au noeud ro2cvg6cnode01 avec l'exception suivante: Java.SQL.SQLnonTransientException: Java.net.ConnectetException: Erreur de connexion au serveur localhost sur le port 1527 avec la connexion de message refusé: Connect.dsra0010e: SQL STATE = 08001, code d'erreur = 40 000. Affichez les journaux JVM pour plus de détails.

Je ne sais pas où est le problème. Peut-être avec le nom de la base de données: JDBC: Derby: D:\mydb? Quelqu'un peut-il m'aider s'il-vous-plaît? J'ai également essayé d'utiliser uniquement MyDB, après ce tutoriel .
[.____] mais toujours ça ne marche pas.

11
Steffi

Avez-vous le serveur Derby en cours d'exécution?

Il est tout à fait possible que vous essayiez de vous connecter à une base de données sans le serveur actuel en cours d'exécution sur le port 1527.

Vous pouvez essayer d'établir une connexion à l'aide du shell de la ligne de commande/Linux - en fonction du système d'exploitation que vous utilisez.

Essayez ceci si vous voulez:

  1. Ouvrir une invite de commande
  2. Accédez à votre répertoire d'installation Derby
  3. Naviguez jusqu'au répertoire "Bin" (Remarque: Naviguer plus loin au dossier NetworkServer s'il existe)
  4. Tapez "startnetworkserver" et appuyez sur Entrée

Vous devriez obtenir un message qui dit quelque chose comme ceci:

2012-08-29 10: 57: 16.559 GMT: Security Manager installé à l'aide de la stratégie de base de la sécurité du serveur. 2012-08-29 10: 57: 16.809 GMT: Server réseau Apache Derby - 10.6.2.1 - (999685) a commencé et prêt à accepter les connexions sur le port 1527

Si vous ne le faites pas, alors vous pourriez peut-être vérifier votre pare-feu (les commentaires invités ici :)

Si vous le faites, vous pouvez également tester votre connexion en utilisant la méthode suivante:

  1. Ouvrez une autre invite de commande
  2. Accédez à votre répertoire d'installation Derby
  3. Naviguez jusqu'au répertoire "bin"
  4. Tapez "ij" et appuyez sur Entrée
  5. Tapez les éléments suivants:

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

    ... et appuyez sur Entrée

Si tout va bien, vous obtiendrez l'invite "IJ>".

De là, vous pouvez entrer quelques requêtes SQL pour tester la connexion plus loin.

Sinon, il pourrait y avoir d'autres problèmes.

Si vous créez la base de données pour la première fois à Derby, vous devez alors l'utiliser à la place de l'étape 5 ci-dessus:

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

... et appuyez sur Entrée

Espérons que, après avoir fait ces choses, vous obtiendrez une connexion. Dans la dernière instance, vous obtiendrez au moins une nouvelle base de données appelée MyDB active sur le serveur Derby. Si votre base de données d'origine (MYDB) est relativement petite, il peut être plus rapide de la reconstituer à nouveau pour le but que vous en avez besoin.

Suite à cela, si vous établissez une connexion, vous pouvez essayer d'autres outils que vous utilisez pour le développement de la base de données, car vous avez au moins éliminé la possibilité que la connexion soit le problème.

Assurez-vous simplement de vérifier le numéro de port signalé à partir de l'étape 4. Ceci est généralement 1527. Sinon, changez le numéro de port à l'étape 5 (ou sa commande de remplacement pour une nouvelle base de données) pour tout port indiqué dans le message de Derby.

J'espère que ça t'aide et bonne chance :)

Wayne Resterer

32
Wayne Riesterer

Avez-vous défini un alias d'authentification? Semble être le même problème que celui dans le lien ci-dessous;

http://www.webspheretools.com/sites/webspheretools.nsf/dbspheretools.nsf/docs/error%20Wen%20testing%20A%20JDBC%20Connection%20to%20derby

De plus, si vous consultez SystemOt.log, vous pouvez voir un message d'erreur indiquant quelle propriété n'est pas définie;

{"08001", "propriété Derby DataSource {0} non définie.", "40000"},

1
Kurtcebe Eroglu
  1. Téléchargez Derby à la suivante:

    /home/ <user_directory> /Apache-derby/
    
  2. Configuration de classpath/chemins ci-dessous:

    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. Démarrer le serveur réseau:

    /home/<user_directory>/Apache-derby/db-derby-10.11.1.1-bin/bin/startNetworkServer
    
  4. Exécutez la ligne de commande Derby comme ci-dessous:

    Java org.Apache.derby.tools.ij
    
    connect 'jdbc:derby://localhost:1527//home/<user_directory>/<database-directory>/<database-name>';
    
    show tables;
    
    disconnect;
    
    exit;
    
1
Amit Kaneria

Découvrez la documentation Derby Apache ICI .....

Configurer l'environnement pour utiliser le pilote JDBC Derby Network Client

Utiliser le Derby Network Client JDBC Pilote, définissez votre CLASSPATH pour inclure les fichiers JAR répertoriés ci-dessous:

  • derbyclient.jar: contient le pilote JDBC
  • derbytools.jar: facultatif, fournit l'outil IJ

Vous pouvez définir votre CLASSPATH _ explicitement avec la commande indiquée ci-dessous: 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:.

Ensuite, essayez de créer une base de données comme celle-ci après avoir entré la commande ij à une invite ..... IJ> Connect

jdbc:derby://localhost:1527/Chapter01DB;create=true;
1
Salvatore Allegra