2010-08-17 6 views
0

J'utilise Eclipse Galileo et Tomcat 6.0. Je reçois une erreur comme ceci:Erreur de connexion Oracle en utilisant Tomcat

2010-08-17 00:09:42,684,JDBCExceptionReporter,WARN,,SQL Error: 0, SQLState: null 
2010-08-17 00:09:42,684,JDBCExceptionReporter,ERROR,,Cannot create PoolableConnectionFactory (ORA-01033: ORACLE initialization or shutdown in progress 
) 
2010-08-17 00:09:42,684,SettingsFactory,WARN,,Could not obtain connection metadata 
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-01033: ORACLE initialization or shutdown in progress 
) 
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225) 
    at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) 
    at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:82) 

J'ai ojdbc14-9.2.0.8.jar placé dans le dossier Tomcat lib ainsi que les dossiers de déploiement à l'intérieur dossier Tomcat webapps.

Quelqu'un sait ce qui cause cela?

Répondre

1
ORA-01033: ORACLE initialization or shutdown in progress 

Ceci indique que DB est en cours de démarrage ou d'arrêt et que la connexion à cette base de données ne peut pas être établie.

Vérifiez que votre instance de base de données est démarrée. Si ce n'est pas le cas, appelez "startup" depuis l'invite sqlplus avant de réessayer votre programme.

Si vous utilisez SQLDeveloper, vous pouvez également vérifier si vous êtes connecté à la base de données en l'utilisant.

Quelques liens expliquant le code ora:

http://ora-01033.ora-code.com/

http://www.dbmotive.com/oracle_error_codes.php?errcode=01033

http://www.orafaq.com/forum/t/38120/2/

+0

Le DB fonctionne très bien, je suis capable d'y accéder en utilisant SQLDeveloper. – rishi

+0

@rishi Pouvez-vous vérifier que vous accédez à la même base de données que celle utilisée par votre programme? – YoK

+0

J'ai ajouté quelques liens pour votre référence – YoK

0

Est-ce qui se passe au démarrage du serveur (peut-être un environnement de déve où tomcat et Oracle sont sur le même serveur) ? Tomcat démarrerait généralement plus rapidement que la base de données, donc il pourrait bien essayer de se connecter avant que la base de données ne soit prête.

Vous (ou votre administrateur de base de données) devriez être en mesure d'exécuter la requête suivante pour montrer quand la base de données a démarré. Le journal des alertes serait l'endroit à regarder pour déterminer combien de temps il a fallu pour démarrer. S'il a été arrêté brutalement, il doit appliquer les journaux de rétablissement aux fichiers de données avant de pouvoir autoriser d'autres sessions à se connecter. Il doit ensuite annuler toutes les transactions non validées lors de l'arrêt, mais il peut gérer d'autres sessions au cours de cette phase.

sélectionnez startup_time à partir de v $ instance;

0

Je ne suis pas sûr de ce qui s'est passé, mais les problèmes semblent avoir disparu maintenant. J'ai mis tous mes jars de support pour tous les projets dans le dossier de déploiement. Je ne sais pas si c'était lié à cela ou j'ai juste eu de la chance, mais je ne reçois pas cette erreur maintenant. :)

0

Bien que cette erreur indique que l'initialisation ou l'arrêt en cours, il peut y avoir plusieurs raisons à cette erreur. S'il vous plaît voir ma réponse à un poste similaire - https://stackoverflow.com/a/20444726/2789764

Questions connexes