Перейти к содержимому

Init ora где лежит

  • автор:

Init ora где лежит

dbstart говорит Can’t find init file for Database «test».
sqlplus говорит
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Главное после установки все отлично запустилось работала система несколько дней, потом другой сервис настраивал щас запускаю базу, а она так матерится.
Может пароль неправильно ввел на базу тест? хотя другая ошибка должна была бы быть по идее.
РХ9 и Оракл9.2.0

Оглавление

  • Oracle ошибку дает при инициализации базы, olegi, 11:48 , 16-Июл-03, (1)
    • Oracle ошибку дает при инициализации базы, Den26, 09:12 , 17-Июл-03, (2)
    • Oracle ошибку дает при инициализации базы, Den26, 09:18 , 17-Июл-03, (3)

    Сообщения по теме

    >dbstart говорит Can’t find init file for Database «test».

    если инстанс называется test, то поищите init файл для него.
    По умолчанию он дожен лежать в $OH/dbs/inittest.ora
    но скоее всего он лежит после инсталляции в $OH/admin/test/scripts/init.ora
    создайте на него симлинк или переместите в правильное место.

    >>dbstart говорит Can’t find init file for Database «test».
    >
    >если инстанс называется test, то поищите init файл для него.
    >По умолчанию он дожен лежать в $OH/dbs/inittest.ora
    >но скоее всего он лежит после инсталляции в $OH/admin/test/scripts/init.ora
    >создайте на него симлинк или переместите в правильное место.

    Ага спасибо, ума не приложу куда делся файл inittest.ora
    Я просто скопировал файл $OH/dbs/init.ora в inittest.ora и все заработало.
    Но что интересно после установки я базу запускал и она работала!

    блин теперь пароль к базе тест (основная) не подходит. Или я его забыл (что маловероятно), либо имя логина другое . может его срезетить можно как нить?

    Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.

    Параметры настроек конфигурации сервера БД

    Файл init.ora (oracle\product\11.2.0\server\config\scripts\init.ora) содержит несколько настроек сервера. При вызове команды:

    SELECT a.name, a.value FROM v$parameter a ORDER BY a.name 

    Идет вывод очень многих параметров (343 строки), которых нету в файла init.ora.
    Я так полагаю, есть локальные настройки. Откуда они берутся?

    Отслеживать
    51.6k 201 201 золотой знак 63 63 серебряных знака 245 245 бронзовых знаков
    задан 21 июл 2015 в 13:16
    503 1 1 золотой знак 9 9 серебряных знаков 17 17 бронзовых знаков

    3 ответа 3

    Сортировка: Сброс на вариант по умолчанию

    Файл init.ora не содержит настроек сервера. Этот файл содержит только пример значений параметров, о чём прямо в нём и сказано:

    NOTE: The values that are used in this file are example values only.

    Параметры конфигурации сервера хранятся в server parameter file (SPFILE), который имеет бинарный формат. Имя по умолчанию: spfile . Где он находится, можно узнать так :

    SQL> show parameter spfile 

    Обычно по пути $ORACLE_HOME/dbs . Изменения параметров с одновременным сохранением в файл производятся командой:

    ALTER SYSTEM SET . SCOPE=SPFILE 

    Файлы базы данных Oracle

    Oracle Instance

    Предполагается, что вы инсталлировали базу данных, согласно документа.

    Обязательные файлы:

    • Файлы данных (Data Files)
    • Оперативные файлы журналов повтора (Online Redo Log Files)
    • Управляющие файлы (Control Files)
    • Файлы параметров pfile, spfie (Parameter Files)

    Необязательные файлы:

    • Архивные файлы журналов повтора (Archive Log Files) (необязательные в том смысле, что база может быть настроена для работы без данных файлов)
    • Alert log и трассировочные файлы (trace file) (Alertlog — если нет необходимости в изучении данных по ошибкам, можно удалить. Трассировочные файлы по умолчанию не создаются. Чтобы создавались, нужно включать трассировку и потом не забыть отключить)
    • Файлы паролей (Password File)(По умолчанию не используются. Нужно специально создавать специальными командами.)

    Файлы данных (Data Files)

    Все данные в базе данных Oracle сохраняются в файлах данных. Все таблицы, индексы, триггеры, последовательности, программы на PL/SQL, представления — все это находится в файлах данных. И хотя эти и другие объекты базы данных логически содержатся в табличных пространствах, в действительности они сохраняются в файлах на жестком диске компьютера.

    В каждой базе данных Oracle имеется по крайней мере один файл данных (но обычно их бывает больше). Если вы создаете в Oracle таблицу и заполняете ее строками, Oracle помещает эту таблицу и строки в файл данных. Каждый файл данных может быть связан только с одной базой данных.

    У каждого файла данных имеется специальный формат, внутренний для программного обеспечения Oracle. Важно отдавать себе отчет в том, что файл данных состоит из заголовка и совокупности блоков. Заголовок файла данных Oracle содержит несколько структур, в том числе и идентификатор базы данных, номер и имя файла, тип файла, SCN создания и состояния файла.

    Данные в файлы вносятся исключительно средствами Oracle.

    Следующий запрос, покажет, где находятся файлы данных.

    SQL> set linesize 200; SQL> set pagesize 0; SQL> col name format a40; SQL> select file#, name, status from v$datafile; 
    1 /u02/oradata/ora112/system01.dbf SYSTEM 2 /u02/oradata/ora112/sysaux01.dbf ONLINE 3 /u02/oradata/ora112/undotbs01.dbf ONLINE 4 /u02/oradata/ora112/users01.dbf ONLINE 5 /u02/oradata/ora112/my_indexes01.dbf ONLINE 6 /u02/oradata/ora112/my_data01.dbf ONLINE 

    Оперативные файлы журналов повтора (Online Redo Log Files)

    Оперативные файлы журналов повтора — предназначены для записи всех изменений, выполненных над данными базы данных Oracle. Используется для хранения на диске информации для повторного выполнения операций.

    Для компьютера выполнить задачи повторно — означает выполнить ее точно так, как она выполнялась в предыдущий раз. Поэтому назначение оперативного файла журнала повтора заключается в сохранении информации об изменениях в базе данных таким, образом, чтобы позже их можно было повторить.

    Каждая база данных должна иметь не менее двух оперативных файлов журналов повтора. Текущий файл постепенно заполняется, после его заполнения (или переключения некоторыми командами), база данных приступает к записи в следующий файл. Эта операция называется переключением журналов.

    Поскольку файлы повтора необходимы для выполнения восстановления базы данных и являются критичными, их объединяют в группы. Запись происходит одновременно в файлы одной группы.

    SQL> set linesize 200; SQL> set pagesize 0; SQL> col member format a50; SQL> select group#, member from v$logfile order by group#; 
    1 /u02/oradata/ora112/redo01.log 1 /u01/app/oracle/fast_recovery_area/redo01.log 2 /u01/app/oracle/fast_recovery_area/redo02.log 2 /u02/oradata/ora112/redo02.log 3 /u01/app/oracle/fast_recovery_area/redo03.log 3 /u02/oradata/ora112/redo03.log 

    Управляющие файлы (Control Files)

    Поскольку база данных Oracle является физическим набором связанных файлов данных, то для их синхронизации и контроля требуется особые методы. Для этих целей используются управляющие файлы.

    База данных Oracle может иметь один или несколько управляющих файлов. Если имеется несколько управляющих файлов, все они должны быть абсолютно идентичными. При каждом запуске базы данных Oracle читает информацию управляющего файла, а при каждом изменении размещения или добавления новых файлов данных и журналов базы данных обновляет управляющий файл.

    SQL> set linesize 200; SQL> set pagesize 0; SQL> col name format a100; SQL> select name from v$controlfile; 
    /u02/oradata/ora112/control01.ctl /u02/oradata/ora112/control03.ctl /u01/app/oracle/fast_recovery_area/ora112/control02.ctl 

    Файлы параметров pfile, spfie (Parameter Files)

    Файлы параметров используются для конфигурирования действий Oracle предже всего при старте. Для того, чтобы запустить экземпляр базы данных, Oracle должен прочесть файл параметров и определить, какие параметры инициализации установлены для этого экземпляра. В файле параметров содержатся многочисленные параметры и их установленные значения. Oracle считывает файл параметров при запуске базы данных. Можно создать несколько файлов параметров, каждый будет соответствовать различным конфигурациям экземпляра.

    • spfile — бинарный файл, который используется сервером Oracle при старте.
    • pfile — текстовый файл с параметрами, будет использоваться при старте, если не будет найден spfile.
    $ ls /u01/app/oracle/product/11.2/dbs/*.ora /u01/app/oracle/product/11.2/dbs/init.ora /u01/app/oracle/product/11.2/dbs/spfileora112.ora 

    При старте, Oracle считает файл spfileora112.ora. (файл серверных параметров). Преимущество spfile заключается в том, что при работе с базой данных, любые изменения в базе касающиеся изменения параметра системы, автоматически записываются в данный файл.

    Если используется pfile, для сохранения изменений, необходимо либо “руками вносить эти изменения” в текстовый файл, либо в консоли выполнять команды для создания данных файлов Ораклом.

    // создание pfile из памяти (в 11 версии Oracle) SQL> create pfile from memory; 
    // создать pfile из spfile SQL> Create pfile from spfile; 

    Как я могу узнать, что моя база данных использует PFILE или SPFILE?

    Выполните следующий запрос, чтобы увидеть какой файл параметров был использован:

    SELECT DECODE(value, NULL, 'PFILE', 'SPFILE') "Init File Type" FROM sys.v_$parameter WHERE name = 'spfile'; 
    Init F ------ SPFILE 
    SQL> show parameter spfile; 
    NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ spfile string /u01/app/oracle/product/11.2/d bs/spfileora112.ora 

    Архивные файлы журналов повтора (Archive Log Files)

    Как только оперативный файл журнала повтора (Redolog) оказывается заполнен, программное обеспечение сервера Oracle начинает запись в следующий файл. Эта операция повторяется, как следствие информация в оперативных файлах журнала (Redolog) многократно перезаписывается.

    Если необходимо сохранить историю изменений, нужно, чтобы после переключения журналов сохранялась их копия. Для этого достаточно перевести работу базы данных в режим работы ARCHIVELOG.

    Архивные файлы журналов повтора жизненно важны при восстановлении. Если часть базы данных потеряна или повреждена, то для устранения повреждений обычно требуется несколько архивных журналов или туева хуча этих журналов. Файлы журналов повтора должны применяться к базе данных последовательно. Если один из архивных файлов журналов повтора пропущен, то остальные архивные файлы журналов не могут использоваться. Храните все свои архивные файлы журналов повтора с момента выполнения последней резервной копии. Файлы журналов постепенно накапливаются и разрастаются. Иногда необходимо их удалять. Все операции с данными файлами по применению их к базе выполняются исключительно средствами базы данных. А копировать и переносить их при желании можно как угодно. Бездумно удалять их руками не рекомендуется.

    SQL> set linesize 200; SQL> set pagesize 0; SQL> col name format a100; SQL> select name from v$archived_log; 
    . /u01/app/oracle/fast_recovery_area/ORA112/archivelog/2011_11_22/o1_mf_1_11_7dq050f1_.arc /u01/app/oracle/fast_recovery_area/ORA112/archivelog/2011_11_23/o1_mf_1_12_7dsykrjd_.arc /u01/app/oracle/fast_recovery_area/ORA112/archivelog/2011_11_24/o1_mf_1_13_7dw3fy96_.arc /u01/app/oracle/fast_recovery_area/ORA112/archivelog/2011_11_24/o1_mf_1_14_7dw3ys4f_.arc /u01/app/oracle/fast_recovery_area/ORA112/archivelog/2011_11_26/o1_mf_1_15_7f04bqyq_.arc . 

    Alert log и трассировочные файлы (trace file)

    При работе базы данных события и ошибки регистрируются в текстовых файлах на сервере базы данных. Файл журнала предупреждений (alert log) нужен администратору базы данных для отслеживания важнейших действий с базой данных — наподобие открытия и закрытия базы данных, установления параметров загрузки базы данных и переключения оперативных журналов повтора. Также в эти файлы записываются многие ошибки базы данных для последующего расследования их причин. Любые структурные изменения базы данных также регистрируются в файле журнала предупреждений.

    // в 11 версии базы данных по умолчанию: $ ls /u01/app/oracle/diag/rdbms/rdb115/RDB115/trace alert_$.log 
    // в 11 версии появилась XML версия. По умолчанию: $ ls /u01/app/oracle/diag/rdbms/ora112/ora112/alertlog.xml 

    Когда возникает ошибка базы данных, может генерироваться файл трассировки (trace file). Они содержит подробную информацию о возникновении ошибки.

    // в 11 версии базы данных по умолчанию трассировочные файлы хранятся /u01/app/oracle/diag/rdbms/ora112/ora112/trace 
    // Следующая команда выведет информацию по расположению трассировочных файлов SQL> show parameter dump_dest 

    Файлы паролей (Password File)

    Необязательный файл, используется для защиты информации о подключениях привилегированных пользователей. Если отсутствует, то вы можете выполнять администрирование своей базы данных, только локально. Кроме того, с его помощью контролируется количество привилегированных подключений для управления в одно и то же время.

    $ ls /u01/app/oracle/product/11.2/dbs/orapw* /u01/app/oracle/product/11.2/dbs/orapwora112 

    Tags: Oracle Database, Файлы базы данных Oracle,

    Single DataGuard RAC

    Oracle DBA

    Собираем также материалы по: SQL & PL/SQL

    Лучше потратить какое-то количество времени, чтобы записать успешный опыт, чем потом повторно воспроизводить его по памяти.

    Все материалы обновляются по мере нахождения лучших практик и апгрейда знаний. Если будут желающие добавлять свои знания или исправлять ошибки и неточности, пишите в телеграм чате. Если будет учавствовать больше людей, качество материалов будет улучшаться и обновляться быстрее. Ссылки на ваши профили в соц. сетях будут добавлены в статьях, в которых вы учавствуете.

    Init ora где лежит

    Итак, замечательно! После несколько затянувшегося процесса изучения оператора SELECT, что собственно само по себе не маловажно и мы еще будем его разбирать, наконец подходим вплотную собственно к самому серверу Oracle! Итак, в прошлый раз мы немного разобрались с файлом init.ora. Теперь, двигаемся дальше!

    2. Управляющие файлы.

    Этот файл, еще он называется «контролфайл», содержит в себе практически всю информацию, необходимую для функционирования вашей БД. Такую, например как, набор символов используемый БД, файлы регистрации транзакций используемые БД, файлы данных БД и их статус, обновления, положения и т.д. Эти файлы, создаются во время создания собственно вашего экземпляра БД и с течением времени практически не меняются, за исключением того, если вы как администратор производите какие-либо действия с экземпляром. Например, добавляете файл данных нового табличного пространства. Меняете размер существующих файлов данных и т.д. Без контрольного файла БД не стартует! Или если он поврежден! Контролфайл имеет бинарную структуру, по этому редактировать его в ручную нельзя! Поврежденный контролфайл можно восстановить, эту процедуру я вам покажу чуть позже! А находятся эти файлы, в вашем случае в каталоге C:\Oracle\Oradata\Proba. Обычно этих файлов два. Так как БД работает с размноженными контролфайлами. За расположение этих файлов отвечает секция CONTROL_FILES в файле init.ora вашего экземпляра БД. И естественно все котролфайлы перечислены в представлении v$controlfile.

    SELECT * FROM v$controlfile
    STATUS NAME ------- --------------------------------------- C:\ORACLE\ORADATA\PROBA\CONTROL01.CTL C:\ORACLE\ORADATA\PROBA\CONTROL02.CTL

    3. Оперативные и архивные файлы журналов регистрации транзакций.

    При создании экземпляра БД, после его старта, в системной области, под названием SGA практически сразу запускается группа фоновых процессов. Один из них и пожалуй самый важный LGWR! Это процесс регистрации транзакций. Помимо всего прочего, он ведет так называемые «журналы регистрации транзакций». Записывает он это все в файлы расположенные там же где и контролфайлы БД, а именно C:\Oracle\Oradata\Proba в вашем случае. Называются эти файлы:

    redo01.log redo02.log redo03.log . . . redo(n).log

    При работе используется как минимум две группы файлов! Запись проводится циклически в обе группы.

    По мере заполнения групп LGWR открывает новые, а заполненные процесс ARCH переписывает на резервные накопители, если база запущена с опцией архивирования, что не всегда выполняется. Хотя это полезно, но отнимает часть ресурсов процессора.

    Просмотреть состояние этих журналов нам поможет такой запрос:

    SELECT b.member, a.bytes, a.members, a.status FROM v$log a, v$logfile b WHERE a.group# = b.group# ORDER BY b.member /
    MEMBER BYTES MEMBERS STATUS ----------------------------------------------------- ---------- ---------- ---------- C:\ORACLE\ORADATA\PROBA\REDO01.LOG 1048576 1 CURRENT C:\ORACLE\ORADATA\PROBA\REDO02.LOG 1048576 1 INACTIVE

    Как видите, мы снова обращаемся к представленьям v$log и v$logfile и снова получаем полезную информацию!

    Как видно файл REDO01.LOG является активным в данный момент! Идем дальше!

    4. Файлы трассировки

    Файлов трассировки, существует несколько видов. Основное их назначение фиксировать все события происходящие в сервере БД, в том числе все критические. В дальнейшем, по их содержимому можно выяснить вследствие чего произошел тот или иной сбой! Хотя, если все нормально Oracle обычно не сбоит! Но тем не менее. Основной файл трассировки системных событий имеет имя sidALRT.log, где sid (замете, маленькими буквами!) имя экземпляра. Положение этого файла определяет секция background_dump_dest файла init.ora в нашем случае C:\Oracle\admin\proba\bdump. Там же находятся и файлы трассировки фоновых, процессов! А секция файла init.ora, user_dump_dest определяет местоположение пользовательских файлов трассировки. В вашей БД это будет C:\Oracle\admin\proba\udump. Пользовательские файлы трассировки, имеют префикс ora, затем уникальный номер и расширение .trc. Эти файлы формируются в случае возникновения критической ситуации пользовательского процесса. Запустить режим трассировки пользовательского процесса. Постоянно, можно введя в SQLPlus команду:

    ALTER SESSION SET SQL_TRACE=TRUE /

    Или установить в файле init.ora, в секции SQL_TRACE значение TRUE! Но такой ход, может повлечь за собой немало неприятностей, ваши файлы трассировки неимоверно распухнут! И разобрать в них что либо, можно будет уже с трудом! По этому делайте это осторожно, по мере необходимости! :))

    5. Идентификаторы записей ROWID

    • BBBBBBBB — шеснадцатиричный номер блока в файле данных, в котором находится строка.
    • RRRR — шеснадцатиричный номер строки в блоке.
    • FFFF — файл в состав, которого входит это блок.

    Например, ROWID = 0000078F.0003.0002. Это значит, что строка находится во втором файле данных, в блоке номер 78F файла данных, и является четвертой строкой (счет, идет от 0000!) в блоке. При создании новой строки она сразу получает свой уникальный ROWID! И самый быстрый способ найти строку это указать ее ROWID! Хотя это не такая простая задачка. Это далеко не все про ROWID, тем не менее, для начала понимания уже достаточно! Так что в следующий раз займемся самым интересным, блоками Oracle.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *