Вопрос: Как создать файл пароля ОS с помощью команды orapwd на платформах Unix и Windows?
Каковы аргументы (значения и описание) команды orapwd?
1. Войдите в базу данных как администратор.
2. Завершите работу базы данных.
3. На Linux / UNIX: cd $ORACLE_HOME/dbs
На Windows: cd %ORACLE_HOME%\database
4. Введите команду orapwd:
$ orapwd
Usage: orapwd file=[fname] password=[sys password] entries=[users] force=[y/n] ignorecase=[y/n] nosysdba=[y/n]
Где:
- file – имя файла пароля (обязательно),
- password – пароль для SYS будет запрошен, если он не указан в командной строке,
- entries – максимальное количество отдельных DBA (необязательно),
- force – перезаписать существующий файл (необязательно),
- ignorecase – пароли не чувствительны к регистру (необязательно),
- nosysdba – отключить вход в систему SYSDBA (необязательно только Database Vault, не рекомендуется в 11.2)
Вокруг символа равенства (=) не должно быть пробелов.
Комментарии:
I. В UNIX имя файла ДОЛЖНО быть orapw [SID], [SID] – имя экземпляра. В Windows имя файла ДОЛЖНО быть pwd [SID] .ORA.
II. Пароль ДОЛЖЕН быть паролем для sys.
III. Количество записей – это максимальное количество пользователей, которые смогут запускать и останавливать базу данных. Важно помнить, что если это число слишком мало и необходимо добавить дополнительных пользователей, необходимо повторно создать файл паролей.
Если старый файл паролей существует, вы можете перезаписать его с помощью FORCE = Y или удалить его из текущего каталога, прежде чем заново создавать файл паролей.
V. IGNORECASE – это новый параметр, введенный в 11g, который контролирует чувствительность к регистру паролей, хранящихся в файле паролей.
VI. Параметр NOSYSDBA был добавлен в утилиту orapwd как часть продукта Database Vault.
Давайте посмотрим пример команды orapwd для создания нового файла паролей
$ orapwd file=orapwTEST01 password=geeklab ignorecase=n
Командой выше будет создан файл паролей для экземпляра с именем TEST01 в Unix с паролями с учетом регистра.
Полезно отметить, что имя экземпляра в имени файла пароля чувствительно к регистру и должно совпадать в случае фактического имени экземпляра.
5. Добавьте следующий параметр в pfile экземпляра базы данных TEST01:
REMOTE_LOGIN_PASSWORDFILE=exclusive
6. После того, как все вышеперечисленное было сделано, запустите этот оператор:
SQL> STARTUP; SQL> select * from v$pwfile_users;
Если этот оператор возвращает какие-либо записи, попытайтесь установить соединение sysdba с аутентификацией по паролю.
Если связь работает, все нормально.
Если инструкция не возвращает записей, экземпляр базы данных должен быть перезапущен.