Oracle 19c создание базы
В системе Windows также необходим дополнительный шаг, так как в Windows Oracle сервер работает как сервис. Oracle предоставляет дополнительный инструмент oradim.exe в помощь при создании этого сервиса
Эти шаги могут быть последовательно выполнены из SQL *Plus или с помощью специального графического инструмента DBCA (Database Configuration Assistant). Также вы можете написать свои скрипты для этой цели или использовать «тихую» установку.
Наиболее простым способом является создание БД с помощью DBCA. Это мастер-установщик который в режиме диалога запросит необходимые параметры и сделает всё в автоматическом режиме.
Для запуска DBCA на Linux вначале необходимо установить системные переменные ORACLE_BASE,ORACLE_HOME,PATH и LD_LIBRARY_PATH. Примерные значения могут быть такими
И запустить приложение вызвав команду dbca.
Помните, что почти все параметры (за исключением одного) можно изменить после создания БД, но это потребует нефункционирования БД.
Если будет установлен Enterprise Manager Database Control, то тогда необходимо выполнить ещё один предварительные шаг; настройка listener-а БД. Это необходимо так как Database Control всегда подключается к БД с помощью listener-а и в процесе установки проверяет наличие хотя бы одного доступного listener-а. Listener можно легко настроить с помощью Net Configuration Assistant (netca).
Скрипты и файлы создаваемые DBCA
DBCA создаёт скрипты и файлы которые находятся в папке ORACLE_BASE/admin/DB_NAME/scripts.
Файл параметров Parameter File
Рассмотрим файл параметров, с именем init.ora. Ниже представлен фрагмент сгенерированного DBCA файла
Скрипт создания БД
Ниже представлен скрипт который DBCA выполняет в процессе создания БД (пример для Windows).
D:\oracle\app\product\11.1.0\db_3\bin\oradim.exe -new -sid OCP11G
-startmode manual -spfile
D:\oracle\app\product\11.1.0\db_3\bin\oradim.exe -edit -sid OCP11G
-startmode auto -srvcstart system
Вначале скрипт создаёт несколько папок внутри папки ORACLE_BASE. Далее устанавливаются значения системной переменной ORACLE_SID и добавляется путь ORACLE_HOME/bin к переменной PATH. Две команды которые используют oradim.exe не используются в Linux. В Windows они нужны чтобы настроить запуск экземпляра БД как сервиса.
После скрипт запускает SQL *Plus и выполняется SQL скрипт %DB_NAME%.sql который управляет процессом создания БД
PROMPT specify a password for sys as parameter 1;
DEFINE sysPassword = &1
PROMPT specify a password for system as parameter 2;
DEFINE systemPassword = &2
PROMPT specify a password for sysman as parameter 3;
DEFINE sysmanPassword = &3
PROMPT specify a password for dbsnmp as parameter 4;
DEFINE dbsnmpPassword = &4
Вначале задаются пароли для системных учётных записей (эти пароли указываются в процессе работы с DBCA). Потомы вызывается программа orapwd которая создаст файл паролей для БД. Имя файла будет %ORACLE_HOME%\database\PWD<db_name>.ora для Windows или $ORACLE_HOME/dbs/orapw<db_name> для Linux. После этого запускается скрипт CreateDB.sql который непосредственно создаёт БД.
Команда CREATE DATABASE
Пример скрипта CreateDB.sql
SIZE 300M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
EXTENT MANAGEMENT LOCAL
SIZE 120M REUSE AUTOEXTEND ON NEXT 10240K MAXSIZE UNLIMITED
SMALLFILE DEFAULT TEMPORARY TABLESPACE TEMP TEMPFILE
AUTOEXTEND ON NEXT 640K MAXSIZE UNLIMITED
AUTOEXTEND ON NEXT 5120K MAXSIZE UNLIMITED
CHARACTER SET WE8MSWIN1252
NATIONAL CHARACTER SET AL16UTF16
Скрипт подключается к экземпляру, используя авторизацию из файла паролей. Команды echo и spool выводя в лог всё что происходит.
Команда STARTUP NOMOUNT создаёт структуры экземпляр в памяти используя файл параметров. NO MOUNT означает что база данных не будет подключена и открыта. После того как эта команда выполнена – экземпляр существует в памяти и работают фоновые процессы. Размеры SGA установлены согласна файла параметров.
Команда CREATE DATABASE использует имя базы данных и множество параметров. Вначале устанавливаются определенные ограничения для всей БД. Они могут изменять позже, но лучше всего устанавливать допустимые значения сейчас, поскольку их изменение очень трудоёмкая операция. Далее указываются где создать файлы данных для табличных пространств SYSTEM, SYSAUX и UNDO. Также указываются где хранить файлы для временного табличного пространства (TEMPORARY tablespace). Так же указывается кодировка БД для словаря данных и столбцов типа VARCHAR2, CHAR и CLOB. Параметры для файлов логов и т.д. В конце идёт указание на использование паролей из файла паролей и отключение записи в лог.
Этот файл с командой CREATE DATABASE создаст базу данных. После успешного выполнения экзмепляр будет работать в памяти и БД будет создана, включая файлы контроля, файлы данных и файлы логов. Словарь данных будет сгенерирован в табличном пространстве SYSTEM. Однако несмотря на то что БД создана, она пока непригодна для использования. Оставшиеся скрипты, которые вызовет файл %DB_NAME%.sql исправят это. У команды CREATE DATABASE много параметров, однако все они имеют значение по умолчанию. Например если вы не укажете файлы данных для табличного пространства SYSTEM все равно создатся минимум один файл. Для табличных пространств UNDO и TEMPORARY нет значений по умолчанию – но БД может быть создана без них, а потом можно указать эти значения.
Скрипты после создания БД
Остальные скрипты вызываемые %DB_NAME%.sql зависят от выбора в процессе работы с DBCA. В нашем примере был выбран только Enterprise Manager Database Control и поэтому будут запущены только 4 скрипта.
Хотите в кратчайшие сроки освоить работу с базой данных Oracle 19с? Представляем уникальный интенсив для инженеров техподдержки, технических администраторов, администраторов хранилищ данных, знакомых с основами работы с Oracle. Обучение проводится на платформе Linux, однако опыт работы с Linux не является обязательным для учёбы.
Ближайшая группа
Для физ.лиц
Для организаций*
Преподаватели
Фокин Михаил Владимирович
Описание курса
Oracle – самая популярная база данных, которая используется в большинстве крупных компаний, банков и государственных учреждений. Специалисты со знанием Oracle востребованы везде. Хотите в кратчайшие сроки освоить работу с базой данных Oracle 19с? Представляем уникальный интенсив для инженеров техподдержки, технических администраторов, администраторов хранилищ данных, дизайнеров баз данных, знакомых с основами работы с Oracle. Обучение проводится на платформе Linux, однако опыт работы с Linux не является обязательным для учёбы.
Курс читается на русском языке и содержит основную информацию об установке, администрировании и обновлении Oracle 19c. В основе программы – уникальный опыт практикующих экспертов-разработчиков, применимый именно к российским реалиям.
В данном курсе подробно изучается архитектура экземпляра базы данных, установка программного обеспечения Oracle Database и создание базы данных. Вы узнаете, как управлять структурами хранения базы данных, как создавать пользователей и администрировать безопасность базы данных в соответствии с Вашими бизнес-требованиями. В курсе рассматриваются основы резервного копирования и восстановления. Для обеспечения приемлемого времени отклика для пользователей и эффективного управления ресурсами Вы изучите возможности мониторинга базы данных и управление ее производительностью.
Курс подходит для версий Oracle Database 12c, 18c, 19c. Обучение проводится на платформе Linux, однако опыт работы с Linux не является обязательным.
Вам необходимо как можно быстрее приступить к работе с Oracle Database 19c? Записывайтесь на этот курс!
Вы научитесь
- описывать архитектуру и структуру процессов базы данных Oracle 19с;
- инсталлировать программное обеспечение Oracle Database 19с;
- создавать базу данных Oracle;
- использовать в работе инструменты управления базой данных Oracle;
- настраивать мониторинг базы данных и управлять её производительностью;
- внедрять аудит базы данных;
- конфигурировать Oracle*Net;
- конфигурировать базу данных для операций резервирования и восстановления;
- управлять экземпляром базы данных;
- осуществлять управление структурами хранения базы данных, пользователями и ролями
Специалисты, обладающие этими знаниями и навыками, в настоящее время крайне востребованы.
Большинство выпускников наших курсов делают успешную карьеру и пользуются уважением работодателей.
Предварительная подготовка
Требуемая подготовка: Успешное окончание курса Oracle Database 19с: Основы SQL или эквивалентная подготовка.
2. На экранее Apps выберите иконку Database Configuration Assistant.
Задайте опции восстановления базы (в данном примере опции восстановления не используются). Установите галочку Specify Fast Recovery Area. В эту папку по умолчанию делается резервное копирование с помощью RMAN, и сохраняются архивные копии журнальных файлов. По умолчанию папка располагается в \fast_recovery_area. В поле Fast Recovery Area вы можете изменить этот путь и явно задать папку для резервного копирования. В параметре Fast Recovery Area Size задаётся лимит на размер этой папки (лучше сделать его равным объёму всего жёсткого диска). Параметр Enable Archiving включает режим архивирования журнальных файлов. Если нажать кнопку Edit Archive Mode Paramets то можно изменить шаблон для имён архивов журнальных файлов, а также дополнительные пути для мультиплицирования архивных копий. Оставьте всё по умолчанию.
ВНИМАНИЕ: Для промышленной базы нужно обязательно включать режим архивирования журнальных файлов. Однако, при достижении лимита папки Fast Recovery Area (т.е. при её полном заполнении) база данных остановиться, и будет ждать свободного места. Поэтому, если вы не можете следить за заполнением этой папки – НЕ включайте режим архивирования журнальных файлов, т.е. не ставьте галочку в поле Enable Archiving.
Нажмите Следующий.
Обязательные параметры (обязательно изменить!).
Рекомендованные параметры (можно не трогать).
; Для большого количества активных пользователей (более 70-80).
; Считайте РЕАЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ,
; а не количество компьютеров в сети.
; Если пользователей меньше 70-80 – не трогайте эти параметры.
; Если пользователей больше 100-200 возможно более эффективно
; использовать режим разделяемого сервера (Shared Server Mode).
sessions = 1,1*processes +5
18. Окно Database Configuration Assistant. Создание базы данных завершено. Запишите WEB-адрес для Database Control. Нажмите Закрыть.
19. БД создана и уже запущена. Для соединения с БД из других ORACLE_HOME, необходимо настроить сетевую среду Oracle для них.
20. После создания БД можно изменить некоторые настройки для БД. Для нужно выполнить несколько sql-команд в sqlplus (или TOAD) под SYS и перезапустить БД.
Запустите sqlplus /nolog.
C:\> sqlplus /nolog
соединитесь с БД под пользователем sys as sysdba
SQL> conn sys/sys as sysdba
отключить использование корзины в БД
SQL> alter system set recyclebin=off scope=spfile;
отключить регистрозависимость пароля
SQL> alter system set sec_case_sensitive_logon=FALSE scope=both;
(по желанию) чтобы не менять пароль пользователям каждые 60 дней
вместо unlimited можно поставить число = количеству дней
SQL> alter profile DEFAULT limit password_life_time unlimited;
SQL> shutdown immediate
SQL> startup
21. Старые версии клиентов 8, 9, 10, 11 не могут соединиться с Oracle 12c с ошибками:
Для решения проблемы нужно добавить в sqlnet.ora на сервере
22. Некоторые клиенты oracle 10 и 11 падают с ORA-01031: insufficient privileges при попытке выполнить
Starting 12c, the SELECT ANY DICTIONARY privilege no longer permits access to security sensitive data dictionary tables DEFAULT_PWD$, ENC$, LINK$, USER$, USER_HISTORY$, and XS$VERIFIERS. This change increases the default security of the database by not allowing access to a subset of data dictionary tables through the SELECT ANY DICTIONARY privilege.
2. На экранее Apps выберите иконку Database Configuration Assistant.
Задайте опции восстановления базы (в данном примере опции восстановления не используются). Установите галочку Specify Fast Recovery Area. В эту папку по умолчанию делается резервное копирование с помощью RMAN, и сохраняются архивные копии журнальных файлов. По умолчанию папка располагается в \fast_recovery_area. В поле Fast Recovery Area вы можете изменить этот путь и явно задать папку для резервного копирования. В параметре Fast Recovery Area Size задаётся лимит на размер этой папки (лучше сделать его равным объёму всего жёсткого диска). Параметр Enable Archiving включает режим архивирования журнальных файлов. Если нажать кнопку Edit Archive Mode Paramets то можно изменить шаблон для имён архивов журнальных файлов, а также дополнительные пути для мультиплицирования архивных копий. Оставьте всё по умолчанию.
ВНИМАНИЕ: Для промышленной базы нужно обязательно включать режим архивирования журнальных файлов. Однако, при достижении лимита папки Fast Recovery Area (т.е. при её полном заполнении) база данных остановиться, и будет ждать свободного места. Поэтому, если вы не можете следить за заполнением этой папки – НЕ включайте режим архивирования журнальных файлов, т.е. не ставьте галочку в поле Enable Archiving.
Нажмите Следующий.
Обязательные параметры (обязательно изменить!).
Рекомендованные параметры (можно не трогать).
; Для большого количества активных пользователей (более 70-80).
; Считайте РЕАЛЬНЫХ ПОЛЬЗОВАТЕЛЕЙ,
; а не количество компьютеров в сети.
; Если пользователей меньше 70-80 – не трогайте эти параметры.
; Если пользователей больше 100-200 возможно более эффективно
; использовать режим разделяемого сервера (Shared Server Mode).
sessions = 1,1*processes +5
18. Окно Database Configuration Assistant. Создание базы данных завершено. Запишите WEB-адрес для Database Control. Нажмите Закрыть.
19. БД создана и уже запущена. Для соединения с БД из других ORACLE_HOME, необходимо настроить сетевую среду Oracle для них.
20. После создания БД можно изменить некоторые настройки для БД. Для нужно выполнить несколько sql-команд в sqlplus (или TOAD) под SYS и перезапустить БД.
Запустите sqlplus /nolog.
C:\> sqlplus /nolog
соединитесь с БД под пользователем sys as sysdba
SQL> conn sys/sys as sysdba
отключить использование корзины в БД
SQL> alter system set recyclebin=off scope=spfile;
отключить регистрозависимость пароля
SQL> alter system set sec_case_sensitive_logon=FALSE scope=both;
(по желанию) чтобы не менять пароль пользователям каждые 60 дней
вместо unlimited можно поставить число = количеству дней
SQL> alter profile DEFAULT limit password_life_time unlimited;
SQL> shutdown immediate
SQL> startup
21. Старые версии клиентов 8, 9, 10, 11 не могут соединиться с Oracle 12c с ошибками:
Для решения проблемы нужно добавить в sqlnet.ora на сервере
22. Некоторые клиенты oracle 10 и 11 падают с ORA-01031: insufficient privileges при попытке выполнить
Starting 12c, the SELECT ANY DICTIONARY privilege no longer permits access to security sensitive data dictionary tables DEFAULT_PWD$, ENC$, LINK$, USER$, USER_HISTORY$, and XS$VERIFIERS. This change increases the default security of the database by not allowing access to a subset of data dictionary tables through the SELECT ANY DICTIONARY privilege.
Читайте также: