Ora 28040 no matching authentication protocol как исправить oracle 19c
SQL*Plus: Release 8.0.6.0.0 - Production on Tue Jun 19 12:03:27 2018
(c) Copyright 1999 Oracle Corporation. All rights reserved.
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3640
Additional information: -1429175133
Если база запущена
C:\orant1\NET80\ADMIN>plus80 adms@adms
SQL*Plus: Release 8.0.6.0.0 - Production on Tue Jun 19 12:04:30 2018
(c) Copyright 1999 Oracle Corporation. All rights reserved.
ERROR:
ORA-28040: No matching authentication protocol
Enter user-name:
по моей просьбе ситуация была повторена на другом сервере!
И все работает!
Установлено на RedHat Enterpise Oracle
У меня установлено
Operating System: Oracle Linux Server 7.5
CPE OS Name: cpe:/o:oracle:linux:7:5:server
Kernel: Linux 4.1.12-124.15.4.el7uek.x86_64
.
Уточню на всякий случай,12c именно которая 12.1.0.2.0
.
Итак,заново установил 12с,но уже не вручную (silent),а через Xming
И на всякий случай нажал кнопку "create database"
И уже к этой базе я приконнектился без проблем
И еще одна мелочь-в листенере 12с используется порт 1522
Так вот,если поменять на дефолтовый 1521,вылезает все та же ошибка -ORA-28040
выполняю задеплоенный модуль
получаю
пробовал ojdbc6.jar без sqlnet.ora SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
Нафига Вам вообще понадобилось SQLNET.ALLOWED_LOGON_VERSION_SERVER ?
Делаю поиск в google по этим словам и сразу же нахожу ответ, который кажется подходящим:
Или не все так просто (но я как-то в это не верю).
Что Вы подразумеваете под словами "пробовал ojdbc?.jar" - знаете только Вы. Мы даже не знаем, в каком режиме Вы соединяетесь с сервером ( OCI / thin ), какие настройки соединения в приложении.
В общем "обратитесь в службу поддержки Вашего приложения" ( C ) ))))
Пробую подключить Grails проект к Oracle БД 12c. Но когда запускаю приложение, то получаю исключение:
Нашёл предлоаемое решение и попробовал отредактировать .ora файл, но безуспешно.
Добавил следующее в sqlnet.ora и пробовал установливать значения 10,11,12 :
, но с никаким из них не заработало.
Может кто-то помочь с этой проблемой?
49.3k 148 148 золотых знаков 54 54 серебряных знака 211 211 бронзовых знаков
В оф. документации эта ошибка упомянута в контексте Oracle RAC, но решение действительно так же для некластерной БД:
Bug 14575666
In 12.1, the default value for the SQLNET.ALLOWED_LOGON_VERSION parameter has been updated to 11. This means that database clients using pre-11g JDBC thin drivers cannot authenticate to 12.1 database servers unless the SQLNET.ALLOWED_LOGON_VERSION parameter is set to the old default of 8.This will cause a 10.2.0.5 Oracle RAC database creation using DBCA to fail with the ORA-28040: No matching authentication protocol error in 12.1 Oracle ASM and Oracle Grid Infrastructure environments.
Workaround:
Set SQLNET.ALLOWED_LOGON_VERSION=8 in the $crs_home/network/admin/sqlnet.ora file.
Предложенное решение: установить SQLNET.ALLOWED_LOGON_VERSION=8 на сервере БД.
В этом ответе ссылка на фэйк QA, поэтому перенёс только полезный комментарий под ним.
Комментарий:
Да, в моём случае это решило проблему, но возникла другая: invalid username/password , когда пытался подключится в JDeveloper 10 к Oracle БД 12c.
11 Answers 11
I deleted the ojdbc14.jar file and used ojdbc6.jar instead and it worked for me
17.8k 5 5 gold badges 59 59 silver badges 61 61 bronze badges
3,002 3 3 gold badges 20 20 silver badges 31 31 bronze badges experience same issue while trying to connect Oracle 12c from pentaho kettle. removed ojdbc14.jar and its perfectly working! At least a brief explanation why this should work would be quite handy. For me, changing to ojdbc6.jar or ojdbc7.jar still failed because I had been constantly setting: oracle.jdbc.thinLogonCapability"="o3" which you no longer have to do against oracle 12c. Hope it can help someone else That works perfect after deleting ojdbc14.jar and using the ojdbc6.jar
Here is some text I found at experts-exchange:
Bug 14575666
In 12.1, the default value for the SQLNET.ALLOWED_LOGON_VERSION parameter has been updated to 11. This means that database clients using pre-11g JDBC thin drivers cannot authenticate to 12.1 database servers unless theSQLNET.ALLOWED_LOGON_VERSION parameter is set to the old default of 8.
This will cause a 10.2.0.5 Oracle RAC database creation using DBCA to fail with the ORA-28040: No matching authentication protocol error in 12.1 Oracle ASM and Oracle Grid Infrastructure environments.
Workaround: Set SQLNET.ALLOWED_LOGON_VERSION=8 in the oracle/network/admin/sqlnet.ora file.
7,832 5 5 gold badges 38 38 silver badges 69 69 bronze badges Just for reference: This worked for me not deleting the ojdbc14.jar file and using ojdbc6.jar I am using a remote database server, i do not have access to machine, I can just connect to database using SQL Developer (Without error), but my application (deployed on Tomcat ) throws this error. I have changed the settings at my local machine, it is not working. Do i have to modify the settings on server machine?
This except for adding the following to sqlnet.ora
If you get "ORA-01017: invalid username/password; logon denied" error, then you need to re-create your password.
ORA-28040: No matching authentication protocol
I am facing this issue even after following the below settings.
Replacing ojdbc14.jar with ojdbc6.jar [also tried ojdbc5.jar ]
Added " SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 " to sqlnet.ora file[under network/admin folder].
This is happening after upgrading the DB from 11g to 12c.
3,479 11 11 gold badges 27 27 silver badges 50 50 bronze badges 117 1 1 gold badge 1 1 silver badge 8 8 bronze badges
ORA-28040: No matching authentication protocol exception
I am trying to connect my grails project to Oracle databse(Oracle 12c) in windows(8) system. However, whenever I run my application I get following exception :
According to internet suggestion I also tried editing my *.ora file but it is not working.
I added following snippet in sqlnet.ora file :
Here i tried assigning (10,11,12) but neither of them is working.
Can anyone please help me with this ?
2,058 1 1 gold badge 14 14 silver badges 27 27 bronze badges
3,002 3 3 gold badges 20 20 silver badges 31 31 bronze badges
4 Answers 4
I faced a similar issue when trying to connect a
32-bit Oracle 11g Client to a 64-bit Oracle 12c Server
I then proceeded to add the following to sqlnet.ora
I then experienced the following error
Adding the following to the Client sqlnet.ora as well as the Server, I was able to connect an old version of Toad and PL/SQL to the new 12c Server.
JDBC drivers have both a Java version and an Oracle version. The versions are usually correlated, but it's possible for an ojdbc14.jar to support a later version of Oracle than a ojdbc6.jar. Make sure you are using the latest version of ojdbc6.jar.
Run this command to see which version of Oracle the driver was built for:
For SQLNET.ORA changes, to be safe you should restart both the listener and the database. This sounds extreme, but there are some parameters that require restarting the database.
Also make sure that you are modifying all relevant SQLNET.ORA files. If the database's Oracle home is different than the listener's Oracle home you should modify both.
32.7k 6 6 gold badges 65 65 silver badges 120 120 bronze badges
First of all the difference between ojdbc driver's versions depends on the version of the JDK you use drivers with. So ojbdc14 is suitable for JDK version 1.4, ojdbc5 for JDK 1.5, and so on.
I'm currently using ojdbc7.jar with a 12c database version since my environment uses a JDK 1.7, so upgrade this first.
Having said that, in the Parameters for the sqlnet.ora File for Oracle 12c release page you can read:
Purpose
To set the minimum authentication protocol allowed for clients, and when a server is acting as a client, such as connecting over a database link, when connecting to Oracle Database instances.
Usage Notes
The term VERSION in the parameter name refers to the version of the authentication protocol, not the Oracle Database release.
If the version does not meet or exceed the value defined by this parameter, then authentication fails with an ORA-28040: No matching authentication protocol error.
The default for this property is 11.
Allowed values are 8,10,11,12 and 12a.
The recommended value is 12. Try this out.
Moreover there is a useful and interesting solution Database Administrators Stack Exchange
Мы перевели нашу базу данных Oracle на 12c с 11g. У нас есть устаревшее приложение, работающее на Java 1.5 и использующее ojdbc14.jar.
Наше приложение не может создать соединение с ошибкой базы данных, говоря:
Я хотел ответить ORA-28040: нет исключения соответствующего протокола аутентификации, и попытался обновить мой ojdbc14.jar до ojdbc6.jar.
Файл сборки Ant:
Не уверен, что именно мы должны сделать, чтобы приложение заработало.
Недавно у меня была такая же ошибка с двумя разными приложениями:
- приложение Java 7 на Tomcat 7 с использованием ojdbc6.jar с базой данных Oracle 12c.
- устаревшее приложение ASP с базой данных Oracle 12 c.
Второе решение, упомянутое в тот же пост, на который вы ссылались, сработал для нас.
Обходной путь: установите SQLNET.ALLOWED_LOGON_VERSION = 8 в файле oracle / network / admin / sqlnet.ora.
Мы работали с нашими администраторами баз данных, чтобы установить указанную выше опцию в sqlnet.ora на сервере базы данных. Это решило нашу проблему. Надеюсь, это кому-то поможет.
Основная проблема заключается в том, что тонкий клиент JDBC 10g использует протокол аутентификации SHA-1, этот протокол не разрешен в 12c, поэтому он выдает ошибку.
В моем Oracle я не смог найти файл sqlnet.ora , поэтому мне пришлось создать его с помощью команды:
И я добавил следующее:
Поэтому мне пришлось остановиться и запустить слушателя:
Наконец, я перезапускаю базу данных.
Это должно быть только временное решение
Я получал ORA-28040 в Sqldeveloper (версия 1.5.5) для всех подключений. Я установил SQLNET.ALLOWED_LOGON_VERSION = 8, но ошибка не исчезла. Затем я включил «Использовать драйвер OCI / Thick» в меню «Инструменты-> Настройки-> База данных-> Дополнительные параметры». Это сработало.
Если вы переносите свое приложение на ojdbc6, одной из возможных причин может быть то, что ваши старые классы (совместимые со старой версией ojdbc) могут не получать класс OracleTypes . Самый простой способ - это изменить оператор импорта из import oracle.jdbc.driver.OracleTypes; чтобы импортировать oracle.jdbc.OracleTypes; из классов, в которых возникает ошибка.
У меня возникла проблема с подключением к БД после перехода на ORACLE 12c. Ошибка была: java.sql.SQLException: ORA-28040: Нет подходящего протокола аутентификации. После установки этого параметра SQLNET.ALLOWED_LOGON_VERSION = 8 проблема была решена.
После перехода с Oracle 11 на Oracle 12. В моем случае в каталоге lib были как OJDBC14.jar , так и OJDBC8.jar . После удаления старого файла OJDBC14.jar у меня все заработало.
[Устранение неполадок] ORA-28040: Нет подходящего протокола аутентификации
【Исправление проблем】 ORA-28040: No matching authentication protocol
1.1 BLOG Схема структуры документа
1.2 Предисловие
1.2.1 Руководство и примечания
① Часто появляются в журнале тревог Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter 、 ORA-28040: Ошибка подходящего протокола аутентификации, 9i Клиент подключается к 12c Решение высокой версии
② Использовать под Windows oerr команда
Tips :
③ Если формат кода статьи на веб-странице нарушен, пожалуйста скачать pdf Форматированный документ читать 。
④ в эта статья BLOG в , Часть вывода кода обычно размещается в таблице по столбцам.
1.3 Анализ отказов и процесс разрешения
1.3.1 Введение в среду отказа
db место хранения
OS Версия и kernel версия
SuSE Linux Enterprise Server( SLES 11 ) 64 Немного
Часто появляются в журнале тревог Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter 。
или Соединение JDBC Oracle12c Сообщите о следующей ошибке:
Caused by: java.sql.SQLException: ORA-28040: No matching authentication protocol
Или используйте 9i клиент для подключения 12c База данных сообщит ORA-28040: No matching authentication protocol Это ошибка.
1.3.3 Анализ отказов и процесс разрешения
использовать oerr команду для просмотра в Oracle 11g под:
28040, 0000, "No matching authentication protocol"
// *Cause: No acceptible authentication protocol for both client and server
// *Action: Administrator should set SQLNET_ALLOWED_LOGON_VERSION parameter
// on both client and servers to values that matches the minimum
// version supported in the system.
28040, 0000, "No matching authentication protocol"
// *Cause: There was no acceptable authentication protocol for
// either client or server.
// *Action: The administrator should set the values of the
// SQLNET.ALLOWED_LOGON_VERSION_SERVER and
// SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters, on both the
// client and on the server, to values that match the minimum
// version software supported in the system.
// This error is also raised when the client is authenticating to
// a user account which was created without a verifier suitable for
// the client software version. In this situation, that account's
// password must be reset, in order for the required verifier to
Как видите, этот параметр 11g и 12c Следующие решения разные.
Запросить параметры SQLNET.ALLOWED_LOGON_VERSION , Выяснилось, что от этого параметра отказались в 12c, но использовали SQLNET.ALLOWED_LOGON_VERSION_CLIENT и SQLNET.ALLOWED_LOGON_VERSION_SERVER вместо 。
Заказчик сказал, что это случилось раньше ORA-28040: No matching authentication protocol Параметр добавлен к ошибке.
Решение: в Пользователь Oracle (не grid Пользователь), изменить $ORACLE_HOME/network/admin/sqlnet.ora Исходный файл SQLNET.ALLOWED_LOGON_VERSION = 8 комментариев ( Если нет sqlnet.ora Файл, затем Создайте ), дополненный следующей строкой:
SQLNET.ALLOWED_LOGON_VERSION_ CLIENT =8
Не нужно перезапускать базу данных или монитор, не нужно перезапускать приложение 。
Отличия заключаются в следующем:
SQLNET.ALLOWED_LOGON_VERSION_SERVER: элемент управления может быть подключен к 12c Клиентская версия базы данных ( client --->orace 12c db )
SQLNET.ALLOWED_LOGON_VERSION_CLIENT: управление 12c Какие версии базы данных можно подключить к базе ( orace 12c db ---> Другие версии oracle db ), например: управление через DB LINK К каким версиям можно подключиться oracle Библиотека.
Поэтому основной функцией в данном случае является необходимость настройки SQLNET.ALLOWED_LOGON_VERSION_SERVER 。
Обратите особое внимание на:
( 1) Если да RAC ,так как RAC Использовать grid Слушатель, многие думают, что это /u02/app/12.1.0/grid/network/admin/sqlnet.ora "Добавить" SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 "На самом деле это неправильно, но все же в $ORACLE_HOME/network/admin/sqlnet.ora плюс " SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 ”
( 2 ) Вышеупомянутая версия относится к dba_users.password_versions версия.
в В Oracle 12c Хотя добавьте в sqlnet.ora SQLNET.ALLOWED_LOGON_VERSION=8 Можно решить проблема , Но поскольку этот параметр устарел в 12c, используйте SQLNET.ALLOWED_LOGON_VERSION_CLIENT с участием SQLNET.ALLOWED_LOGON_VERSION_SERVER вместо. Если вы продолжите использовать Параметр ,Будет в Журнал аварийных сигналов Бесконечные газеты » Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter. ” , Следующим образом:
Примечание: местный Версия jdk 1.6 , Затем скачать ojdbc6.jar ; jdk Версия 1.7 , Затем скачать ojdbc7.jar
Как показано ниже:
Так же может быть Загрузите пакет ojdbc7.jar в каталог библиотеки lib в каталоге установки ORACLE, а затем загрузите этот ojdbc7.jar в среду разработки. 。
-rw-r--r-- 1 oracle oinstall 3447295 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc5dms_g.jar
-rw-r--r-- 1 oracle oinstall 2617019 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc5dms.jar
-rw-r--r-- 1 oracle oinstall 3425922 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc5_g.jar
-rw-r--r-- 1 oracle oinstall 2095661 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc5.jar
-rw-r--r-- 1 oracle oinstall 4486070 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc6dms_g.jar
-rw-r--r-- 1 oracle oinstall 3327656 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc6dms.jar
-rw-r--r-- 1 oracle oinstall 4462913 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc6_g.jar
-rw-r--r-- 1 oracle oinstall 2714016 Aug 23 2011 /u02/app/oracle/product/11.2.0/dbhome_1/jdbc/lib/ojdbc6.jar
1.3.4 Официальные документы и MOS объяснение
Что касается вопроса, MOS Для справки доступно множество документов.
1.3.4.1 12c Устаревшие и неподдерживаемые функции в
1.4 ORA-28040 Моделирование отказов
Саженцы пшеницы имеют 7、 8 、 9 、 10 、 11 、 12c База данных, так что, кстати, симулируйте эту ошибку.
Сервер 12c, клиент 9i , Пробуем подключиться на клиенте 12c База данных:
Microsoft Windows [ Версия 10.0.10240]
(c) 2015 Microsoft Corporation. All rights reserved.
ORACLE_HOME=D:\Program_files\u01\app\oracle\product\ora92
SQL*Plus: Release 9.2.0.1.0 - Production
TNS Ping Utility for 32-bit Windows: Version 9.2.0.1.0 - Production on 19-DEC-2016 17:44:59
Copyright (c) 1997 Oracle Corporation. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.59.128)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = lhrdb 12c )))
SQL*Plus: Release 9.2.0.1.0 - Production on Mon Dec 19 17:45:07 2016
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
ORA-28040: No matching authentication protocol
Вы можете увидеть газету ORA-28040: No matching authentication protocol ошибка.
мы в На стороне сервера $ORACLE_HOME/network/admin/sqlnet.ora Добавьте следующую строку:
SQLNET.ALLOWED_LOGON_VERSION_ CLIENT =8
Попробуйте подключиться еще раз:
SQL*Plus: Release 9.2.0.1.0 - Production on Mon Dec 19 17:51:54 2016
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
Видно, что подключено нормально.
Если сервер $ORACLE_HOME/network/admin/sqlnet.ora SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8 и SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8 Закомментируйте и замените на SQLNET.ALLOWED_LOGON_VERSION=8 ,следующим образом:
Попробуйте подключиться к базе данных:
SQL*Plus: Release 9.2.0.1.0 - Production on Mon Dec 19 17:56:29 2016
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
Вы можете подключиться в обычном режиме, но при просмотре журнала аварийных сигналов отображается следующий вывод: Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter. Более того, каждый раз, когда подключается база данных, выводится строка данных, что согласуется с проблемой, которую мы анализировали ранее.
1.5 Использовать под Windows oerr команда
Поскольку среда клиента 12c Linux, а у меня нет 12c из Linux Окружающая среда, установка более хлопотная, просто установите один Windows Версия. Результат выполнения oerr ora Об ошибке сообщалось, когда:
C:\Users\xiaomaimiao>oerr ora 10041
oerr: Cannot access the message file E:\app\oracle\product\12.1.0\dbhome_1\rdbms\mesg\oraus.msg
No such file or directory
C:\Users\xiaomaimiao>oerr ora 01555
oerr: Cannot access the message file E:\app\oracle\product\12.1.0\dbhome_1\rdbms\mesg\oraus.msg
No such file or directory
После просмотра Файл с ошибкой (E: \ app \ oracle \ product \ 12.1.0 \ dbhome_1 \ rdbms \ mesg \ oraus.msg) действительно нет, и любой *.msg Файлы не существуют , То с 12в Linux Следующий связанный $ORACLE_HOME/rdbms/mesg/*.msg Файлы копируются в Windows В окружающей среде:
-rw-r--r-- 1 oracle oinstall 4070 Jul 25 2008 amduus.msg
-rw-r--r-- 1 oracle oinstall 6298 Apr 14 2011 asmcmdus.msg
-rw-r--r-- 1 oracle oinstall 5886 Aug 3 2007 dbvus.msg
-rw-r--r-- 1 oracle oinstall 23309 Jan 28 2010 dgmus.msg
-rw-r--r-- 1 oracle oinstall 175881 May 11 2011 diaus.msg
-rw-r--r-- 1 oracle oinstall 49483 Jan 28 2010 expus.msg
-rw-r--r-- 1 oracle oinstall 15148 Nov 8 2009 gimus.msg
-rw-r--r-- 1 oracle oinstall 47609 Feb 18 2009 impus.msg
-rw-r--r-- 1 oracle oinstall 3585 Nov 3 2009 kfedus.msg
-rw-r--r-- 1 oracle oinstall 3457 Nov 6 2008 kfodus.msg
-rw-r--r-- 1 oracle oinstall 1792 Mar 1 2009 kfsgus.msg
-rw-r--r-- 1 oracle oinstall 26775 Nov 1 1999 kgpus.msg
-rw-r--r-- 1 oracle oinstall 3113 Sep 3 1997 kopus.msg
-rw-r--r-- 1 oracle oinstall 72528 Sep 17 2011 kupus.msg
-rw-r--r-- 1 oracle oinstall 4651 Sep 3 1997 lcdus.msg
-rw-r--r-- 1 oracle oinstall 22043 Nov 27 2006 nidus.msg
-rw-r--r-- 1 oracle oinstall 129827 May 5 2011 ocius.msg
-rw-r--r-- 1 oracle oinstall 734 Mar 8 2010 opwus.msg
-rw-r--r-- 1 oracle oinstall 4922454 Sep 17 2011 oraus.msg
-rw-r--r-- 1 oracle oinstall 178311 Aug 25 2009 qsmus.msg
-rw-r--r-- 1 oracle oinstall 391272 Sep 17 2011 rmanus.msg
-rw-r--r-- 1 oracle oinstall 40078 Jul 30 2001 sbtus.msg
-rw-r--r-- 1 oracle oinstall 123863 May 22 2010 smgus.msg
-rw-r--r-- 1 oracle oinstall 20433 Jan 13 2010 udeus.msg
-rw-r--r-- 1 oracle oinstall 20572 Jan 13 2010 udius.msg
-rw-r--r-- 1 oracle oinstall 143025 Jul 27 2009 ulus.msg
Затем выполните OK Вверх.
C:\Users\xiaomaimiao>oerr ora 01555
01555, 00000, "snapshot too old: rollback segment number %s with name \"%s\" too small"
// *Cause: rollback records needed by a reader for consistent read are
// overwritten by other writers
// *Action: If in Automatic Undo Management mode, increase undo_retention
Я пытаюсь подключить свой проект Grails к базе данных Oracle ( Oracle 12c ) в системе Windows (8). Однако всякий раз, когда я запускаю свое приложение, я получаю следующее исключение:
Согласно интернет-предложению, я также попытался отредактировать свой *.ora файл, но он не работает.
Я добавил в sqlnet.ora файл следующий фрагмент :
Здесь я попытался назначить (10,11,12), но ни один из них не работает.
Может ли кто-нибудь помочь мне с этим?
Какой sqlnet.ora вы редактировали, на клиенте или на сервере? Похоже на файл для сервера базы данных. Эти проблемы могут быть очень сложными. Можете ли вы подключиться к серверу базы данных с помощью SQL * Plus? Вы используете тонкий клиент JDBC, и если да, можете ли вы попробовать толстый клиент? Решил вопрос :). Я удалил файл ojdbc14.jar и использовал вместо него ojdbc6.jar, и у меня это сработало. В любом случае спасибо за ответ.Я удалил ojdbc14.jar файл и использовать ojdbc6.jar вместо и он работал для меня
возникла такая же проблема при попытке подключить Oracle 12c из чайника pentaho. удален ojdbc14.jar, и он отлично работает! Хотя бы краткое объяснение того, почему это должно работать, было бы весьма кстати. Для меня переход на ojdbc6.jar или ojdbc7.jar все еще не удался, потому что я постоянно устанавливал: oracle.jdbc.thinLogonCapability"="o3" что вам больше не нужно делать против oracle 12c. Надеюсь, это поможет кому-то другому, Это отлично работает после удаления ojdbc14.jar и использования ojdbc6.jar @YuriyKravets Число 14 в ojdbc14.jar и число 6 в ojdbc6.jar относится к версии JDK, для которой они были написаны. Если вы откроете файл манифеста ojdbc14.jar , в нем будет написано: Specification-Title: «Классы драйверов Oracle JDBC для использования с JDK1.4». Аналогично, ojdbc6.jar поддерживает реализацию JDK1.6.Вот текст, который я нашел на бирже экспертов :
Просто для справки: это сработало для меня, не удаляя файл ojdbc14.jar и используя ojdbc6.jar Поздно к вечеринке, но я также подтвердил это исправление. Мне пришлось установить мою версию = 8, хотя я работал с JDBC 11 - ничего новее 8 не работало. Я использую удаленный сервер базы данных, у меня нет доступа к машине, я могу просто подключиться к базе данных с помощью SQL Developer (без ошибок), но мое приложение (развернутое на Tomcat) выдает эту ошибку. Я изменил настройки на своем локальном компьютере, он не работает. Нужно ли мне изменять настройки на сервере?Ошибка 14575666
В версии 12.1 значение по умолчанию для параметра SQLNET.ALLOWED_LOGON_VERSION было обновлено до 11. Это означает, что клиенты баз данных, использующие тонкие драйверы JDBC до 11g, не могут аутентифицироваться на серверах баз данных 12.1, если для параметраSQLNET.ALLOWED_LOGON_VERSION не установлено старое значение по умолчанию 8.
Это приведет к сбою создания базы данных Oracle RAC 10.2.0.5 с использованием DBCA с ORA-28040: Ошибка соответствующего протокола аутентификации в 12.1 Oracle ASM и Oracle Grid Infrastructure.
Обходной путь: установите SQLNET.ALLOWED_LOGON_VERSION = 8 в файле oracle / network / admin / sqlnet.ora.
Я решил эту проблему, используя ojdbc8.jar. Oracle 12c совместим с ojdbc8.jar
Читайте также: