2017-10-10 16 views
1

Je suis en dessous de l'erreur lors de l'exécution de la commande d'exportation sqoop (dans le script shell) avec oozie.oozie échoue avec Impossible de charger la classe de pilote db: oracle.jdbc.OracleDriver

"java.lang.RuntimeException: Impossible de charger db classe pilote: oracle.jdbc.OracleDriver"

export Sqoop de cli (noeud de bord) fonctionne très bien.

J'ai ajouté le fichier ojdbc6.jar aux emplacements ci-dessous. /opt/cloudera/parcels/CDH-5.7.1-1.cdh5.7.1.p0.11/lib/sqoop/lib/

(emplacements HDFS) /utilisateur/oozie/share/lib/Sqoop/et /utilisateur/oozie/share/lib/lib_20161215195933/Sqoop

j'ai également mis oozie.use.system.libpath = true dans mon oozie fichier job.properties

S'il vous plaît me guider si je suis absent tout réglage. log content

Merci & Cordialement, Sonali

Répondre

1
  1. Assurez-vous que vous téléchargez un fichier dans un répertoire /user/oozie/share/lib/sqoop (il pourrait ressemble /user/oozie/share/lib/lib_${timestamp}/sqoop pour Cloudera et HDP).
  2. Vérifiez si le fichier ojdbc6.jar est correct - vérifiez s'il contient OracleDriver.class et assurez-vous que la taille du fichier est correcte. Cela pourrait être une erreur lors du téléchargement.
  3. Vérifiez les autorisations du fichier ojdbc6.jar (vous pouvez éventuellement essayer d'accorder 755 autorisations à ce fichier). Vérifiez qui est le propriétaire du fichier - il devrait être oozie par défaut.
  4. Mise à jour oozie sharelib par exécution ci-dessous commande (exécuter cette commande sur l'hôte où oozie Server est situé):

    sudo -u oozie oozie admin -oozie http://<Oozie_Server_Host>:11000/oozie -sharelibupdate 
    
  5. Vérifier sharelib pour Sqoop:

    sudo -u oozie oozie admin -oozie http://<Oozie_Server_Host>:11000/oozie -shareliblist sqoop* 
    
  6. Vous pouvez toujours redémarrer oozie un service. Il devrait mettre à jour sharelib.
  7. Créez un répertoire nommé lib à côté de votre workflow.xml dans HDFS et placez-y les fichiers jars. Oozie mettra automatiquement ces jars à la disposition de toutes les actions de ce workflow.

Les utilisateurs de Cloudera devraient vérifier ceci article. Surtout le paragraphe "Une dernière chose".

+0

oui j'ai redémarré le service Oozie –

+0

@SonaliGhorpade J'ai ajouté plus d'informations à ma première réponse. J'espère que ça t'aidera. –

+0

J'ai fait tout ce qui précède mentionné étapes 6 encore le même problème. Ci-dessous l'état du fichier -rwxr-xr-x 2 oozie hdfs 2739670 2017-10-12 03:21 /user/oozie/share/lib/lib_20161215195933/sqoop/ojdbc6.jar si j'ajoute le fichier jar dans le workflow.xml, dois-je supprimer les deux lignes ci-dessous du fichier job.properties? oozie.libpath = $ {nameNode}/utilisateur/oozie/share/lib oozie.use.system.libpath = true –