Derby: un Autre exemple de Derby ont déjà démarré à la base de données
Je voudrais utiliser Derby dans un Réseau en Mode Serveur et suivi les instructions sur leur site web.
De départ derby:
/opt/glassfish/4.0/javadb/bin/NetworkServerControl start -noSecurityManager
Sun Apr 13 23:47:57 CEST 2014 : Apache Derby Network Server - 10.9.1.0 - (1344872) started and ready to accept connections on port 1527
Connexion avec ij
:
$ /opt/glassfish/4.0/javadb/bin/ij
ij version 10.9
ij> connect 'jdbc:derby:testDB';
ij> create table testt ( x varchar(200), y varchar(200), z varchar(13));
0 rows inserted/updated/deleted
ij> select * from testt;
X
|Y
|Z
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
0 rows selected
ij> commit;
ij>
De la connexion à Derby en Java:
static{
try {
Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();
} catch (Throwable e) {
e.printStackTrace();
}
}
public void readData(){
final Connection connection = DriverManager.getConnection("jdbc:derby://localhost:1527/testDB");
....
}
La DriverManager.getConnection()
est un échec:
java.sql.SQLException: DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ040,
SQLERRMC: Failed to start database 'testDB' with class loader sun.misc.Launcher$AppClassLoader@23137792, see the next exception for details.::
SQLSTATE: XSDB6Another instance of Derby may have already booted the database
N'ai pas j'ai juste commencé à derby dans le réseau en mode serveur? Pourquoi j'obtiens cette erreur?
OriginalL'auteur | 2014-04-13
Vous devez vous connecter pour publier un commentaire.
Votre ij connexion a:
ce qui signifie qu'il n'a pas à se connecter au Serveur de Réseau, mais plutôt ouvert la base de données directement à l'aide du Pilote Intégré.
Si vous aviez spécifié:
puis les deux applications (IJ et votre programme) aurait connecté via le Pilote Client et la seconde connexion n'aurait pas été rejeté.
OriginalL'auteur Bryan Pendleton
supprimer les fichiers ci-dessous
../metastore_db/dbex.lck ../metastore_db/db.lck
Grâce
OriginalL'auteur Krishna Pratap
Bien que la réponse à la question déjà, juste au cas où quelqu'un d'autre rencontre cette erreur sur glassfish/payara conteneurs...
J'ai été faire cette erreur sur un redémarrage du serveur, tandis que le déploiement d'une application en tant que bien, et le problème était lié processus java n'a pas été tué, même après l'arrêt du serveur et redémarrez... tuer le processus à partir du terminal, puis de lancer l'application résolu l'erreur
OriginalL'auteur denizdurmus