Oracle JDB C не может подключиться как пользователь sysdba - PullRequest
3 голосов
/ 08 апреля 2020

У меня проблема с подключением к базе данных от имени пользователя sysdba. При выполнении того же кода, но в oracle 12 c кажется, что все работает правильно, и я могу подключиться как sysdba пользователь, но при попытке выполнить тот же код в oracle 19 c исключение ORA-01017 Я проверил, я правильно создал файл orapwd. Когда я изменил thin на oci, это работает, но я все еще хотел бы использовать thin.

OracleDataSource ods = new OracleDataSource();
Properties properties = new Properties();
properties.put("user", "sys");
properties.put("password", "password");
properties.put("internal_logon", "sysdba");

ods.setConnectionProperties(properties);
ods.setURL('here is my URL which works when OCI used instead of THIN');
ods.getConnection(); // when Oracle 12c is okay, oracle 19c thrown ORA exception.

Я пытался использовать пользователя "sys as sydba", но результат был тот же ORA -01017. Кто-нибудь знает, что может быть не так? Я бегу ojdbc8: 19.3.0.0

1 Ответ

1 голос
/ 08 апреля 2020

Пожалуйста, проверьте ваш файл паролей, который создается. Если вы используете параметр ignorecase, он все еще работает в Oracle 12 c, но не в Oracle 19 c. Если вы создаете файл паролей с этим параметром, исключений не будет, и файл будет создан успешно, но он не будет работать правильно. Решением может быть воссоздание этого файла без этого параметра. Я считаю, что это должно помочь.

...