Я не могу войти в системную учетную запись Oracle
Я недавно установил oracle 12c и не могу получить доступ к системному локальному соединению. (Ошибка Ora-01017), хотя я точно знаю, что это правильно, потому что я сменил пароль. В любом случае, кто-то еще из stackru перенаправил меня на этот https://iwikte.wordpress.com/2008/11/28/unlock-oracle-system-account/, и я не знаю, как настроить эти переменные среды. Мне нужна помощь. Если это имеет какое-то значение, я использую Windows 10. Если эти переменные среды не устанавливаются автоматически, сделайте это вручную (export ORACLE_HOME = / opt / oracle / VIS / db / tech_st / 10.2.0
export ORACLE_SID = VIS
экспорт PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin)
2 ответа
Пожалуйста, сначала попробуйте без установки переменных.
Пожалуйста, запустите SQLPlus от имени администратора и подключитесь как sysdba без указания пароля. Если ваши переменные установлены правильно, вы можете просто набрать sqlplus
в cmd
если нет, пожалуйста, найдите SqlPlus
в ваших программах. Затем введите:
conn / as sysdba
Если это не так. Пожалуйста, перейдите к вашему ORACLE HOME
каталог и редактировать %ORACLE_HOME%\network\admin\sqlnet.ora
файл и проверьте, есть ли SQLNET.AUTHENTICATION_SERVICES = (NTS)
если не NTS
изменить на NTS
и перезапустите базу данных. Затем повторите попытку с conn / as sysdba
После подключения вы можете просто позвонить:alter user sys identified by YOUR_NEW_PASS;
или для SYSTEM
пользователь alter user SYSTEM identified by YOUR_NEW_PASS account unlock;
и войдите с новым паролем.
Кстати, почему вы должны войти в систему как SYSTEM
? Не просто sys as sysdba
? Некоторое сравнение о системных учетных записях.
Инструкция, которую вы получили, для Linux. В Windows один набор переменных среды, как показано здесь
С версии oracle 12.2.x пользователи не могут войти в систему, используя пароли без учета регистра, даже если SEC_CASE_SENSITIVE_LOGON = FALSE, если PASSWORD_VERSIONS пользователя не 10g.
Следующий sql должен показать ПАРОЛЬ_VERSIONS для пользователя.
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 11G 12C
сделать PASSWORD_VERSIONS совместимым с 10g
- добавить / изменить строку в sqlnet.ora базы данных, чтобы SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
- перезапустить базу данных
- изменить / истечь пароль для существующего пользователя
- новые пользователи также будут иметь те же настройки
после вышеописанных шагов PASSWORD_VERSIONS должен выглядеть примерно так
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 10G 11G 12C