2

Я новичок в Oracle.

Я установил Oracle 11g XE R2. Также я установил версию SqlDeveloper 3.2.20.09.

Я сгенерировал авто соединения, и у меня есть 2 соединения. Один из них: /as sysdba, а другой: system-XE

Я успешно подключаюсь к system-XE, но когда я пытаюсь подключиться как sysdba в SQLdeveloper (в то же время я могу подключиться через командную строку SQL), я получаю эту ошибку:

java.lang.Error: Incompatible version of libocijdbc[Jdbc:112030, Jdbc-OCI:112020
at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3557)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3550)
at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:266)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:552)
at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:162)
at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:53)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:526)
at oracle.jdeveloper.db.adapter.AbstractConnectionCreator.getConnection(AbstractConnectionCreator.java:153)
at oracle.dbtools.raptor.standalone.connection.RaptorConnectionCreator.getConnection(RaptorConnectionCreator.java:195)
at oracle.dbtools.raptor.dialogs.conn.ConnectionPrompt.promptForPassword(ConnectionPrompt.java:67)
at oracle.jdeveloper.db.adapter.DatabaseProvider.getConnection(DatabaseProvider.java:321)
at oracle.jdeveloper.db.adapter.DatabaseProvider.getConnection(DatabaseProvider.java:254)
at oracle.jdevimpl.db.adapter.CADatabaseFactory.createConnectionImpl(CADatabaseFactory.java:60)
at oracle.javatools.db.DatabaseFactory.createConnection(DatabaseFactory.java:534)
at oracle.javatools.db.DatabaseFactory.createDatabase(DatabaseFactory.java:208)
at oracle.jdeveloper.db.DatabaseConnections.getDatabase(DatabaseConnections.java:607)
at oracle.dbtools.raptor.utils.Connections$ConnectionInfo.getDatabase(Connections.java:172)
at oracle.dbtools.raptor.utils.Connections.getConnection(Connections.java:1064)
at oracle.dbtools.raptor.utils.Connections.getConnection(Connections.java:1045)
at oracle.dbtools.raptor.navigator.DatabaseConnection.openConnectionImpl(DatabaseConnection.java:115)
at oracle.dbtools.raptor.navigator.AbstractConnectionNode.getConnection(AbstractConnectionNode.java:30)
at oracle.dbtools.raptor.navigator.ConnectionFilter.getFactory(ConnectionFilter.java:94)
at oracle.dbtools.raptor.navigator.ConnectionFilter$1.doWork(ConnectionFilter.java:119)
at oracle.dbtools.raptor.navigator.ConnectionFilter$1.doWork(ConnectionFilter.java:104)
at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:515)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

Любая помощь будет очень признательна, так как теперь я искал решение почти 3 часа.

5 ответов5

7

Источник: разработчик SQL 3.1 показывает ошибку Несовместимая версия libocijdbc (Oracle Community)


  1. Создать файл tnsnames.ora

  2. Откройте SQL Developer и установите инструменты каталога tnsnames-> Настройки-> База данных-> Дополнительно-> Каталог Tnsnames

  3. В SQL Developer UNCHECK: инструменты-> Настройки-> База данных-> Дополнительно-> Использовать драйвер oci/ толстый

  4. Новый тип подключения TNS -> Псевдоним сети (выберите из списка)

  5. Попробуйте соединение

2

Я решил это. В папке sqldeveloper/jdbc/lib замените файлы ojdbc6dms.jar и ojdbc6.jar теми же файлами, но версией JDBC-драйверов версии Oracle Database 11g Release 2 (11.2.0.2.0) :)

2

Первое сообщение об ошибке кажется достаточно ясным:

java.lang.Error: Incompatible version of libocijdbc[Jdbc:112030, Jdbc-OCI:112020

По какой-то причине обнаруженная версия libocijdbc (очевидно, версия 112020) не совместима с найденной версией jdbc (112030). Возможно, вы захотите отследить версию libocijdbc 112030 или переключить ее так, чтобы сначала была найдена версия libocijdbc 110230.

Поделитесь и наслаждайтесь.

0

Я получил ту же ошибку и выяснил, что я использовал другой сетевой псевдоним TNS и идентификатор соединителя. Проверьте эти в первую очередь

0

Я получил ту же ошибку, но другую причину. Я использовал JDBC URL, как показано ниже.

JDBC: оракул: ОКИ: @// локальный: 1521/ имя_службы

Я изменил его ниже и работал нормально.

JDBC: оракул: тонкий: @// локальный: 1521/ имя_службы

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .