Создание новой базы данных Oracle



Download 101,14 Kb.
bet3/13
Sana22.02.2022
Hajmi101,14 Kb.
#103706
1   2   3   4   5   6   7   8   9   ...   13
Bog'liq
12-ma'ruza. Oracle ma`lumotlar bazasini yaratish

1. Удостоверьтесь, что правильно указали каталоги ORACLE_SID и ORACLE_HOME, как описано ранее в разделе “Установка переменных ОС”.
2. Войдите в среду базы данных посредством интерфейса SQL*Plus, как показано ниже: 
oracle@localhostdbs]$ sqlplus /nolog
SQL*Plus: Release 11.1.0.6.0 - Production on Fri Mar 7 15:35:32 2008
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL> CONNECT sys AS sysdba
Enter password:
Connected to an idle instance.
SQL>
3. Запустите экземпляр в режиме NOMOUNT, поскольку пока не существует никаких управляющих файлов, пригодных для монтирования. Если планируете использовать команду STARTUP, Oracle будет искать управляющие файлы. Вероятно, у вас возникла мысль: “Но ведь мы еще не создали эти файлы!” Не беспокойтесь, это будет выполнено во время создания самой базы данных.
Если файл init.ora был сохранен в каталоге по умолчанию ($ORACLE_HOME/dbs), и вы правильно указали переменную среды ORACLE_SID (nina) перед запуском экземпляра, файл init.ora можно не указывать явно.
SQL> STARTUP NOMOUNT
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1236756 bytes
Variable Size 99164396 bytes
Database Buffers 213909504 bytes
Redo Buffers 5169152 bytes
SQL>
Если же файл init.ora был сохранен в каталоге, отличном от используемого по умолчанию ($ORACLE_HOME/dbs), потребуется указать полный путь и имя файла: 
SQL> NOMOUNT PFILE='/u01/app/oracle/product/10.2.0/db_1/dbs/initnina.ora'
Совет. На этом этапе часто возникает несколько ошибок ORA-01078 (сбой при обработке системных параметров). Достаточно исправить в файле init.ora ошибку, указанную в сообщении, и запуск экземпляра должен пройти без каких-либо проблем.
4. Запуск экземпляра будет выполнен с использованием параметров, которые заданы в файле initnina.ora. Удостовериться в запуске всех фоновых процессов экземпляра базы данных можно с помощью команды ps -ef:
[oracle@localhost]$ ps -ef | grep nina
oracle 5211 1 0 Mar05 ? 00:00:32 ora_pmon_nina
oracle 5213 1 0 Mar05 ? 00:00:06 ora_vktm_nina
oracle 5217 1 0 Mar05 ? 00:00:04 ora_diag_nina
oracle 5219 1 0 Mar05 ? 00:00:06 ora_dbrm_nina
oracle 5221 1 0 Mar05 ? 00:00:11 ora_psp0_nina
oracle 5225 1 0 Mar05 ? 00:04:39 ora_dia0_nina
oracle 5227 1 0 Mar05 ? 00:00:07 ora_mman_nina
oracle 5229 1 0 Mar05 ? 00:00:19 ora_dbw0_nina
oracle 5231 1 0 Mar05 ? 00:00:17 ora_lgwr_nina
oracle 5233 1 0 Mar05 ? 00:01:34 ora_ckpt_nina
oracle 5235 1 0 Mar05 ? 00:00:15 ora_smon_nina
oracle 5237 1 0 Mar05 ? 00:00:01 ora_reco_nina
oracle 5239 1 0 Mar05 ? 00:00:52 ora_mmon_nina
oracle 5241 1 0 Mar05 ? 00:01:22 ora_mmnl_nina
oracle 5249 1 0 Mar05 ? 00:00:04 ora_fbda_nina
oracle 5251 1 0 Mar05 ? 00:00:07 ora_smco_nina
oracle 5257 1 0 Mar05 ? 00:00:03 ora_qmnc_nina
oracle 5273 1 0 Mar05 ? 00:00:00 ora_q000_nina
oracle 5275 1 0 Mar05 ? 00:00:02 ora_q001_nina
(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 27290 1 0 15:29 ? 00:00:00 ora_w000_ninal11
oracle 27394 27375 0 15:36 pts/2 00:00:00 grep nina
[oracle@localhost] $
5. На этом этапе можно выполнить простой запрос, чтобы проверить версию базы данных: 
SQL> SELECT * FROM v$version;
BANNER
----------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 – Production
CORE 11.1.0.6.0 Production
TNS for Linux: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production
SQL>
Как видно из примера, приведенного в листинге ниже, Oracle будет записывать всю информацию запуска и остановки, а также сведения о любых ошибках, возникающих во время создания экземпляра и обычной работы базы данных, в журнал предупреждений. Журнал предупреждений содержит также все отличающиеся от заданных по умолчанию параметры инициализации, указанные в файле init.ora. Обратите внимание на запуск всех процессов Oracle: процесс записи базы данных (DBWn), монитор процессов (PMON), процесс записи журнала (LGWR), контрольные точки (CKPT), системный монитор (SMON) и процесс восстановления (RECO). Как видно из листинга ниже, запуск прошел успешно, поскольку никакие сообщения об ошибках не были выведены ни на экран, ни в файл журнала предупреждений.
Wed Feb 13 15:05:22 2008
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Picked latch-free SCN scheme 2
Autotune of undo retention is turned on.
IMODE=BR
ILAT =73
LICENSE_MAX_USERS = 0
SYS auditing is disabled
Starting up ORACLE RDBMS Version: 11.1.0.6.0.
Using parameter settings in server-side pfile
/u01/app/oracle/product/11.1.0.6/db_1/dbs/initorcl11.ora
System parameters with non-default values:
processes = 600
instance_type = "RDBMS"
sga_target = 300M
control_files = "/u01/app/oracle/oradata/orcl11/cont1.ctl"
control_files = "/u01/app/oracle/product/11.1.0.6
/db_1/dbs/ /u01/app/oracle/oradata/orcl11/cont2.ctl"
db_block_size = 8192
compatible = "11.1.0"
log_archive_dest_1 = "LOCATION=/u02/app/oracle/arch/"
log_archive_format = "log%t_%s_%r.arc"
db_files = 1000
db_recovery_file_dest = "/u02/app/oracle/oradata/orcl11/flash_recovery_area"
db_recovery_file_dest_size= 1000M
db_flashback_retention_target= 7200
undo_management = "AUTO"
undo_tablespace = "undotbs_01"
undo_retention = 7200
resumable_timeout = 1800
remote_login_passwordfile= "NONE"
db_domain = "world"
cursor_sharing = "force"
audit_trail = "NONE"
db_name = "orcl11"
optimizer_mode = "all_rows"
pga_aggregate_target = 2000M
statistics_level = "typical"
Wed Feb 13 15:05:24 2008
WARNING:Oracle instance running on a system with low open file descriptor
limit. Tune your system to increase this limit to avoid
severe performance degradation.
PMON started with pid=2, OS id=3548
Wed Feb 13 15:05:25 2008
DIAG started with pid=4, OS id=3554
Wed Feb 13 15:05:25 2008
DBRM started with pid=5, OS id=3557
Wed Feb 13 15:05:25 2008
VKTM started with pid=3, OS id=3550
VKTM running at (100ms) precision
Wed Feb 13 15:05:25 2008
PSP0 started with pid=6, OS id=3559
Wed Feb 13 15:05:25 2008
DIA0 started with pid=8, OS id=3563
Wed Feb 13 15:05:25 2008
DSKM started with pid=7, OS id=3561
Wed Feb 13 15:05:25 2008
MMAN started with pid=7, OS id=3565
Wed Feb 13 15:05:26 2008
DBW0 started with pid=9, OS id=3567
Wed Feb 13 15:05:26 2008
LGWR started with pid=10, OS id=3569
Wed Feb 13 15:05:26 2008
SMON started with pid=12, OS id=3573
Wed Feb 13 15:05:26 2008
CKPT started with pid=11, OS id=3571
Wed Feb 13 15:05:26 2008
RECO started with pid=13, OS id=3575
Wed Feb 13 15:05:26 2008
MMON started with pid=14, OS id=3577
Wed Feb 13 15:05:27 2008
MMNL started with pid=15, OS id=3579
ORACLE_BASE not set in environment. It is recommended
that ORACLE_BASE be set in the environment
Wed Feb 13 15:10:24 2008
На этом этапе вы располагаете действующим экземпляром Oracle, который состоит из процессов Oracle и выделенной для него памяти SGA. База данных пока не существует. Она будет создана с нуля в следующем разделе.
Создание базы данных
Простейшая база данных, которую можно создать, будет содержать табличное пространство System для хранения словаря данных, табличное пространство Sysaux, несколько управляющих файлов и файлов журналов повторного выполнения, заданное по умолчанию временное табличное пространство и табличное пространство отката. После того, как эта база данных будет запущена, в нее можно будет добавить любое количество новых табличных пространств.
Создадим упрощенную базу данных Oracle Database 11g. Новую базу данных можно создать либо вводя каждую строку оператора создания базы данных индивидуально, либо создав сценарий создания базы данных, содержащий весь оператор, как показано в листинге 10.5, и запустив его на выполнение.
SQL> CREATE DATABASE nina
2 USER SYS IDENTIFIED BY sys_password
3 USER SYSTEM IDENTIFIED BY system_password
4 LOGFILE GROUP 1 ('/u01/app/oracle/oradata/nina/redo01.log') SIZE 100M,
a. GROUP 2 ('/u01/app/oracle/oradata/nina/redo02.log') SIZE 100M,
b. GROUP 3 ('/u01/app/oracle/oradata/nina/redo03.log') SIZE 100M
5 MAXLOGFILES 5
6 MAXLOGMEMBERS 5
7 MAXLOGHISTORY 1
8 MAXDATAFILES 300
9 CHARACTER SET US7ASCII
10 NATIONAL CHARACTER SET AL16UTF16
11 EXTENT MANAGEMENT LOCAL
12 DATAFILE '/u01/app/oracle/oradata/nina/system01.dbf' SIZE 500M REUSE
13 SYSAUX DATAFILE '/u01/app/oracle/oradata/nina/sysaux01.dbf' SIZE 325M REUSE
14 DEFAULT TABLESPACE users
15 DATAFILE '/u01/app/oracle/oradata/nina/users01.dbf'
16 SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
17 DEFAULT TEMPORARY TABLESPACE tempts1
18 TEMPFILE '/u01/app/oracle/oradata/nina/temp01.dbf'
19 SIZE 200M REUSE
20 UNDO TABLESPACE undotbs
21 DATAFILE '/u01/app/oracle/oradata/nina/undotbs01.dbf'
22 SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
Database created.
SQL>
Ниже приведен краткий обзор оператора CREATE DATABASE.

  • Строка 1 выдает команду CREATE DATABASE программному обеспечению Oracle. Эта команда инициирует создание двух управляющих файлов, расположение которых считывается из файла параметров initnina.ora. Если управляющие файлы с такими именами уже существуют во время создания базы данных (остались от предыдущей неудачной инсталляции), в операторе CREATE DATABASE потребуется указать конструкцию CONTROLFILE REUSE.

  • Строки 2 и 3 демонстрируют возможный способ указания паролей для двух ключевых пользователей SYS и SYSTEM. Эти конструкции не обязательны, и если они опущены, пользователям SYS и SYSTEM по умолчанию соответственно присваиваются пароли change_on_install и manager. Поскольку эти пароли общеизвестны, компания Oracle советует использовать приведенные конструкции для изменения паролей по умолчанию.

  • Строка 4 создает несколько групп оперативных журналов повторного выполнения, необходимых для работы Oracle.

  • Строки 5–8 задают максимальное количество файлов данных, файлов журналов и т.п.

  • Строки 9 и 10 указывают наборы символов, используемые базой данных. Просто используйте эти наборы символов для всех баз данных, которые будут созданы в будущем, если только не требуется применять язык, отличный от английского.

  • Строка 11 указывает, что управление табличным пространством System должно осуществляться локально, а не посредством словаря.

  • Строка 12 создает табличное пространство System с одним файлом данных размером в 500 Мбайт. Словарь данных создается внутри табличного пространства System. Один сегмент отката системы также создается автоматически.

  • Строка 13 создает новое используемое по умолчанию табличное пространство Sysaux. Создание этого табличного пространства обязательно. В противном случае выполнение оператора создания базы данных будет неудачным.

  • Строки 14–16 создают заданное по умолчанию постоянное табличное пространство TEMP01 с одним временным файлом в 500 Мбайт. Всем пользователям при их первоначальном создании в базе данных должно предоставляться временное табличное пространство. Если это не будет сделано, пользователям автоматически будет выделено заданное по умолчанию временное табличное пространство TEMP01. Обратите внимание, как строка 14 указывает, что файлом, используемым для временного табличного пространства, является временный (temp) файл, а не обычный файл данных. Временное табличное пространство нельзя создать, используя спецификацию обычного файла данных.

  • Строки 17–19 создают новое заданное по умолчанию временное табличное пространство базы данных. Любым пользователям, которым постоянное табличное пространство не присвоено явно, это табличное пространство будет выделено в качестве используемого по умолчанию, вместо табличного пространства System.

  • Строки 20–22 создают для новой базы данных новое табличное пространство отката.

Oracle автоматически монтирует и открывает базу данных после создания всех вышеописанных файлов. Как будет показано в последней части данной статьи, монтирование базы данных Oracle сопряжено со считыванием управляющих файлов, а ее открытие позволяет всем пользователям получать доступ к различным компонентам новой базы данных.
На этом этапе загляните в журнал предупреждений, чтобы выяснить, что именно ПО Oracle выполнило при выдаче команды CREATE DATABASE. Важный фрагмент журнала предупреждений приведен в листинге ниже.
Sun Feb 13 15: 13:00 2008
create database orcl11
USER SYS IDENTIFIED BY *****
USER SYSTEM IDENTIFIED BY ******
LOGFILE GROUP 1 ('/u01/app/oracle/oradata/orcl11/redo01.log') SIZE 100M,
GROUP 2 ('/u01/app/oracle/oradata/orcl11/redo02.log') SIZE 100M,
GROUP 3 ('/u01/app/oracle/oradata/orcl11/redo03.log') SIZE 100M
MAXLOGFILES 5
MAXLOGMEMBERS 5
MAXLOGHISTORY 1
MAXDATAFILES 100
CHARACTER SET US7ASCII
NATIONAL CHARACTER SET AL16UTF16
EXTENT MANAGEMENT LOCAL
DATAFILE '/u01/app/oracle/oradata/orcl11/system01.dbf' SIZE 325M REUSE
SYSAUX DATAFILE '/u01/app/oracle/oradata/orcl11/sysaux01.dbf' SIZE 325M REUSE
DEFAULT TABLESPACE users
DATAFILE '/u01/app/oracle/oradata/orcl11/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
DEFAULT TEMPORARY TABLESPACE tempts1
TEMPFILE '/u01/app/oracle/oradata/orcl11/temp01.dbf'
SIZE 20M REUSE
UNDO TABLESPACE undotbs
DATAFILE '/u01/app/oracle/oradata/orcl11/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
Database mounted in Exclusive Mode
Lost write protection disabled
Wed Feb 13 15:33:08 2008
Successful mount of redo thread 1, with mount id 3893367911
Assigning activation ID 3893367911 (0xe8101467)
Thread 1 opened at log sequence 1
Current log# 1 seq# 1 mem# 0: /u01/app/oracle/oradata/orcl11/redo01.log
Successful open of redo thread 1
Wed Feb 13 15:33:08 2008
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
Wed Feb 13 15:33:08 2008
SMON: enabling cache recovery
processing ?/rdbms/admin/dcore.bsq
create tablespace SYSTEM datafile '/u01/app/oracle/oradata/orcl11/
system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL online
Wed Feb 13 15:33:20 2008
Completed: create tablespace SYSTEM datafile
'/u01/app/oracle/oradata/orcl11/system01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL online
create rollback segment SYSTEM tablespace SYSTEM
storage (initial 50K next 50K)
Completed: create rollback segment SYSTEM tablespace SYSTEM
storage (initial 50K next 50K)
processing ?/rdbms/admin/dsqlddl.bsq
processing ?/rdbms/admin/dmanage.bsq
CREATE TABLESPACE sysaux DATAFILE '/u01/app/oracle/oradata/orcl11/
sysaux01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ONLINE
Wed Feb 13 15:33:36 2008
Completed: CREATE TABLESPACE sysaux DATAFILE
'/u01/app/oracle/oradata/orcl11/sysaux01.dbf' SIZE 325M REUSE
EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ONLINE
processing ?/rdbms/admin/dplsql.bsq
processing ?/rdbms/admin/dtxnspc.bsq
CREATE UNDO TABLESPACE UNDOTBS DATAFILE
'/u01/app/oracle/oradata/orcl11/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
Successfully onlined Undo Tablespace 2.
Completed: CREATE UNDO TABLESPACE UNDOTBS DATAFILE
'/u01/app/oracle/oradata/orcl11/undotbs01.dbf'
SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
CREATE TEMPORARY TABLESPACE TEMPTS1 TEMPFILE
'/u01/app/oracle/oradata/orcl11/temp01.dbf'
SIZE 20M REUSE
Completed: CREATE TEMPORARY TABLESPACE TEMPTS1 TEMPFILE
'/u01/app/oracle/oradata/orcl11/temp01.dbf'
SIZE 20M REUSE
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPTS1
Completed: ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMPTS1
CREATE TABLESPACE USERS DATAFILE '/u01/app/oracle/oradata/orcl11/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
SEGMENT SPACE MANAGEMENT MANUAL
Wed Feb 13 15:34:12 2008
Completed: CREATE TABLESPACE USERS DATAFLE
'/u01/app/oracle/oradata/orcl11/users01.dbf'
SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
SEGMENT SPACE MANAGEMENT MANUAL
ALTER DATABASE DEFAULT TABLESPACE USERS
Completed: ALTER DATABASE DEFAULT TABLESPACE USERS
processing ?/rdbms/admin/dfmap.bsq
. . .
Wed Feb 13 15:34:32 2008
SMON: enabling tx recovery
Starting background process SMCO
Wed Feb 13 15:34:33 2008
SMCO started with pid=17, OS id=4055
Wed Feb 13 15:34:38 2008
Starting background process FBDA
Wed Feb 13 15:34:38 2008
FBDA started with pid=19, OS id=4059
replication_dependency_tracking turned off (no async multimaster replication found)
Starting background process QMNC
Wed Feb 13 15:34:40 2008
QMNC started with pid=20, OS id=4063
Completed: create database orcl11
. . .
Wed Feb 13 15:50:43 2008
Sat Feb 16 11:00:18 2008
Совет. Если хотите увидеть, что именно Oracle выполняет во время процесса создания базы данных, перейдите в каталог, содержащий журнал предупреждений, и выполните следующую команду: 
$ tail -f alertnina.log
Основные действия по созданию базы данных, отраженные в журнале создания базы данных, который приведен в листинге 10.6, описаны ниже.

  • Оператор database mounted означает, что ПО Oracle открыло управляющие файлы, указанные в файле init.ora.

  • Оператор successful open of redo thread 1 показывает, что первый файл журнала отката был успешно создан и открыт в целях восстановления.

  • Табличные пространства Sysaux и System успешно созданы.

  • Сегмент отката по имени system создан в табличном пространстве System.

  • Табличное пространство отката UNDOTBS успешно создано.

  • Табличное пространство TEMP01 создано в качестве временного табличного пространства с применением временного файла вместо обычного файла данных, используемого для постоянных табличных пространств. После того как временное табличное пространство создано, оператор ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP01 выдается для назначения TEMP01 в качестве заданного по умолчанию временного табличного пространства для данной БД.

  • Табличное пространство USERS создается и оператор ALTER DATABASE DEFAULT TABLESPACE USERS выполняется для назначения табличного пространства USERS в качестве заданного по умолчанию постоянного табличного пространства для новой базы данных.

  • Новые фоновые процессы QMNC и MMNL запущены.


Download 101,14 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   13




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish