msgbartop
Блог Oracle разработчика
msgbarbottom
foxbase

12.07.2010 Oracle CoreApp. Создание табличных пространств и владельца схемы.

В предыдущей статье Установка и деинсталляция Oracle CoreApp были описаны основные  принципы формирования системы приложений на основе Oracle CoreApp. Начиная с этой публикации мы начнем уже практическую реализацию CoreApp.
Инсталляция системы производится в два этапа. Первый – создание табличных пространств (tablespace) для нашей системы и создание владельца схемы, второй – установка ядра системы CoreApp и других подсистем, созданных на его основе. Сегодня мы создадим табличные пространства и создадим пользователя Oracle - владельца схемы с данными.
Начальный этап установки системы должен производится от имени пользователя SYS или пользователя, обладающего правами DBA на вашем Oracle сервере. Наша система имеет несколько скриптов, выполняющихся в среде SQL*Plus, автоматизирующих создание табличных пространств и владельца схемы. Все эти скрипты находятся в каталоге \coreapp\server\dba\
Один из основных скриптов с именем c_tbs.sql содержит определение переменных SQL*Plus и их значения, которые используются при создании объектов наших приложений. Этот скрипт будет часто вызываться из других установочных скриптов системы, например, из скрипта создания таблицы. Этот скрипт должен редактироваться вами перед установкой нового экземпляра системы, и содержит определение значений следующих переменных:
def owner=coreapp - Имя пользователя – владельца схемы с данными. По умолчанию «CoreApp», вы можете изменить это имя на необходимое вам.
def owner_pswd=s - пароль владельца схемы. На этапе разработки он может быть очень простой для удобства самой разработки, в нашем случае по умолчанию «s«
def tns_name=orcl - TNS имя базы данных, по умолчанию «orcl«, вы должны ввести имя вашей базы данных, если оно отличается от имени по умолчанию.
def ts_data_path=c:\oracle\product\10.2.0\oradata\orcl\ - путь к каталогу на сервере Oracle, в котором будут храниться файлы табличных пространств вашей системы. Используется при создании табличных пространств. 
def ts_data=user_tab - имя табличного пространства, в котором по умолчанию должны храниться данные таблиц системы
def ts_data=user_idx - имя табличного пространства, в котором по умолчанию должны храниться индексы таблиц системы
def ts_data=user_lob - имя табличного пространства, в котором по умолчанию должны храниться данные больших объектов таблиц системы
def ts_temp=temp - имя временного табличного пространства
def sq_step=100 - шаг последовательностей по умолчанию
def sq_strt=1000000 -  начальное значение последовательностей по умолчанию
def sq_stop=9999999999999900 - максимальное значение последовательностей по умолчанию
def sq_bffr=10 - величина буфера последовательностей по умолчанию
Естественно, вы можете добавить со временем определения новых переменных, если таковые вам потребуются при создании системы на базе CoreApp.
Обратите внимание на скрипт с именем stamp.sql, который формирует имя, соответствующее текущей дате и времени, используемое при формировании имен лог-файлов при установке или деинсталляции компонент системы.
Еще один вспомогательный скрипт - invalid.sql, который выводит список объектов базы данных, которые скомпилировались с ошибками. Это в основном такие объекты, как  PL/SQL пакеты, процедуры, функции.
Скрипт с именем cmp_all.sql выполняет компиляцию объектов, имеющих ошибки вследствие зависимостей от других объектов. Как правило это PL/SQL пакеты, которые содержат вызовы функций из других пакетов, и ставшие ошибочными вследствие изменения родительских пакетов. 
Для создания табличных пространств нашей системы используется скрипт c_tbs.sql
Этот скрипт вызывает c_def.sql и, используя некоторые переменные SQL*Plus, создает три табличных пространства для данных, индексов и больших объектов.
Для запуска скрипта необходимо запустить SQL*Plus (sqlplusw для Windows), находясь в каталоге \coreapp\server\ залогинившись от имени SYS (логин в SQL*Plus можно выполнить так: connect sys/password@orcl as sysdba) и запустить скрипт c_tbs.sql, выполнив команду:
@dba\c_tbs;
Через некоторое время табличные пространства будут созданы, результат выполнения команд вы увидите в соответствующем лог-файле, который появится в каталоге \coreapp\server\
После создания табличных пространств необходимо создать пользователя Oracle - владельца схемы данных. Это делает скрипт c_user.sql, который также должен запускаться от имени SYS в SQL*Plus. Запускаем скрипт командой:
@dba\c_user;
Результат выполнения скрипта наблюдаем в соответствующем лог-файле, который появится в каталоге \coreapp\server\
Естественно, вы можете скорректировать опции создания табличных пространств и владельца схемы в скриптах c_def.sql и c_user.sql в соответствии с вашими требованиями.
Все описанные в статье файлы вы можете скачать по этой ссылке: coreapp.zip
Начиная со следующей статьи мы постепенно начнем создавать различные объекты базы данных Oracle для решения задач, объявленных в статье Oracle CoreApp. Начало


Оставьте свой комментарий

Вы должны быть авторизированны, чтобы оставить комментарий.