У дома / Мобилна ОС / Създайте ръчно база данни на Oracle. Използване на DBCA за създаване на база данни Създаване на база данни в oracle

Създайте ръчно база данни на Oracle. Използване на DBCA за създаване на база данни Създаване на база данни в oracle

Създаване на база данни на Oracle 12c с помощта на асистента за конфигуриране на база данни

1. Бягайте. Натиснете бутона Windows на клавиатурата си, ще бъдете отведени до началния екран ( започнетеекран), в долната част на екрана има бутон за извикване на екрана с приложения ( Приложенияекран). Кликнете върху него.

2. На екрана Приложенияизберете икона Помощник за конфигуриране на база данни.

3. Прозорец Помощник за конфигуриране на база данни - Операция с база данни. Изберете Създайте база данни. Щракнете върху Следващия.

4. Прозорец Помощник за конфигуриране на база данни—Режим на създаване. Изберете разширен режим. Щракнете върху Следващия.

5. Прозорец Помощник за конфигуриране на база данни - Шаблон за база данни. Изберете Персонализирана база данни. Щракнете върху Следващия.

6. Прозорец Помощник за конфигуриране на база данни - Идентификация на база данни. Посочете базово име. В полето Име на глобална база данниВъведете вашето име DB. Името може да бъде произволно, не повече от шест знака, да започва с буква и да не съдържа специални знаци, долни черти и интервали, напр. тестили rp34. В полето SIDвъведете уникален идентификатор на базата данни. Направете го същото като името на DB. Щракнете върху Следващия.

7. Прозорец Помощник за конфигуриране на база данни—Опции за управление. Поставете отметка в квадратчето Конфигурирайте Enterprise Manager (EM) Database Express. В полето EM база данни ExpressPortвъведете номера на порта (номерът на порта по подразбиране е 5500 - оставете го). Щракнете върху Следващия.

8. Прозорец Помощник за конфигуриране на базата данни - Удостоверения за база данни. Задайте пароли за системни потребители (в този пример една и съща парола е зададена за всички потребители на системата, не е необходимо да правите това в индустриална база данни). Проверете Използвайте една и съща административна парола за всички сметки, въведете паролата. Въведете парола за Потребителска парола за дома на Oracle– собственикът на Oracle Home, от името на който се стартират услугите на Oracle (този потребител, който създавате или посочвате, когато инсталиране на Oracle-). Щракнете върху Следващия.

9. Прозорец Помощник за конфигуриране на база данни—Мрежова конфигурация. Изберете процес на слушател или създайте нов. Щракнете върху Следващия.

10. Прозорец Помощник за конфигуриране на база данни - Места за съхранение. Посочете механизма за съхранение на файлове на база данни (в този пример е посочена файловата система). Изберете файлСистема. Посочете местоположението на основните файлове (в този пример ще бъдат използвани пътищата по подразбиране). Проверете използвайтебаза даннифайлМестоположенияотШаблон.

Посочете опциите за възстановяване на базата данни (в този пример опциите за възстановяване не се използват). Поставете отметка в квадратчето ПосочетеБързВъзстановяване■ площ. Това е папката по подразбиране, където се архивира RMAN и се съхраняват архивирани копия на регистрационни файлове за повторно изпълнение. По подразбиране папката се намира в (ORACLE_BASE)\fast_recovery_area. В полето БързВъзстановяване■ площможете да промените този път и изрично да зададете папката за Резервно копие. В параметър БързВъзстановяване■ площ размере зададено ограничение за размера на тази папка (по-добре е тя да бъде равна на обема на цялата харддиск). Параметър активиранеАрхивираневключва режима за архивиране на регистрационни файлове. Ако натиснете бутона редактиранеАрхиврежимПараметрислед това можете да промените шаблона за имената на архивите за повторно изпълнение, както и допълнителни пътища за мултиплексиране на архивирани копия. Оставете всичко по подразбиране.

ВНИМАНИЕ: За индустриалната база е необходимо да активирате режима на архивиране на лог файлове. Въпреки това, когато се достигне ограничението на папката Fast Recovery Area (т.е. когато е пълна), базата данни ще спре и ще изчака свободно място. Ето защо, ако не можете да наблюдавате попълването на тази папка - НЕ включвайте режима на архивиране на лог файлове, т.е. не поставяйте отметка в квадратчето активиранеАрхивиране.

Щракнете върху Следващия.

11. Прозорец Помощник за конфигуриране на база данни - Опции за база данни. Изберете необходимите основни компоненти. Щракнете върху Следващия.

12. Прозорец. Отметка Памет. Задайте метода на разпределение и размера на паметта. Изберете Типично. В полето Процентзададено количество физическа памет, който ще бъде разпределен на Oracle. Обикновено това 70-80% . Ако на сървъра освен Oracle се изпълняват други процеси, които изискват много ресурси, изберете число по-малко от 70% .

13. Щракнете върху бутона ... Прозорец Всички параметри за инициализация. Коригирайте стойностите (поле стойност) следните параметри:

Задължителни параметри (изисква се промяна!).

; За голям брой активни потребители (повече от 70-80).

; Пребройте РЕАЛНИ ПОТРЕБИТЕЛИ,

; не броят на компютрите в мрежата.

; Ако има по-малко от 70-80 потребители, не докосвайте тези параметри.

; Ако има повече от 100-200 потребители, може би по-ефективно

; използвайте режим на споделен сървър.

процеси = брой потребители*2

сесии = 1,1*процеси +5

Щракнете върху близо. Прозорец Помощник за конфигуриране на база данни - параметри за инициализация.

14. Прозорец Помощник за конфигуриране на база данни - параметри за инициализация. Отметка Оразмеряване. Изберете размера на блока на базата данни. Размерът на блока на базата данни трябва да бъде най-малко 8Kb. Ако сървърът има добра дискова подсистема ( SCSIдискове или RAID) може да избира 16Kbи по-високи (размерът на блока над 8Kbима смисъл само за големи бази). В полето размер на блокавъведете желаната стойност ( 8192 или 16384 ).

15. Прозорец Помощник за конфигуриране на база данни - параметри за инициализация. Отметка характерКомплекти. Изберете кодирането за базата данни. Кодирането трябва да бъде CL8MSWIN1251. Избрано по подразбиране използвайте по подразбиране. Ако е посочено правилното кодиране, тогава нищо не трябва да се променя. Ако посоченото кодиране не е правилно. В този случай изберете Изберете от списъка с набори от знации изберете правилното кодиране от списъка CL8MSWIN1251. В полето По подразбиранеезикизберете стойността от падащия списък Руски» и в следващото поле Територия по подразбиране- значение " Русия».

14. Прозорец Помощник за конфигуриране на база данни - параметри за инициализация. Отметка режим на свързване. Изберете Специален сървърен режим. Щракнете върху Следващия.

15. Прозорец Помощник за конфигуриране на база данни - опция за създаване. Изберете Създаване на база данни. Щракнете върху Следващия.

16. Прозорец Помощник за конфигуриране на база данни—обобщение. Проверете дали настройките са правилни. Щракнете върху Добре.

17. Прозорец Помощник за конфигуриране на база данни - Страница за напредък. Процесът на създаване на база данни е в ход. Изчакайте завършване.

18. Прозорец Помощник за конфигуриране на база данни. Създаването на база данни завършено. Запишете си уеб адреса за контрола на базата данни. Щракнете върху близо.

19. Базата данни е създадена и вече работи. За да се свържете с база данни от други ORACLE_HOME, трябва да настроите мрежова среда на Oracle за тях.

20. След като създадете базата данни, можете да промените някои настройки за базата данни. За да направите това, трябва да изпълните няколко sql команди в sqlplus (или TOAD) под SYS и да рестартирате базата данни.

Изпълнете sqlplus /nolog.

C:\> sqlplus /nolog

свържете се с базата данни като потребителски sys като sysdba

SQL> conn sys/sys като sysdba

деактивирайте използването на кошчето в db

SQL> променете системния набор recyclebin=изключен обхват=spfile;

деактивирайте чувствителността към малки и малки букви на паролата

SQL> alter system set sec_case_sensitive_logon=FALSE обхват=и двете;

коригиране на проблем с ORA-29471: DBMS_SQL достъпът е отказан

SQL> променете системния набор "_dbms_sql_security_level"=384 обхват=spfile;

(по избор) да не променяте паролата за потребители на всеки 60 дни

вместо неограничен, можете да поставите брой = брой дни

SQL> промяна на профила ограничение по подразбиране password_life_time неограничено;

DB рестартиране

SQL> незабавно изключване

SQL> стартиране

21. Старите версии на клиенти 8, 9, 10, 11 не могат да се свържат с Oracle 12c с грешки:

ORA-28040: Няма съответстващ протокол за удостоверяване - за формуляри 6i

ORA-01031: недостатъчни привилегии - за 11g клиент

За да разрешите проблема, трябва да добавите към sqlnet.ora на сървъра

SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

SQLNET.ALLOWED_LOGON_VERSION_SERVER=8

22. Някои клиенти на oracle 10 и 11 се сриват с ORA-01031: недостатъчни привилегии при опит за изпълнение

ИЗБЕРЕТЕ ИМЕ
ОТ sys. USER$u
КЪДЕ У. ТИП # = 1
ПОРЪЧАЙТЕ ДО 1

Започвайки от 12c, привилегията SELECT ANY DICTIONARY вече не позволява достъп до таблици с речник с чувствителни към сигурността данни DEFAULT_PWD$, ENC$, LINK$, USER$, USER_HISTORY$ и XS$VERIFIERS. Тази промяна увеличава сигурността по подразбиране на базата данни, като не позволява достъп до подмножество от таблици с речник с данни чрез привилегията SELECT ANY DICTIONARY.

Обходна маневра:

ПРЕДОСТАВЯ ИЗБОР НА sys. USER$ ЗА ОБЩЕСТВО;

Създаването на база данни на Oracle ръчно включва няколко стъпки. Някои от тях зависят от операционна система. Например, в среда на Windows, преди да създадете база данни, първо трябва да стартирате програмата Oracle, използвана за създаване на услугата за база данни. Стъпки за ръчно създаване на база данни:

  1. Напишете скрипт за създаване на база данни. Пример за такъв сценарий е даден в стъпка 6.
  2. Създайте структура на директория, която ще хоства новата база данни. Следвайте инструкциите за създаване на оптимална гъвкава архитектура.
  3. Променете съществуващия примерен файл init.ora, поддържан от Oracle, за да отразява настройките за новата база данни.
  4. Опишете името на SID за Oracle. На платформата Windows в подканата на операционната система въведете: set ORACLE_SID = mydb

    В UNIX въведете:

    Експортиране ORACLE_SID = mydb

  1. Установете връзка с база данни чрез SQL* Plus as СИСТЕМА / МЕНИДЖЪР като sysdbaили как / като sysdbaи въведете следната команда, за да стартирате базата данни в режим nomount: startup nomount pfile= D:/oracleadmin/mydbscripts/initMYDB.ora; Заменете вашите параметри за инициализация на мястото на стойностите на параметрите на pfile, дадени тук.
  2. След като стартирате базата данни, използвайте скрипта, който сте написали, за да създадете базата данни на Oracle. Ето пример: създайте база данни МОЯТА НОВА максимални инстанции 1 maxloghistory 1 maxlogfiles 5 maxlogmembers 5 maxdatafiles 100 файл с данни d:/oracle/oradata/mydb/system01.dbf размер 325M повторно използване на автоматично удължаване на следващ 10240K набор от знаци maxsizeIN152MSW национален набор от символи1WE8MSW национален набор от символи1WE8MSW (d :/oracle/oradata/mydb/edo01.log) размер 100M, група 2 (d:/oracle/oradata/mydb/edo02.log) размер 100M, група 3 (d:/oracle/oradata/mydb/edo03. log) размер 100M временно пространство за таблици по подразбиране TEMP tempfile d:/oracle/oradata/mydbemp01.dbf управление на обхват локална униформа размер 1M отмяна на табличното пространство UND0_TS файл с данни d:/oracle/oradata/mydb/emp0.dbf размер 150M повторно използване на autextend на следващия maxizeK ;
  • След като създадете базата данни, стартирайте скриптовете catalog.sql, catproc.sql, catexp.sql и всички нови скриптове, необходими за поддръжка на продуктите, които сте инсталирали. В UNIX система скриптовете се намират в директорията $ORACLE_HOME\rdbms\admin, а в Windows среда в $ORACLE_HOME/rdbms/admin. Прегледайте скриптовете, преди да ги стартирате, тъй като много каталожни скриптове наричат ​​други скриптове.
  • За допълнителна сигурност въведете поне някои други пароли за SYS и SYSTEM, вместо да оставяте паролите по подразбиране MANAGER и CHANGE_ON_INSTALL. Примерният скрипт в стъпка 6 създава UNDO пространство за таблици. Опциите за инициализация за него са: undo_management=AUTO undo_tablespce=UNDOTBS Единствената опция, която не можете да промените след създаването на базата данни, е размерът на блока на базата данни, който сте описали във файла init.ora, преди да бъде създадена. Параметърът DB_BLOCK_SIZE се използва за задаване на тази стойност. Например, следният ред задава размера на блока на базата данни по подразбиране на 8 KB. DB_BL0CK_SIZE=8k За да видите параметрите, които са в сила във вашата база данни, поискайте V$PARAMETER динамично търсене: изберете Name, Value, IsDefault от V$PARAMETER;

Лаборатория №1

Oracle Database 11g Express Edition база данни. Проектиране на SQL заявки

Обективен

Изучаване на потребителския интерфейс (DB) на Oracle Database 11g Express Edition и конструиране на SQL заявки.

Задачи

Създаване на връзка с база данни към Oracle Database 11g Express Edition. Проучване на обекти на HR схема и компилиране на модел на данни. Проектиране на SQL заявки за избор на данни в режимите Редактор на заявки и Конструктор на заявки.


Теоретична част

3.1. Главна информацияотносно DB

Oracle Database 11g Express Edition (Oracle Database XE) е безплатна (безплатна) версия на най-мощната релационна база данни в света. Идеален е за монтаж в образователни институциис цел обучение на учениците съвременни методиработа с релационни бази данни на Oracle и разработване на приложения за показване на потребителски данни и манипулиране на данни.

Oracle Database XE е лесен за инсталиране и лесен за управление. Можете да изтеглите инсталационни файлове за различни платформи на официалния уебсайт на Oracle http://www. /technetwork/database/database-technologies/express-edition/downloads/index. html.

Oracle Database XE може да се инсталира на компютър (хост машина) с произволен брой процесори (една база данни на компютър), но Oracle Database XE ще съхранява само до 11 GB потребителски данни, ще използва до 1 GB памет и ще използва само един процесор на хост -кола.

Oracle Database 11g Express Edition е релационна база данни, която съхранява и извлича колекции от свързана информация. В релационна база данни обектите за съхранение на информация са организирани в структури, наречени таблици. Всяка таблица съдържа редове (записи), които са съставени от колони (полета). Таблиците се съхраняват в базата данни в структури, наречени схеми. Схемите са логически структури от данни, в които потребителите на база данни съхраняват своите таблици и други обекти.


Достъпът до Oracle Database XE се осъществява чрез началната страница на базата данни, която има интуитивен графичен интерфейс. Достъпът до началната страница е организиран на базата на уеб услуга. Началната страница предоставя на потребителя уеб инструменти за администриране на база данни, създаване на таблици, изгледи и други обекти на схема, импортиране, експортиране, преглед, редактиране на данни от таблици. Тези инструменти ви позволяват да изпълнявате SQL заявки и SQL скриптове, да създавате и отстранявате грешки в PL/SQL програми, да разработвате приложения за бази данни и да генерирате отчети.

Oracle Database XE съдържа вградена HR (човешки ресурси) схема, която е пример за схема на свързана таблица. Схемата за човешки ресурси има таблици за съхраняване на фиктивна информация за служители и отдели. Таблиците съдържат общи колони, които позволяват на данни от една таблица да бъдат свързани с данни от други таблици. HR схемата е собственост на потребител на име HR.

3.2. Достъп до Oracle Database XE

Потребителите имат достъп до Oracle Database 11g Express Edition чрез сметкапотребител на база данни. При инсталиране на базата данни автоматично се създават потребителските акаунти SYS и SYSTEM - това са потребители с административни привилегии на база данни. Потребителски акаунт на HR, който няма административни привилегии, също се създава автоматично.

От съображения за сигурност обаче потребителският акаунт на HR е заключен. Трябва да отключите този акаунт, преди да можете да започнете да работите с обекти на HR схема. Можете да използвате командния ред SQL*Plus, за да направите това.


За да отключите потребителски акаунт с помощта на командна линия SQL*Plus, имате нужда от:

Бутон Старт -> Всички програми -> Oracle Database 11g Express Edition -> Стартиране на SQL команден ред. Свържете се като потребител на СИСТЕМАТА:

    Въведете connect Въведете име, с което да се свържете: СИСТЕМА Въведете парола:<пароль-для-SYSTEM >
След успешно свързване (съобщението е свързано), въведете следния SQL оператор:

SQL> ПРОМЕНИ ОТКЛЮЧВАНЕ НА АКАУНТ НА ​​ПОТРЕБИТЕЛСКИЯ ЧР;

Въведете паролата за потребител HR, като използвате следния SQL оператор:

SQL> ПРОМЕНИ ПОТРЕБИТЕЛСКИЯ ЧР, ИДЕНТИФИЦИРАН ОТ HR;

За да излезете от редактора, въведете SQL израза:

Прозорецът на редактора на командния ред SQL*Plus е показан на фигура 1. 1.1.

Ориз. 1.1. Прозорец на редактора на командния ред SQL*Plus

Свързването с база данни на Oracle Database XE става чрез началната страница, базиран на браузър уеб интерфейс за извършване на различни административни операции на база данни, включително следното:

    Мониторинг на базата за съхранение (Storage); Мониторинг на сесии на база данни (Sessions); Преглед на параметрите за инициализация на базата данни (Параметри); Първи стъпки с Oracle Application Express (Application Express).

Достъп до началната страница: бутон Старт -> Всички програми -> Oracle Database 11g Express Edition -> Първи стъпки.

Началната страница на Oracle Database XE се появява в прозореца на уеб браузъра (Фигура 1.2).

Ориз. 1.2. Начална страница на Oracle Database XE

Щракнете върху бутона Application Express. Когато бъдете подканени за информация за вход, въведете: потребителско име - СИСТЕМА, парола -<пароль-для-SYSTEM >, както в редактора на командния ред SQL*Plus. Щракнете върху бутона Вход (фиг. 1.3).


Ориз. 1.3. Свързване на потребител с ролята на администратор на база данни към Oracle Database XE

Следващата стъпка е да създадете работно пространство на Oracle Application Express за потребителя на HR. Това работно пространство ще съдържа всички приложения за бази данни, с които потребителят на човешки ресурси може да работи. Формулярът за създаване на работно пространство е показан на фиг. 1.4.

Ориз. 1.4. Създаване на работно пространство на Oracle Application Express

Application Express Username е името на работното пространство. Можете да използвате или потребителско име (HR), или всяко друго (например hr_apex). Потвърдете паролата. Щракнете върху Създаване на работно пространство. На следващата страница щракнете Щракнете тук, за да влезете в работното пространство. Първият път, когато се опитате да влезете в работното пространство, ще бъдете подканени да нулирате паролата за работното пространство (можете да използвате същата парола или различна).

Създаването на работно пространство на Oracle Application Express трябва да се извърши само веднъж. За следващите връзки към базата данни използвайте опцията Вече имате акаунт? Влезте тук. За да влезете в работното пространство, ще се покаже формуляр за Oracle Application Express, фиг. 1.5.

За да пропуснете стъпките на авторизация на потребителя на СИСТЕМАТА и преминаване към формата фиг. 1.5, копирайте и запазете URL адреса на този формуляр (например http://127.0.0.1:8080/apex/f?p=4550:1:494885012264286) и го използвайте в уеб браузър, за да започнете директно да работите с оторизацията форма.


След влизане в работното пространство на Oracle Application Express се отваря началната страница, на която се намират основните контроли - Application Builder, SQL Workshop, Team Development, Административни икони (фиг. 1.6).

Фигура 1.6. Икони за управление на началната страница на приложението Express Workspace на Oracle

Щракването върху изображението на иконата предизвиква преход към нова страница с икони на разрешени операции. Щракването върху иконата на SQL Workshop ви позволява да получите достъп до инструменти за изследване на обекти на база данни (Object Browser, Utilite) и работа с SQL заявкиКоманди, SQL скриптове, Конструктор на заявки (фиг. 1.7).

Ориз. 1.7. Инструменти за изследване на обекти на база данни и работа със SQL заявки

3.3. Достъп до данни с SQL

SQL е непроцедурен език за достъп до база данни. SQL изразите са предназначени да изпълняват различни задачи, като например извличане на данни от таблици в Oracle Database XE. Всички операции с базата данни се извършват с помощта на SQL изрази. Можете да извършите следните операции с помощта на SQL изрази:

    запитване, вмъкване и актуализиране на данни в таблици; Форматиране на данни, извършване на изчисления въз основа на данни, съхраняване и отпечатване на резултати от заявка; изучаване на структурата на таблиците и дефиниране на обекти на базата данни.

Създаване на заявки за извличане на данни

Синтаксис на израза SELECT за избор на всички записи в таблицата


Можете да посочите псевдоним след името на колоната в списъка за избор, като използвате интервал като разделител. Ако псевдонимът съдържа интервали или специални знаци, като например знака за число # или знака за долар $, или ако е чувствителен към малки и големи букви, поставете псевдонима в кавички "". пример:

SELECT employee_id "Идентификационен номер на служител",

last_name "Фамилия на служител",

first_name "Собствено име на служител"

Лимит за извадка от редове

Можете да ограничите броя на редовете, които се извличат от базата данни, като използвате клаузата WHERE в SQL израза. Чрез добавяне на клауза WHERE можете да посочите условие, което трябва да бъде изпълнено, и ще бъдат върнати само онези редове, които отговарят на условието.

Когато използвате клаузата WHERE:

    клаузата WHERE непосредствено следва клаузата FROM в синтаксиса на SQL израза; клаузата WHERE се състои от ключовата дума WHERE и условие (или множество условия); условието на клаузата WHERE определя сравнение на стойности, което ограничава броя на редовете, върнати от заявката.

Обединяване на таблици

Понякога се налага да се показват данни от няколко таблици. За да направите това, клаузата FROM на израза SELECT посочва списък с имена на таблици, от които да се извличат данни. Ако информацията идва от повече от една таблица, таблиците се обединяват.


Например в таблицата EMPLOYEES колоната DEPARTMENT_ID представлява номера на отдела на служителя. Таблицата DEPARTMENTS има колона DEPARTMENT_ID, както и колона DEPARTMENT_NAME. Можете да комбинирате данни от таблиците EMPLOYEES и DEPARTMENTS, като използвате колоната DEPARTMENT_ID и да генерирате отчет, който ще показва имена на служители и отдели.

Вътрешна маса се съединява

Вътрешно съединение свързва колони от свързани таблици въз основа на общо поле или комбинация от общи полета. С това присъединяване резултантният набор не включва редове от никоя от таблиците, които нямат съвпадение в друга таблица. При вътрешните съединения трябва стриктно да се спазва условието за свързване.

естествен съюз

Естественото свързване ви позволява да показвате данни от две таблици, когато стойност в една колона в една таблица директно съвпада със стойност в друга колона във втората таблица. Ако две таблици включват една или повече колони, които имат еднакви имена и типове данни, естественото свързване връща всички редове от двете таблици, които имат еднакви стойности във всички съвпадащи колони. Често този тип присъединяване включва колони с първичен ключ и външен ключ.

Синтаксис

пример:

ИЗБЕРЕТЕ идентификатор на служител, фамилия, име, идентификатор на отдел,

наименование на отдел, идентификатор на мениджър

ОТ служителите NATURAL JOIN отдели

Съединяване на две таблици с оператора USING

Инструкцията USING ви позволява да посочите колоните, които ще се използват за свързване между две таблици. Имената на колоните трябва да са еднакви и за двете таблици и трябва да са от съвместими типове данни. Използвайте оператора USING, ако вашите таблици съдържат повече от една колона, чиито имена съвпадат и трябва ясно да дефинирате името на колоната, в която искате да се присъедините към таблиците.


Синтаксис


Обединете таблици с идентификация на колони. ON изявление

Инструкцията ON се използва за определяне на условие за присъединяване за две таблици или условие за самостоятелно присъединяване за таблица. Инструкцията ON ви позволява да напишете условие за присъединяване за различни имена на колони, но типовете данни на тези колони трябва да съвпадат.

Синтаксис

ОТ служители ПРИСЪЕДИНЕТЕ се job_history

Прилагане на допълнителни условия за присъединяване

Често е необходимо да се комбинират данни от две таблици, за да бъдат изпълнени някои допълнителни условия. Например, да приемем, че искате да покажете резултата от присъединяването на таблиците EMPLOYEES и DEPARTMENTS само за служителя, чийто идентификационен номер е 149. За да добавите още условия към оператора ON, можете да добавите оператор AND. Можете също да използвате клаузата WHERE, за да приложите допълнителни условия към предварително избрани редове в таблицата.

Използване на оператора И

и д. мениджър_идентификатор = 149

Използване на клаузата WHERE

ИЗБЕРЕТЕ e. Employee_id e. фамилия e. department_id,


д. department_id, d. location_id

ОТ служители e ПРИСЪЕДИНЕТЕ се отдели d

ВКЛ. (e.department_id = d.department_id)

КЪДЕ e. мениджър_идентификатор = 149

Псевдоними на таблицата

Примерите показват как се използват псевдоними за идентифициране на имена на таблици. В клаузата FROM съкращението се появява след името на таблицата. Това съкратено име се нарича псевдоним. След като псевдонимът е създаден в клаузата FROM, той може да се използва във всяка част от клаузата SELECT.

Съединяване на множество таблици

Обединяването на множество таблици се използва, когато необходимата информация е разпределена в повече от две таблици. Пример би било тристранно присъединяване - обединяване на три таблици. Да предположим, че е необходимо да се намерят служители, техните подчинени и имената на отделите за служители. Това изисква достъп до три таблици: - СЛУЖИТЕЛИ, ЗАВИСИМИ и ОТДЕЛИ. Възможно е да се присъедините толкова таблици, колкото е необходимо, за да получите последователна информация.

Синтаксис

Клаузата FROM трябва да посочва таблиците, които да бъдат обединени.

Пример

ИЗБЕРЕТЕ e. фамилия, г. първо_име, w. име на отдел
ОТ служители e

ПРИСЪЕДИНЕТЕ се зависими г

ON d. относителен_идентификатор = e. Employee_id

ПРИСЪЕДИНЕТЕ се към отдели w

ON w. идентификатор_отдел = e. department_id

Самосъединителни маси

Инструкцията ON може също да се използва за свързване на колони с различни имена (в същата таблица или в друга таблица). Ако колони с различни имена, които трябва да бъдат обединени, се намират в една и съща таблица, тогава таблиците се самосъединяват. Например, можете самостоятелно да се присъедините към таблицата EMPLOYEES въз основа на колоните EMPLOYEE_ID и MANAGER_ID.

Външни съединения на масите

Външно присъединяване също така комбинира редовете на свързани таблици въз основа на общо поле или комбинация от общи полета. Въпреки това, наборът от резултати включва редове от една от таблиците, дори ако те нямат съвпадение в друга таблица. При външните съединения условието за свързване не се спазва стриктно. Една от таблиците е задължителна - резултатният набор ще съдържа всичките си редове.

Синтаксис

LEFT е ляво външно съединение. Указва, че table1 е задължителна таблица (резултатният набор ще съдържа всички нейни редове) и table2 е по избор. За тези редове в таблица 1, които не съвпадат в таблица 2, се връща NULL.

RIGHT е дясно външно съединение. Задължителна таблица table2, table1 по избор.

FULL е пълно външно съединение. Това е двупосочно външно съединение. Полученият комплект включва:

    всички редове на вътрешната таблица съединяват; редове в таблица1, които не съвпадат в таблица2; редове в таблица 2, които не съвпадат в таблица 1.

OUTER е незадължителна ключова дума. Показва, че е в ход външно присъединяване.

ИЗБЕРЕТЕ служители.*, job_history.*

ОТ служители LEFT JOIN job_history
ON служители. дата_на наемане = история_на работа. начална дата


Групови операции

Груповите операции обработват множество редове и връщат един обобщен резултат. Всъщност те ви позволяват да комбинирате в една или друга форма подобни елементи от информацията, върната от базата данни. За извършване на групови операции Oracle предоставя общи функции и инструкции за групиране (GROUP BY, HAVING и други).

Синтаксисът на повечето общи функции е:

обща_функция (израз)

Generalizing_function - определя името на обобщаваща функция: COUNT (брой), AVG (средна стойност), MAX (максимална стойност), MIN (минимална стойност), STDDEV (стандартно стандартно отклонение), SUM (сума), VARIANCE (статистическа).

DISTINCT - показва, че функцията за обобщение трябва да разглежда само неповтарящи се стойности на израза.

ALL - показва, че обобщаващата функция трябва да вземе предвид всички стойности на израза, включително дубликати. По подразбиране се използва ВСИЧКИ.

Израз - Указва колоната или всеки друг израз, върху който да се обобщи.

NULL стойностите за изразяване чрез общи функции се игнорират и не се включват в резултата.

Изберете MAX(заплата) от Служители - Намерете максималната стойност за колоната за заплата в цялата таблица СЛУЖИТЕЛИ.

Изберете брой(*) от Региони - Изчислява броя на записите в таблицата REGIONS.

Изявление GROUP BY

Използва се във връзка с обобщаващи функции, разделя набора от резултати на множество групи и след това връща един ред с обобщена информация за всяка група. Ако има смесица от генерични и негенерични в списъка SELECT, SQL счита, че група по операция трябва да бъде изпълнена, така че всички негенерични изрази също трябва да бъдат посочени в клаузата Group by. Ако това не бъде направено, Oracle ще издаде съобщение за грешка.


Не е позволено да се използва функция за групиране (обобщаване) в клауза GROUP BY.

При групиране по колона, която съдържа стойности NULL в някои редове, всички редове със стойности NULL се поставят в една група и се представят в изхода като един обобщен ред.

За да получите обобщени резултати с помощта на клаузата GROUP BY, е възможно да филтрирате записи в таблицата с помощта на клаузата WHERE. Когато изпълнява SQL оператор, който съдържа клаузи WHERE и GROUP BY, Oracle първо прилага клаузата WHERE и премахва редове, които не отговарят на клаузата WHERE. След това редовете, които отговарят на клаузата WHERE, се групират според клаузата GROUP BY. Синтаксисът на SQL изисква клаузата WHERE да предхожда клаузата GROUP BY.

ИМАТЕ изявление

Използва се за прилагане на филтър към групи, създадени от клаузата GROUP BY. Ако заявката съдържа GROUP BY и HAVING, резултантният набор ще съдържа само онези групи, които отговарят на условието, посочено в оператора HAVING. Синтаксисът на клаузата HAVING е подобен на синтаксиса на клаузата WHERE. Но има едно ограничение за изявлението HAVING. Това условие (посочено в клаузата HAVING) може да се приложи само към SELECT списъчни изрази или клаузата GROUP BY. Ако HAVING съдържа нещо, което не е в SELECT или GROUP BY, ще бъде издадено съобщение за грешка.

Редът на операторите GROUP BY и HAVING в оператора SELECT няма значение.

Можете да използвате изразите WHERE и HAVING в една и съща заявка. Важно е да се разбере как една инструкция влияе на друга. Клаузата WHERE се изпълнява първа, а редовете, които удовлетворяват клаузата WHERE, се предават на клаузата GROUP BY. Клаузата GROUP BY свива филтрираните данни в групи и след това клаузата HAVING се прилага към групите, за да се елиминират групите, които не отговарят на клаузата HAVING.


Синтаксис за заявки с обобщаващи функции и групиране

3.4. Инструменти за създаване и изпълнение на SQL заявки

В Oracle Database XE можете да пишете и изпълнявате SQL изрази, като използвате SQL инструментКоманди (SQL редактор на заявки) или можете да използвате инструмента Query Builder (дизайнер на заявки) за изграждане на заявки с графичен интерфейс (фиг. 1.7).

Стартиране на редактора на SQL заявки: Щракнете върху иконата на SQL команди.

Въвеждане и изпълнение на SQL заявка: на страницата SQL команди напишете текстове на заявка -> изберете заявката, която трябва да изпълните -> щракнете върху бутона Изпълни. Резултатът от изпълнението на заявката е в долната част на прозореца (фиг. 1.8).

Ориз. 1.8. Въвеждане и изпълнение на SQL заявки на страницата SQL команди

Oracle Database XE има удобен графичен инструмент за създаване на SQL заявки - Query Builder. Стартиране на Query Builder: Щракнете върху иконата на Query Builder (фиг. 1.7) или върху същия елемент в падащия списък SQL Workshop -> отваря се страница на браузъра с формуляра Query Builder. В левия панел има списък с наличните таблици. Щракването върху името на таблицата -> формуляр за таблица със списък на наличните колони се поставя в горния десен панел. Във формуляра на таблицата маркирайте онези колони, за които данните трябва да бъдат включени в получения набор (фиг. 1.9).


Ориз. 1.9. Изграждане на SQL заявки на страницата на Query Builder

Разделите в долния десен панел са:

Условия - условия, наложени върху колоните на таблицата. Позволява ви да зададете псевдоними на колони, да въведете условия за избор на редове според данните на колоната, да определите типа и реда на сортиране, видимостта на резултата, функцията, приложена към колоната, необходимостта от групиране.

SQL - текстът на генерираната SQL заявка.

Резултати - резултатът от изпълнението на SQL заявката. За да го получите, щракнете върху бутона Изпълни.

Записан SQL - запазени SQL заявки. За да запазите заявката, щракнете върху бутона Запиши.

Създателят на заявки ви позволява да свързвате визуално таблици. За да обедините две таблици, трябва: изберете две таблици -> маркирате колони за резултата в техните форми -> поставите курсора върху свързаната колона на дъщерната таблица (СТРАНИ) -> натиснете десния бутон на мишката и плъзнете изображението на връзката с натиснат бутон върху свързаната колона на родителската таблица (REGIONS) ) (фиг. 1.10).

Ориз. 1.10. Проектиране на SQL заявки за обединяване на таблици

Ако задържите курсора на мишката върху изображението на връзката, се появява подсказка с условието за връзката. Щракването върху връзка извежда изскачащо меню - премахнете връзката, задайте ляво или дясно външно съединение. По подразбиране връзката дефинира вътрешно свързване на таблици.

3.5. Информация за обекти на база данни

Oracle съхранява цялата информация за обектите на базата данни в специален речникданни (речник на данни). Речникът съдържа описания на това как са организирани реалните данни. Речникът е съставен от таблици и изгледи, които могат да бъдат запитани точно както всички други таблици и изгледи в базата данни. Тези изгледи са собственост на потребител на Oracle на име SYS. Изгледите от тип user_* съдържат информация за обектите, които е текущият потребител. Можете да използвате следните изгледи, за да получите информация за потребителски обекти:

    User_tables - релационни таблици, собственост на текущия потребител; User_views - изгледи, собственост на текущия потребител; User_tab_comments - коментари за таблици, принадлежащи на текущия потребител; User_tab_columns - колони от всички таблици, собственост на текущия потребител; User_col_comments - коментари за колони от таблици и изгледи, собственост на текущия потребител; User_indexes - индекси на таблици на текущия потребител; User_cons_columns - колони в ограниченията на текущия потребител; User_constraints - ограничения за таблиците на текущия потребител; User_triggers – Тригери на базата данни, собственост на текущия потребител.

Oracle Database XE има инструменти за проучване и отчитане на обекти на база данни.

Достъп до инструмента за изследване на обекти на базата данни: иконата на Object Browser (фиг. 1.7) или съответния елемент в падащия списък SQL Workshop. По подразбиране се извършва преходът към списъка с таблици (от падащия списък може да се избере друг тип обекти на база данни за изследване). След това, след като изберете конкретен обект, се показват неговите свойства. Изгледът на страницата за показване на свойствата на таблицата ОТДЕЛЕНИЯ (раздел Таблица - показва списъка на колоните и техните свойства) е показан на фиг. 1.11.

Ориз. 1.11. Свойства на таблицата Показване: Списък с колони

Ако отидете в раздела Модел, можете да видите модела на данните – визуално представяне на връзките на изследваната таблица с други таблици на база данни (фиг. 1.12).


Фигура 1.12. Картографиране на модела на данни: Връзки в таблицата

Моделът на данни, показан на фигурата, показва, че таблиците LOCATIONS и EMPLOYEES са родител на въпросната таблица DEPARTMENTS. Те са показани в модела над изследваната таблица. Самата таблица DEPARTMENTS е родител на таблиците JOB_HISTORY и EMPLOYEES (разположена под таблицата DEPARTMENTS). Подобна информация за родителските (по отношение на изследваните) таблици може да се види в раздела Зависимости (списък с препратки).

Достъп до отчети: Икона на Utilities (фиг. 1.7) или съответния елемент от падащия списък SQL Workshop -> елемент на списък (или икона) Обект отчети -> елемент от списък по параметър, който ви интересува. Например за списъка Table Reports - колони, коментари, ограничения и т.н. (фиг. 1.13).

Ориз. 1.13. Доклади за обекти

Използвайки тези инструменти, можете да получите доста пълна информация за основните обекти, налични в базата данни.


Мерки за сигурност

По време на изпълнение имате нужда от:

    спазвайте правилата за включване и изключване на компютърно оборудване; не свързвайте към компютъра кабели, конектори и друго оборудване, което не е свързано с лабораторната инсталация; когато мрежовото напрежение е включено, не изключвайте, не свързвайте и не докосвайте свързващите кабели различни устройствакомпютър; в случай на неизправност в работата на оборудването или нарушение на правилата, уведомете ръководителя на лабораторната работа; не се опитвайте да отстранявате сами неизправности в работата на оборудването; след приключване на работата подредете работното място.

ВНИМАНИЕ! Когато работите на компютър, трябва да запомните: животозастрашаващо напрежение е свързано към всяко работно място. Затова по време на работа трябва да бъдете изключително внимателни и да спазвате всички изисквания за безопасност!

Упражнение
Стартирайте интернет браузър, напр. Google Chrome. Стартирайте началната страница на Oracle Application Express на адрес http://127.0.0.1:8080/apex/. Влезте в базата данни като потребител на човешки ресурси. С помощта на редактора на SQL заявки създайте и изпълнете заявка за избор на данни от таблицата EMPLOYEES, като използвате инструкцията за сортиране по имена на служители. С помощта на конструктора на SQL заявки създайте и изпълнете заявка, за да изберете данни от таблицата DEPARTMENTS, като използвате инструкцията за сортиране по име на отдел. С помощта на редактора на SQL заявки създайте и изпълнете заявка, за да изберете данни от свързаните таблици ОТДЕЛИ и СЛУЖИТЕЛИ, като използвате псевдоними на руски колони и сортиране. Заявката трябва да върне имената на всички отдели, пълните имена на ръководителите на тези отдели, техните имейл адреси /text/category/zarabotnaya_plata/" rel="bookmark">заплата по отдел, средна заплата по отдел. Получете пълна информация за обекти на база данни – таблици, колони, ограничения, изгледи, включително всички коментари и типове данни Въз основа на тази информация изградете модел на данни, върху който да се показват всички таблици и връзките между тях.

Упътвания:

    получаване на обща информация за връзките между таблици с помощта на инструмента за браузър на обекти; подробна информацияразберете връзките между таблиците с помощта на заявка

изберете uc. table_name "Таблица",

uc. constraint_name "Ограничение за външен ключ",

ucc1.column_name "Външно ключово поле",

ucc2.table_name "Създава маса",

uc. r_constraint_name "Огър в RT",

ucc2.column_name "Ключово поле в RT"

от user_constraints uc

присъединете се към user_cons_columns ucc1 към ucc1.constraint_name = uc. име на ограничение

присъединете се към user_cons_columns ucc2 към ucc2.constraint_name = uc. r_constraint_name

където uc. constraint_type="R";

    представи модела на данни в графична форма с помощта на MS Word, MS Visio или ERWin Data Modeller.

Изисквания към съдържанието и оформлението на доклада

Докладът трябва да бъде попълнен в текстов редактор MS word. Докладът трябва да съдържа:

    Кратка теоретична информация, Графичен модел на данни, Текстове на всички SQL заявки с коментари към всяка инструкция, използвана в заявката, Резултатни таблици с данни за всички изпълнени заявки, Заключения за извършената работа.
тестови въпроси

7.1. Каква е целта на Oracle Database XE?

7.2. Как се свързва потребителят към база данни на Oracle Database XE?

7.3. Какви инструменти прави потребителски интерфейс Oracle Database XE база данни за работа със SQL заявки?

7.4. Какви инструменти предоставя потребителският интерфейс на базата данни на Oracle Database XE за изследване на обекти на база данни?

7.5. Какъв е синтаксисът на израза SELECT?

7.6. Каква е целта на клаузата WHERE?

7.7. Какви са видовете свързвания на таблици?

7.8. Каква е разликата между вътрешните и външните съединения на масата?

7.9. За какво се използват груповите операции?

7.10. Как трябва да се използват изразите GROUP BY и HAVING?

Това е втората част от урока за създаване на база данни. Урокът е практичен, по време на урока ще се използва сървърът Oracle, който беше инсталиран в първия урок. Така че нека да започнем:

Помощникът за конфигуриране на база данни (dbca) се използва за създаване на базата данни. Той, както повечето помощни програми, се намира в директорията bin. Oracle сървър. В конзолата изпълняваме:

[защитен с имейл]: cd /u01/app/oracle/product/11.1.0/db_1/bin
[защитен с имейл]:./dbca

Ще има изстрелване графично приложениев който да работим. Oracle ви позволява да създавате база данни "на ръка", без да използвате различни помощни програми, но ще говорим за това по-късно.

Първият екран просто съобщава за стартирането на помощната програма, нейната цел. Незабавно преминаваме към втората стъпка, като щракваме върху следващия.

Втората стъпка е да изберете действието, което да се извърши. Ако няма други бази данни на компютъра, тогава някои опции ще бъдат недостъпни. Например, като изтриване на база данни или настройка. Сега се интересуваме от създаването, така че избираме опцията „Създаване на база данни“ и продължаваме напред.

Сега от нас се иска да изберем шаблон на база данни, който ще се използва по време на създаването. General е често срещан шаблон за повечето бази данни. Хранилище за данни - хранилище за данни, предназначено да съхранява данни и малък брой транзакции. Персонализирана база данни - напълно персонализирана база данни за вашите нужди, в зависимост от ситуацията.
Изберете Обща цел на обработката на транзакции и продължете напред.

Тази стъпка ви подканва да посочите глобалното име на база данни (глобално име на база данни) и SID (системен идентификатор). Обикновено глобалното име е SID с име на домейн. Системният идентификатор уникално идентифицира базата данни. Дължината му не трябва да надвишава 8 знака и не може да започва с число. Избрах името "testdb" и глобалното име "testdb.all-oracle.ru" за моята база данни. Да продължим напред.

Посочете опциите, които да бъдат включени в създаваната база данни. Посочено "Конфигуриране на Enterprise Manager", опцията "Конфигуриране на контрол на базата данни за локално управление" се отметна автоматично. Ако сте конфигурирали Grid, тогава конфигурацията ще бъде различна. Мрежовата технология ще бъде обсъдена по-късно.

Освен това, ако е необходимо, ние активираме уведомяване от електронна пощаи автоматично архивиране на зоната за възстановяване. Оставих тези опции без отметка, защото тестовата машина няма достъп до Интернет за изпращане на съобщения и няма нужда от резервно копие. Ако желаете, можете да включите тези опции във вашата база данни. За да направите това, маркирайте и посочете необходимата информация. За имейл известия SMTP сървър и адрес, на който да се изпрати. За време за архивиране и идентификационни данни за оторизация на ниво операционна система. Да продължим напред.

Тази стъпка ви подканва да предоставите пароли за вградени акаунти в Oracle. Можете да посочите отделни пароли за всеки акаунт или да изберете опцията „Използване на една парола за всички акаунти“. Трябва да се отбележи, че преди Oracle 11g всичко беше преобразувано в главни букви и влизанията с парола не бяха чувствителни към главни букви. Започвайки с версия 11g, регистърът започна да се различава по отношение на изискванията за сигурност. За съвместимост с предишни версииВъзможно е да се зададе ниво на сигурност.

Тук избираме съхранение. Предлагана файлова система (файлова система), автоматично управление на съхранението - ASM (автоматично управление на съхранение) или сурови устройства (буквално необработени устройства). В нашия случай ние избираме файлова системаи продължете напред. По-късно ще говорим за други методи за съхранение.

Посочете местоположението на файловете на базата данни. Можете да избирате от шаблон, предлаган от Oracle, общо местоположение за всички файлове на базата данни или да използвате файлове, управлявани от Oracle.

Посочете местоположението на зоната за възстановяване на Flash и нейния размер. Преди това създадохме директория за FRA и сега указваме пътя към нея, размерът остава непроменен.

Flash Recovery Area е нова опция, налична от версия 10g и е в основата на функция, наречена Automated Disk-Based recovery. FRA - част от дисковото пространство за съхранение и управление на файлове. Той е напълно отделен от други компоненти на базата данни, като файлове с данни, регистрационни файлове за повторно изпълнение и контролни файлове. Областта за възстановяване на Flash се използва от помощната програма Oracle Recovery Manager (RMAN), за да се гарантира, че базата данни може да бъде възстановена въз основа на файловете, записани в зоната за възстановяване на Flash. Областта на Flash Recovery ще бъде обсъдена по-подробно в класовете за възстановяване на базата данни.

На същия екран можете да щракнете върху бутона File Location Variables..., за да видите обобщен отчет за местоположението на файловете на Oracle, включително текущата настройка на ORACLE_BASE.

На тази стъпка се предлага да инсталирате схеми с примери и да стартирате някой от вашите скриптове, ако има такива. Посочете, за да инсталирате примери и да продължите напред. Ще ви трябват в следващите уроци.

Сега се предлага да се посочат настройките на паметта, вида на връзката със сървъра, кодирането. Тъй като сега просто създаваме примерна база данни и не си поставяме задачата за фина настройка, оставяме стойностите по подразбиране. В раздела Connection Mode изберете "Dedicated server Mode" - режимът на специален сървър. Като щракнете върху бутона "Всички параметри за инициализация...", можете да видите параметрите за инициализация. Те ще бъдат показани в таблица:

Тук можем да променим параметрите според нуждите. Ако нищо не се изисква, затворете прозореца и продължете напред.

Настройки на сигурността. Ще бъдете подканени да изберете настройки преди версия 11g или нови, които са въведени след версия 11g. Основната разлика за потребителя е чувствителността на малки и големи букви. Указваме да използваме новите настройки и да продължим по-нататък.

На този етап се предлага активиране на задачи за автоматична поддръжка. Например събиране на статистика. Деактивирайте и продължете напред.

Посочете местоположението на файловете с данни, регистрационните файлове, контролните файлове. Ако всичко устройва, тогава продължете.

Последната стъпка е да завършите създаването на базата данни. Също така, ако можете да запишете създадената база данни като шаблон. Това е уместно, ако сте създали конкретна база данни с куп настройки за конкретен случай и в бъдеще често ще създавате бази данни по шаблон.

Щракнете върху бутона "Край" и процесът на създаване на база данни ще започне. Това ще отнеме известно време, в зависимост от настройките на създаваната база данни и мощността на компютъра, от десет минути до един час.

Ако създаването на база данни приключи успешно, ще се появи следният прозорец:

Ето основните параметри на базата данни, връзка за работа с Enterprise Manager. Освен това, като щракнете върху бутона "Управление на пароли ...", можете да зададете пароли за вградени акаунти, да зададете или премахнете потребителски брави.

След промяна на паролите, ако има такива, щракнете върху "Изход", това завършва създаването на базата данни.

С това урокът завършва. В четвъртия урок ще научим как да спрем и стартираме екземпляр на база данни, да научим какво е слушател, да научим как да се свързваме с база данни от sqlplus.

Ако сте системен администратор или разработчик на Linux, идва момент, когато трябва да управлявате база данни на Oracle, която може да работи във вашата среда.

В този случай е важно да се разберат някои от основните DBA дейности на Oracle. В този урок ще ви покажем как да създадете база данни на Oracle от командния ред.

Когато инсталирате софтуера на Oracle, той ще ви даде възможност да създадете нова база данни от потребителския интерфейс.

Ако решите да не създавате нова база данни, а само да инсталирате софтуер Oracle, тогава можете да създадете базата данни отделно.

Да се създайте база данни на Oracle , имате две опции:

  1. Използвайте помощника за конфигуриране на база данни (DBCA) и създайте нова база данни с помощта на GUI. Това е доста право напред.
  2. Използвайте командата „Създаване на база данни“, за да създадете нова база данни на Oracle от командния ред. Този метод е полезен, когато нямате достъп до сървърната конзола за изпълнение на DBCA. Или, ако вашият сървър няма правилните настройки на Xterm, използвайте този метод.

1. Задаване на подходящите променливи на средата на Oracle

Първо, трябва да зададете правилно подходящата променлива на средата на сървъра.

Този пример предполага, че oracle е инсталиран в директорията /u01/app/oracle/product. Променете тази стойност, за да отговаря на вашата среда.

експортиране ORACLE_BASE=/u01/app/oracle експортиране ORACLE_HOME=/u01/app/oracle/product/11.2.0

Повечето важен параметъре ORACLE_SID, който ще има името нова база данни на Oracleтози, който искате да създадете. В този пример името на новата база данни е зададено на "dev", както е показано по-долу.

Експортиране ORACLE_SID=dev

2. Създайте файла ini-initdev.ora

След това създайте ora.ini файл за новата база данни. Това е файлът за инициализация на новата база данни.

В зависимост от вашата версия на Oracle, може да видите примерен файл init.ora в $ORACLE_HOME. Ако имате, използвайте го като база и редактирайте стойностите съответно.

cd $ORACLE_HOME/dbs cp init.ora initdev.ora

Забележка:

Както е показано по-горе, файлът за инициализация за новата база данни трябва да бъде в следния формат: INIT (ORACLE_SID) .ora - Така че в този случай името на файла ще бъде: initdev.ora

Ако не виждате шаблона init.ora по подразбиране във вашия $ORACLE_HOME/DBS, използвайте следния пример.

*.db_name="dev" *.db_domain="" *.audit_file_dest="/u01/app/oracle/admin/dev/adump" *.audit_trail="db" *.compatible="11.2.0.0.0" * .memory_target=1G *.control_files="/u01/app/oracle/oradata/dev/control01.ctl","/home/oracle/u02/oradata/dev/control02.ctl" *.db_block_size=8192 *.diagnostic_dest= "/u01/app/oracle/admin/dev" *.open_cursors=250 *.processes=100 *.remote_login_passwordfile="EXCLUSIVE" *.undo_tablespace="UNDOTS"

В споменатия файл трябва да се имат предвид няколко точки:

  • В посочения файл се уверете, че сте задали db_name на името на ORACLE_SID, зададено в предишната стъпка
  • Както и да се казва undo_tablespace, ние показваме, че трябва да използваме точното име в командата CREATE DATABASE.
  • Променете местоположението на директориите по подходящ начин въз основа на вашата система. Не забравяйте да промените "dev" в горната директория на вашето ORACLE_SID име.

3. Създайте файл с параметри за обслужване (spfile)

SP файл означава файл с параметри на сървъра. За разлика от sp файла, файлът се инициализира в двоичен файл и не можете да редактирате SPFILE ръчно.

sp файлът се създава от ini файла. Предимството на sp файла е, че можете да промените стойността на параметрите за инициализация след стартиране на базата данни с помощта на командата ALTER SYSTEM.

С други думи, когато използвате командата "ALTER SYSTEM" за промяна на стойност на параметър, тя ги записва в sp файла.

След това, когато стартира базата данни на Oracle, тя първо търси sp файла за стойността на параметъра. Ако не може да намери sp файла, тогава ще използва текста въз основа на ini файла.

За да създадете sp файл за нашата нова база данни, използвайте следната команда.

Първо, използвайте sqlplus командаи получаваме SYSDBA Oracle подкана, откъдето ще създадем нова база данни.

$ sqlplus / като sysdba Свързан с неактивен екземпляр. SQL>

Ако забележите в изхода по-горе, пише „Свързан с неактивен екземпляр.“. Това е така, защото нашият текущ ORACLE_SID е настроен на dev, което е нова база данни, която все още не сме създали.

Така че първата стъпка е да създадете нов sp файл, базиран на ini файла. spfile означава ini файл. Следната команда ще създаде нов spfile.

SQL> СЪЗДАЙТЕ SPFILE ОТ PFILE; Файлът е създаден.

Както можете да видите по-долу, командата автоматично създаде spfiledev.ora.

$ ls -1 $ORACLE_HOME/dbs/ initdev.ora spfiledev.ora

4. Стартирайте Idle Instance

Преди да създадем базата данни, трябва да стартираме екземпляр за базата данни "dev" с командата STARTUP NOMOUNT. Както може би се досещате, тази команда няма да се свърже с базата данни. Лесно е да стартирате нов празен прост ORACLE_SID екземпляр с име "dev".

SQL> НОМЕРА ЗА СТАРТ; Започна екземплярът на ORACLE. Обща глобална площ на системата 1258291200 байта Фиксиран размер 1261564 байта Променлив размер 520093700 байта Буфери на базата данни 721420288 байта Повторни буфери 15515648 байта

В командата по-горе той ще прочете spfile по подразбиране с име spfile(ORACLE_SID).ora от местоположението на spfile по подразбиране $ORACLE_HOME/dbs. Ако spfile не съществува, той по подразбиране ще бъде init(ORACLE_SID).ora инициализация на файла

По някаква причина, ако искате да посочите местоположението на вашия spfile, можете да го направите, като предадете параметъра spfile, както е показано по-долу.

SQL> STARTUP NOMOUNT PFILE=/tmp/initdev.ora

Също така може да получите следните ORA-01078 и LRM-00109, ако spfile или файлът за инициализация не е в местоположението по подразбиране.

SQL> STARTUP NOMOUNT ORA-01078: повреда в обработката на системните параметри LRM-00109: не можа да се отвори файл с параметри "/u01/app/oracle/product/11.2.0/dbs/initdev.ora"

5. Създайте нова база данни на Oracle

Използвайте следната команда CREATE DATABASE, за да създадете празна база данни.

SQL> СЪЗДАВАНЕ НА БАЗА ДАННИ dev ПОТРЕБИТЕЛСКА СИСТЕМА ИДЕНТИФИЦИРАНА ОТ DevSysPass ПОТРЕБИТЕЛСКА СИСТЕМА ИДЕНТИФИЦИРАНА ОТ DevSystemPass LOGFILE GROUP 1 ("/home/oracle/u02/oradata/dev/redomed_01.log") РАЗМЕР 50M (/uhome/ora GROUP) oradata/dev/redomed_02.log") РАЗМЕР 50M, MAXLOGFILES 5 MAXLOGHISTORY 10 MAXDATAFILES 50 НАБОР ОТ СИМВОЛА US7ASCII НАЦИОНАЛЕН НАБОР ОТ ЗНАКОВЕ AL16UTF16 ДАННИ ФАЙЛ "/home/oracle/u02/10System_DATAFILE"/home/oracle/u02/10System_System__ /oracle/u02/oradata/dev/sysaux01.dbf" РАЗМЕР 100M ПОВТОРНА ИЗПОЛЗВАНЕ НА ПОВТОРНА ИЗПОЛЗВАНЕ НА ТАБЛИЧНО ПРОСТРАНСТВО ПОТРЕБИТЕЛСКИ ФАЙЛ "/home/oracle/u02/oradata/dev/users01.dbf" РАЗМЕР 50M ПОВТОРНА ИЗПОЛЗВАНЕ НА АВТОМАТИЧНО РАЗШИРЯВАНЕ НА МАКС. home/oracle/u02/oradata/dev/tempts01.dbf" РАЗМЕР 30M ПОВТОРНО ИЗПОЛЗВАНЕ ОТМЕНЯТЕ ПРОСТРАНСТВО ЗА ТАБЛИЦА ОТМЕНЯТЕ ДАННИ ФАЙЛ "/home/oracle/u02/oradata/dev/undots01.dbf" РАЗМЕР 100M ПОВТОРНО ИЗПОЛЗВАНЕ АВТОМАТИЧНО РАЗШИРАНЕ НА МАКСИМАЛЕН РАЗМЕР

В горната команда:

  • Командата Създаване на база данни ще създаде база данни на Oracle с име "dev"
  • Паролата, посочена във 2-рия ред, ще бъде присвоена на потребителя SYS
  • Паролата, посочена в 3-тия ред, ще бъде присвоена на потребителя на СИСТЕМАТА
  • Създаваме два повтарящи се журнала с размер от 100MB всеки.
  • MAXLOGFILES - Максималният брой регистрационни файлове е настроен на 5
  • MAXDATAFILES – Това показва максималния брой файлове с данни на Oracle, които могат да бъдат създадени за тази база данни.
  • DATAFILE - Посочва файла с данни, който да се използва в таблицата SYSTEM
  • SYSAUX DATAFILE - Това показва, че файлът с данни ще се използва в пространството за таблици SYSAUX
  • Табличното пространство по подразбиране за тази база данни е зададено на USERS
  • Временното пространство за таблици е настроено на TEMPTS по подразбиране
  • Пространството за таблици за отмяна е зададено на UNDOTS

Забележка:

Ако зададете DB_CREATE_FILE_DEST във файла за инициализация на местоположение в директория, тогава не е необходимо да указвате точното местоположение и имена на файлове за всички файлове с данни, Oracle се грижи за това вместо вас.

Например, ако сте посочили това във файла initdev.ora.

# vi initdev.ora DB_CREATE_FILE_DEST="/home/oracle/u02/oradata/dev"

В този случай можете да опростите вашата команда CREATE DATBASE, както е показано по-долу.

SQL> СЪЗДАВАНЕ НА БАЗА ДАННИ dev ПОТРЕБИТЕЛСКА СИСТЕМА ИДЕНТИФИЦИРАНА ОТ DevSysPass ПОТРЕБИТЕЛСКА СИСТЕМА ИДЕНТИФИЦИРАНА ОТ DevSystemPass MAXLOGFILES 5 MAXLOGHISTORY 10 MAXDATAFILES 50 НАБОР СМОВА US7ASCII НАБОР НА СИМВОЛИ US7ASCII НАЦИОНАЛЕН СХЕМАТЕЛ 16.

Командите по-горе ще създадат подходящите файлове с данни, необходими за всички пространства за таблици (отмяна, временни и т.н.) според местоположението, посочено в директорията DB_CREATE_FILE_DEST.

6. Създайте речник на данните за изгледи

Като последна стъпка стартирайте catalog.sql и catproc.sql. скриптът на директория ще създаде всички таблици с речник, изгледи, свързани с производителността, необходимите публични синоними. Освен това ще осигури подходящ достъп до всички създадени синоними. Скриптът catproc изпълнява всички скриптове, които са необходими за функционалността на PL/SQL.

SQL>@?/rdbms/admin/catalog.sql; SQL>@?/rdbms/admin/catproc.sql

Частичен изход от горните команди.

SQL>@?/rdbms/admin/catalog.sql; DOC>################################################# ###################### DOC>########################### ########################################### DOC> Следното твърдение ще предизвика грешка "ORA-01722: невалиден номер" DOC> и прекратете сесията на SQLPLUS, ако потребителят не е SYS. DOC> Прекъснете връзката и се свържете отново с AS SYSDBA. DOC>################################################# ###################### DOC>########################### ########################################### DOC># няма избрани редове пакет създадена. тялото на пакета е създадено. .. .. Създаден синоним. Грант успя. PL/SQL процедурата е завършена успешно. SQL> @?/rdbms/admin/catproc.sql .. .. Коментарът е създаден. Синонимът е създаден. Грант успя. PL/SQL процедурата е завършена успешно.

Ако се интересувате, можете да погледнете директорията и скрипта catproc, за да видите какво точно прави.

Vi $ORACLE_HOME/rdbms/admin/catalog.sql; vi $ORACLE_HOME/rdbms/admin/catproc.sql

7. Инспекция - Завършване и въвеждане в експлоатация

И накрая, извършвайте редовно изключване и стартиране, за да сте сигурни, че всичко работи според очакванията в тази нова база данни.

$ sqlplus / като sysdba SQL> ИЗКЛЮЧВАНЕ НЕЗАБАВНО; базата данни е затворена. базата данни демонтирана. ORACLE екземпляр е изключен. SQL> СТАРТ; Започна екземплярът на ORACLE. Обща глобална площ на системата 1234563200 байта Фиксиран размер 1262454 байта Променлив размер 522935700 байта Буфери на базата данни 720583588 байта Повторни буфери 12946358 байта Монтирана база данни.