You are on page 1of 219

Oracle OCP

1Z0-060

.. , ..-.., Oracle OCP 10g, 11g, 12c, HP HP-UX CSA, CSE


e-mail: xbir@yahoo.com

Copyright 2015. . .
,
, / /,
.
Oracle, Solaris, Oracle Solaris Oracle Corporation /
Oracle.
HP, HP-UX Hewlett-Packard Development Company, L.P.
/ Hewlett-Packard Development Company, L.P.
, , ,
. , / ,
/ , , ,
, -
, .

............................................................................................................................... 10
.......................................................................................................... 10
Oracle 12c ............................................................................................................ 11
Enterprise Manager Express ........................................................................................................... 11
Enterprise Manager Express .......................................................................................... 11
EM Express .............................................................................................................. 14
OUI, DBCA ................................ 15
(Database Create Assistant (DBCA)) ................................................ 30
(Multitenant Container Database
(CBD)) ............................................................................................................................................................ 36
......................................................................................... 36
.......................................................................................................... 37
.......................... 37
(CDB) ................................................................................ 37
(PDB) .............................................................................. 39
seed ............................................................................................ 40
................................................................................................. 40
............................................. 41
................................................................. 41
........................................................................................ 42
Oracle ................. 42
..................................................... 43
(CDB)/ (PDB) .................................. 45
(CDB) (PDB) ......... 47
, ,
......................................................................................................................... 48
(CDB) (PDB) .. 48
(CDB) (PDB)
.......................................................................................................................................................... 49
................................................................................................. 49
.......................................................................................... 50
3

...................................................................... 50
,
...................................................................................................................................... 52
................................ 52
...................................................................... 53
............................................. 55
............. 57
(Information Lifecycle Management,
ILM) ........................................................................................................................................................... 57
(Heat Map) .................................................................................................................... 57
(Automatic Data Optimization, ADO) .................................. 57
................ 57
online .................................................................................................................. 60
(In-Database Archiving) (Valid-Time
Temporal) ...................................................................................................................................................... 61
(Information Lifecycle
Management, ILM) ................................................................................... 61
........................................................................ 62
(In-Database archiving) ................................................. 65
............................................................................................................................................................. 66
............................................................................ 66
......................................................................................................... 67
................................................................................................ 70
.................................................................................................................................................. 73
.................................................................................. 73
, ............................................................ 75
(redaction) Oracle ............................................................................................... 77
Oracle.......................................... 77
RMAN .................................................................................................. 81
RMAN ........................................................................................................... 81
................................................................ 81
RMAN ................................................................................................ 81
................................................................................................... 81
NOOPEN ........................................................................................................ 81
4

(Multisection Image Copies)......................................................... 82


............................................................. 82
(Storage Snapshot Optimization) ........... 82
(Flashback Data Archive) .............................................. 83
................................................................. 84
......................................... 84
SQL .............................................................................................................................................. 87
................................................................................ 87
.............................................................................................................................. 87
....................................................................................................................... 88
......................................................... 89
................................................................................................................... 90
(Automatic column group detection) .................... 90
SQL .................................................................... 91
(Emergency Monitoring), (Real-Time ADDM),
(Compare Period ADDM) (ASH Analytics)
....................................................................................................................................................................... 93
.................................................. 93
ADDM .................................................................................................................. 94
ADDM ............................................................................... 96
ASH ................ 97
......................................... 98
................. 98
Oracle ................................... 99
(flash cache) .................................................................................................. 100
.................................................... 101
..................................................... 101
..................................................... 102
online ............................................................ 103
ADR (Automatic Diagnostic Repository) ....................................... 105
ADR .................................................................................................................... 105
(Debug Log) ................................................................................................................ 105
Oracle Data Pump, SQL*Loader, External Tables Online ....................................... 106
Oracle Data Pump .................................................................................................... 106
5

SQL*Loader .................. 109


"" NFS (Direct NFS) ............................................................................................ 110
...................................................................................... 111
..................................................................... 111
(interval-reference) ................................................ 111
........................................................... 111
(Cascade Functionality) .................................................................... 113
" "....................................................................................................... 113
.................................. 114
................................................................................................ 114
(partial indexes) .................................................................................................... 114
ONLINE .............................................................................................................. 115
SQL ........................................................................................................................................ 116
.............................................................................................. 116
(Top-N SQL ) ................................ 116
(Secure Files) .......................................................................................................... 117
Oracle Database Migration Assistant Unicode .......................... 118
...................................................................................... 120
.................................................................................................................... 120
........................................................................................ 120
...................................................................................................... 121
" " "" ............................................................................................ 121
System Global Area (SGA) .......................................................... 123
..................................................................................... 125
.................................................. 130
(Local Naming Method) ................................................................................. 132
(Easy Connect Naming Method) ............................................................ 132
(Directory Naming Method) .......................................................................... 133
(External Naming Methods) .............................................................................. 133
.............................................................................................. 134
(Adaptive Thresholds)........................................................................................... 134
..................................................................... 135
............................................................................................................. 137
6

Online ............................................................................................................................... 137


EM Cloud Control ............................................................................ 138
......................................................................................................... 139
..................................................................... 141
.................................................................................................................. 144
................................................................................................... 145
(Block Change Tracking)................................................................ 145
................................................................................................. 146
. ........................................................... 148
Data Recovery Advisor ............................ 150
........................................................................................................................................................ 150
Data Recovery Advisor ............................................................................ 151
LIST FAILURE ........................................................................................................................................ 151
ADVISE FAILURE................................................................................................................................... 151
CHANGE FAILURE ................................................................................................................................ 152
REPAIR FAILURE ................................................................................................................................... 152
................................................................................. 153
............................................................................................................ 153
.............................................................................................. 153
............................................................................................... 155
.................................................................................................. 156
..................................................................................................................... 159
Data Pump...................................................................................................... 159
expdp .............................................................................................................................. 161
impdp .............................................................................................................................. 162
Data Pump .......................................................................................................... 163
SQL-Loader .............................................................................................................................................. 163
SYSAUX .................................................................................. 166
" " ...................................................... 167
(redo) ...................... 168
LOB ............................................................... 169
NFS .......................................................................................................... 171
......................................................................................................... 172
7

........................................................................................... 172
................................................................................................................ 173
................................................................................................................................. 176
(Automatic Shared Memory Management) ... 177
........................................................................................................................................ 177
.............................................................................. 179
. .............................................................................. 182
SQL Performance Analyzer ...................................................................................................................... 182
................................................................................. 182
............................... 183
........................................................................................................ 184
............................ 186
............................................................................................................... 186
/ ............................... 187
...................................................................................... 188
........................................................................................................................................ 189
.................................................................................................. 189
(Tablespaces) ........................................................................................... 190
(Undo) .................................................................. 190
(Redo Log Groups) ............................................................................... 191
(Archive Logs) .................................................................................................... 191
(Control Files) ................................................................................................. 192
Oracle .............................................................................................................. 192
ASM ..................................................................................................................... 194
................................................................... 195
......................................................................................................................... 196
ASM ........................................................................ 197
............................................................................................................. 197
.......................................................................................................... 198
.................................................................................................. 199
ASM ........................................................................................................ 200
ASM .......................................................................................................... 201
(VLDB) .................................................................................. 203
8

.............................................................................................................................. 203
................................................................................................................ 203
.............................................................................................. 203
................................................................................................... 204
.............................................................................................. 205
(Basic Table Compression) .................................................................. 206
(Advanced Row Compression) ............................................. 206
(Hybrid Columnar Compression) ................................................... 206
(Segment Shrink) ................................................................................................. 207
...................................................................... 207
......................................................................................................................................... 208
.............................................................................................................................................. 209
.............................................................................. 209
..................................................................................................................................... 209
............................................................................................................................ 209
................................................................................................................................................... 210
........................................................................................................ 211
...................................................................................................................... 213
.............................................................................. 215
...................................................................................................................... 217
.............................................................................................. 217
........................................................................................................................................................... 219


"".
"Oracle Database 12c: New Features for Administrators",
Oracle University.
,
1Z0-060, .

) , Oracle 12 11g;

) ,
1Z0-060, .
Oracle University 12.
, ,
(DBA).
. Oracle , ,
, 1Z0-060, DBA
. ,
.


:
Oracle http://docs.oracle.com/

.. White papers Oracle Learning Library
Oracle Learning Library , ..
Oracle .

.
, , , Oracle.

10

Oracle 12c
Enterprise Manager Express
Enterprise Manager Express
Enterprise Manager Express , ()
Oracle -. ,
.
- ,
. EM Express , ,
. EM Express -
. , XDB
SQL*Net , Oracle. EM Express
-.
-, .
EM Express , EM Express
, .
, , EM Express Shockwave Flash (SWF) ,
Flash plug-in.
EM Express , DBCA :

. 1 . EM Express

, EM Express (" "


5500/tcp), SQL-:
11

SQL> SELECT DBMS_XDB_CONFIG.GETHTTPSPORT() FROM dual;


DBMS_XDB_CONFIG.GETHTTPSPORT()
-----------------------------5500

EM Express :
https://database-hostname:portnumber/em/
:
https://ora-1123:5500/em/ https://192.168.150.196:5500/em/
,
EM Express. ,
EM Express. EM Express
, , ,
EM_EXPRESS_BASIC EM_EXPRESS_ALL. SYS
SYSTEM. SYS .
, SYS
SYSTEM, EM_EXPRESS_BASIC EM_EXPRESS_ALL.
EM Express :

. 2 EM Database Express 12c

12

EM Express.
. ,
Enterprise Manager Express, :
(Configuration) - EM Express
. 10
.
.
(Storage) -
DBA redo- ( ),
. (advisor)
UNDO ( ) . EM Express
.
(Secirity) - EM Express DBA
, , , .
(Performance) - EM Express
.
SQL Monitor, ASH Analytics ( )
ADDM (Automatic Database Diagnostic Monitor).
,
.

. 3 EM Express

13

EM Express
EM Express .
. , EM Express
. :
1. , Oracle Net Listener . ,
lsnrctl.
2. , " ", 1521,
init.ora , EM Express,
local_listener. local_listener TNSNAMES,
. , local_listener=orcl
, TNSNAMES.ORA
1527:
orcl= (DESCRIPTION=
(ADDRESS=
(PROTOCOL=tcp)(HOST=ora-1123)(PORT=1527)
)
(CONNECT_DATA=
(SERVICE_NAME=orcl)(SERVER=DEDICATED)
)
)

TCP . init.ora
EM Express
dispatchers="(PROTOCOL=TCP)(SERVICE=<sid>XDB)"

3. , init.ora
4. PL/SQL DBMS_XDB_CONFIG.SETHTTPSPORT
HTTPS EM Express. HTTPS xdbconfig.xml
Oracle XML DB Repository.
SYSDBA. 5600 EM
Express:
SQL> exec DBMS_XDB_CONFIG.SETHTTPSPORT(5600);

, SETHTTPSPOST
, EM Express , .
,
, .
EM Express Oracle
"Database 2 Day DBA" Oracle 12c,
EM Express.
lsnrctl status (
EM Express, ):

14

. 4 EM Database Express 12c

OUI, DBCA

Oracle ,
().
.
Oracle 12c Oracle Solaris 10 (SPARC).
Solaris 10 (SPARC)
:
Oracle 12c
Enterprise Edition
Standard Edition
Standard Edition One

, GB
6.1
5.9
5.9

1GB /tmp. ,
, 2 GB
swap':
(RAM), GB
1-2
2 - 16
> 16

swap
1.5 (RAM)

16GB
15

,
.
, (Oracle Database Installation Guide 12c
Release 1 (12.1) for Oracle Solaris E17752-12).
Solaris 10 Oracle :
/etc/system (.
http://docs.oracle.com/cd/E19076-01/t2k.srvr/819-2544-21/prod-note-general.html)
.
bash-3.2# more /etc/system
*ident "@(#)system
1.18 05/06/27 SMI" /* SVR4 1.5 */
*
* SYSTEM SPECIFICATION FILE
.
.
set pcie:pcie_aer_ce_mask=0x1
set segkmem_lpsize=0x400000

/etc/inittab tcp/ip:
tm::sysinit:/usr/sbin/ndd
tm::sysinit:/usr/sbin/ndd
tm::sysinit:/usr/sbin/ndd
tm::sysinit:/usr/sbin/ndd

-set
-set
-set
-set

/dev/tcp
/dev/tcp
/dev/udp
/dev/udp

tcp_smallest_anon_port 9000
tcp_largest_anon_port 65500
udp_smallest_anon_port 9000
udp_largest_anon_port 65500

>
>
>
>

/dev/console
/dev/console
/dev/console
/dev/console

root, "
":
projmod -s \
-K "process.max-file-descriptor=(basic,65536,deny),(priv,65536,deny)" \
-K "process.max-sem-nsems=(priv,2048,deny)" \
-K "project.max-sem-ids=(priv,1024,deny)" \
-K "project.max-shm-ids=(priv,256,deny)" \
-K "project.max-shm-memory=(priv,18446744073709551615,deny)" \
user.root

:
# groupadd oinstall
# groupadd dba

- :
# /usr/sbin/useradd -g oinstall -G dba s /bin/bash -d /home/oracle \
-m -k /etc/skel oracle

16

bash Oracle,
,
Bourne.
oracle:
projadd -p 200 -c "Oracle user" -U oracle \
-G dba,oinstall \
-K "process.max-file-descriptor=(basic,65536,deny),(priv,65536,deny)" \
-K "process.max-sem-nsems=(priv,2048,deny)" \
-K "project.max-sem-ids=(priv,1024,deny)" \
-K "project.max-shm-ids=(priv,256,deny)" \
-K "project.max-shm-memory=(priv,18446744073709551615,deny)" \
oracle.user

/etc/user_attr
oracle::::project=oracle.user

:
bash-3.2# cat /etc/user_attr
#
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
# /etc/user_attr
#
# execution attributes for profiles. see user_attr(4)
#
#ident "@(#)user_attr 1.1
07/01/31 SMI"
#
#
adm::::profiles=Log Management
lp::::profiles=Printer Management
postgres::::type=role;profiles=Postgres Administration,All
root::::auths=solaris.*,solaris.grant;profiles=Web Console
Management,All;lock_after_retries=no;min_label=admin_low;clearance=admin_high
oracle::::project=oracle.user
bash-3.2#

, oracle oracle.user
bash-3.2# su - oracle
Oracle Corporation
SunOS 5.10
Generic Patch
January 2005
bash-3.2$ id -pa
uid=100(oracle) gid=100(oinstall) groups=100(oinstall),101(dba)
projid=200(oracle.user)
bash-3.2$ logout


# mkdir -p /u01/app/oracle

17

# chown oracle:oinstall /u01/app/oracle


# chmod -R 775 /u01/

Oracle . 64-bit Oracle


solaris.sparc64_12cR1_database_1of2.zip solaris.sparc64_12cR1_database_2of2.zip
, unzip
Oracle runInstaller. .
,
"Configure Security Updates" .
1. "Configure Security Updates" - ,
Oracle .
My Oracle Support.

. 5 Oracle 12c. 1

18

2. -
My Oracle Support.
.
.

. 6 Oracle 12c. 2

19

3. -
: ,

. 7 Oracle 12c. 3

20

4. Grid - :
, Oracle Real Application Cluster Oracle
RAC One Node.

. 8 Oracle 12c. 4

21

5. - .
.

. 9 Oracle 12c. 5

22

6. - : Enterprise
( ), Standard Edition ( )
Standard Edition One

. 10 Oracle 12c. 6

23

7. . -
.

. 11 Oracle 12c. 7

24

8. inventory -
, Oracle , ,
. Oracle
.

. 12 Oracle 12c. 8

25

9. -
.

. 13 Oracle 12c. 9

26

10. . - ,
. ,
.
Oracle. ignore ,
.
11. - ,
. .

. 14 Oracle 12c. 11

27

12. . -
(, , ..).
.

. 15 Oracle 12c. 12

28

12. root . - ,
root. Unix- .

. 16 Oracle 12c. root

29

13. - , !

. 17 Oracle 12c.

(Database Create Assistant (DBCA))


Oracle " "
CREATE DATABASE , .
. - , . Database Create Assistant
(DBCA)) .
DBCA , , CREATE DATABASE,
, ! DBCA
,
Oracle.
DBCA : .
.
. DBCA
,
. .

30

DBCA ,
. DBCA UNIX/Linux Microsoft
Windows dbca. dbca
ORACLE_HOME/bin. DBCA ,
.
" ".
1. . : ,
( ),
(pluggable) (
).

. 18 DBCA. 1

31

2. . ,
, (fast recovery area),
. Enterprise
. (Advanced)
.

. 19 DBCA. 2

32

3. . - DBCA ,

. 20 DBCA. 3

33

4. - ,
.

. 21 DBCA. 4

34

5. - .

. 22 DBCA. 5

DBCA , , ..
.
,
utlrp.sql. PL/SQL , , ,
. " "
, CPU_COUNT.
, Oracle , .

35

(Multitenant
Container Database (CBD))

Oracle 12c -
( Multitenant Enterprise Edition). Oracle
(Container database, CDB),
(pluggable databases, PDBs),
CDB. Oracle
. . (PDB)
.
:
-
. CDB
,
PDB.

(Virtual Private Database).
(PDBs) ,
Oracle.
-
. ,
PDBs ,
. , , .
-
. ,
.
-
, ,
.
.
-
, ..
, , , ..
. DBA
CDB PDB. CBD
CDB. PDB

PDB. ,
.
CDB.

36

- ,
.
-
,
.

, Oracle
, 0 253, (PDB).
, ,
. (PDB), (root
CDB$ROOT). PDB .
CDB PDB ID . (PDB)
, ,
Oracle Net, PDB , .
:
root - Oracle
(, Oracle PL/SQL ) .
(common user) , .
CDB$ROOT. PDB .
, .
.
seed PDB - Seed (. "", " ") PDB - ,
. seed PDB PDB$SEED.
PDB$SEED.
PDB, 0 253. - PDB,
( ),
, ,
-. CDB PDB.
(PDB)
. PBD CDB .
, PDB , PDB
CBD, .

(CDB)
CDB ,
Oracle. ,
. :

37

, CDB,
.
CDB .
CDB.
CDB, DB_NAME
DB_DOMAIN.
CDB
.
.
SYSAUX.
, (CDB), :
Oracle 12c 12.0.0.
.
,
.
CDB , Oracle.
CDB Database Configuration Assistant (DBCA), SQL CREATE DATABASE. Oracle DBCA. DBCA
, CDB DBCA.
DBCA Oracle Universal Installer
Oracle. CDB
. ,
. CDB. CDB ,
DBCA (PDB).
SQL- CREATE DATABASE CDB
. CDB DBCA
. CDB
, DBCA. SQL- CREATE DATABASE
root seed . CDB
PDB. seed
. seed :
SEED_FILE_NAME_CONVERT -
seed root .

('string1','string2',' string3',' string4'). string2 string1, string4 - string3.
, .
. NON,
. , .
SEED_FILE_NAME_CONVERT seed
38

/oracle/pdbseed. ,
, , Oracle
Managed Files.
Oracle Managed Files - Oracle Managed Files, OMF
seed.
PDB_FILE_NAME_CONVERT - PDB_FILE_NAME_CONVERT
seed.
PDB_FILE_NAME_CONVERT CDB
, seed.
,
. CREATE DATABASE ,
SEED_FILE_NAME_CONVERT.
(PDB)
(PDB) :
(CDB).
CDB read/write.
, root.
CREATE PLUGGABLE
DATABASE.
PDB "" CDB CDB,
.
PDB, Oracle Data Guard standby
, , .
Oracle Data Guard Concepts and Administration .
(4) (PDB)
(CDB):
seed - seed

PDB - (PDB)
.
PDB CDB CDB. ,
PDB- PDB.
- XML-
CDB.
- DBMS_PDB
12c.
PDB CDB.
CREATE PLUGGABLE DATABASE
.
39

.
PDB:
- STORAGE ,
, PDB,
" ", PDB,
PDB. STORAGE UNLIMITED
STORAGE , PDB
.
- , PDB.
PATH_PREFIX
PDB,
. FILE_NAME_CONVERT

PDB

CDB.

SOURCE_FILE_NAME_CONVERT PDB CDB.


- TEMPFILE REUSE ,

. ,
, Oracle . , Oracle
. , ,
, , CDB .
seed
(PDB) (CDB)
CREATE PLUGGABLE DATABASE seed. PDB
seed DBA PDB.
: SYSTEM, SYSAUX, TEMP.
PDB PDB_DBA. PDB seed
:
CDB SQL*Plus.
CREATE PLUGGABLE DATABASE ,
PDB. .
read/write, Oracle
PDB CDB.
PDB.
:
SQL> CREATE PLUGGABLE DATABASE ocp_pdb ADMIN USER ocp_adm IDENTIFIED BY password;

CREATE PLUGGABLE DATABASE PDB.
FROM. PDB-
, CDB.
40

CREATE PLUGGABLE DATABASE CBD$ROOT PDB,


PDB read-only. PDB :
CDB SQL*Plus.
CREATE PLUGGABLE DATABASE , PDB
FROM. .
read/write, Oracle
PDB CDB.
PDB.
pdb2
pdb1:
SQL> CREATE PLUGGABLE DATABASE pdb2 FROM pdb1 PATH_PREFIX = '/u01/oracle/pdb2'
FILE_NAME_CONVERT = ('/u01/oracle/pdb1/', '/u01/oracle/pdb2/');


XML-,
(PDB), CDB. XML-
PDB. PDB CDB :
CDB SQL*Plus.
DBMS_PDB.CHECK_PLUG_COMPATIBILITY,
PDB c CBD. .
CREATE PLUGGABLE DATABASE, XMP-,
USING. .
read/write, Oracle
PDB CDB.
PDB.
:
SQL> CREATE PLUGGABLE DATABASE ocp_pdb USING '/u01/aux/ocp_pdb.xml' NOCOPY TEMPFILE
REUSE;


:
DBMS_PDB - DBMS_PDB XML-,
. () .
CDB, XML-, .
, 12.
12.

41

Oracle Data Pump - Oracle Data Pump


, (PDB).
GoldenGate Replication -
GoldenGate.
,
.

DROP PLUGGABLE DATABASE.
(PDB) (CDB)
. PDB, CDB
, PDB. DROP
- redo- .
Oracle Recovery Manager (RMAN).
, , ,
:
KEEP DATAFILES - " ". .
, , ..
.
INCLUDING DATAFILES - . ,
SNAPSHOT COPY, INCLUDING DATAFILES
.
:
PDB .
SYSDBA SYSOPER ,
PDB. AS SYSDBA AS
SYSOPER.
:
CDB SQL*Plus.
DROP PLUGGABLE DATABASE, .
,
SQL> DROP PLUGGABLE DATABASE ocp_pdb INCLUDING DATAFILES;
Oracle
, ()
: DBMS_PDB, Oracle Data Pump Goldengate
. DBMS_PDB.DESCRIBE. Oracle Data
Pump , Golden Gate , ..
.
42

DBMS_PDB,
, - . ,
read-only. read-only,
DBMS_PDB.DESCRIBE. XML-
. ocp_db.xml /u01/oracle
SQL> BEGIN
DBMS_PDB.DESCRIBE(
pdb_descr_file => '/u01/oracle/ocp_db.xml');
END;
/
XML-
(CDB).
CREATE PLUGGABLE DATABASE ,
SQL> CREATE PLUGGABLE DATABASE ocp_db USING '/u01/oracle/ocp_db.xml'
COPY
FILE_NAME_CONVERT = ('/u01/oracle/db01/', '/u01/oracle/ocp_db/');

ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql,

SQL> ALTER SESSION SET CONTAINER=ocp_db;
:
SQL> @?/rdbms/admin/noncdb_to_pdb.sql
readwrite CDB.
SQL> ALTER SESSION SET CONTAINER=ocp_db;
SQL> ALTER PLUGGABLE DATABASE OPEN;
read-only
. read-write,
.

.
.
. Oracle Net
Services ,
(easy connect syntax) c
tnsnames.ora.
43

PDB PDB.
PDB, ,
root.
,
,
. ,
.
CONNECT
SQL*Plus. SQL ALTER SESSION SET CONTAINER.
CONNECT
.
CONNECT SQL*Plus:





,
CREATE SESSION .
CONNECT SQL*Plus SQL*Plus
/NOLOG
$ sqlplus /nolog
SQL*Plus :

SQL> connect username/password

SQL> connect / as sysdba

SQL> connect username/pasword@ocp_db

CONNECT SQL*Plus:
easy connect
SQL> connect username/password@host[:port][/service_name]
44


SQL> connect username/password@service_name
,
, CREATE SESSION
, CREATE SESSION.
SYSDBA, SYSOPER, SYSBACKUP, SYSDG
.
CONNECT SQL*Plus SQL*Plus /nolog
$ sqlplus /nolog

(PDB) ocp_db:

user

SQL> connect user@ocp_db


,

SQL> ALTER SESSION SET CONTAINER=container_name;
, container_name :
CDB$ROOT
PDB$SEED seed
(PDB)
(CDB)/ (PDB)
Real Application Cluster
.
. STARTUP NOMOUNT, STARTUP MOUNT STARTUP OPEN
.
.
SYSDBA. ,
V$PDBS .
:
NOMOUNT - NOMOUNT,
, , V$PDBS .
MOUNT - , .
MOUNTED.
OPEN - , . SEED
read-only.
MOUNT.
45

,
:
SQL> ALTER PLUGGABLE DATABASE ocp_db OPEN;
SQL> ALTER PLUGGABLE DATABASE ALL OPEN;
SQL> ALTER PLUGGABLE DATABASE ALL EXCEPT ocp_db OPEN;

. :


SYSDBA, SYSOPER, SYSBACPUP, SYSDG
CDB$ROOT
SQL ALTER PLUGGABLE DATABASE
SQL*Plus STARTUP. :
OPEN READ WRITE -
.
OPEN READ ONLY - , .
OPEN MIGRATE -
. ALTER
DATABASE OPEN UPGRADE.
MOUNTED -
. ,
.
, ALTER PLUGGABLE DATABASE
(PDB). PDB ALTER
PLUGGABLE DATABASE OPEN, READ WRITE " ".
, PDB ,
standby , " " READ ONLY.
, , :
, ;
ALL, ;
ALL EXCEPT, ,
.
:
SQL> ALTER PLUGGABLE DATABASE ocp_db, test OPEN READ WRITE;
SQL> ALTER PLUGGABLE DATABASE ALL OPEN READ WRITE;
SQL> ALTER PLUGGABLE DATABASE ocp_db OPEN READ ONLY RESTRICTED;
SQL> ALTER PLUGGABLE DATABASE ALL EXCEPT ocp_db OPEN;
46

, STARTUP
PLUGGABLE DATABASE . STARTUP PLUGGABLE
DATABASE :
FORCE - readwrite.
RESTRICT - PDB ,
RESTRICTED SESSION.
OPEN - read-write read-only.
OPEN READ WRITE OPEN READ ONLY. " " READ
WRITE.
:
SQL> STARTUP PLUGGABLE DATABASE ocp_db OPEN;
SQL> STARTUP PLUGGABLE DATABASE ocp_db RESTRICT;
SQL> STARTUP PLUGGABLE DATABASE ocp_db OPEN READ ONLY;
SQL> STARTUP PLUGGABLE DATABASE ocp_db FORCE;
ALTER PLUGGABLE DATABASE
. PDB,
SYSOPER SYSDBA ALTER PLUGGABLE DATABASE CLOSE,
. IMMEDIATE,
.
IMMEDIATE , "",
.
. SHUTDOWN IMMEDIATE ALTER PLUGGABLE DATABASE CLOSE
.
:
SQL> ALTER PLUGGABLE DATABASE ocp_db, test CLOSE;
SQL> ALTER PLUGGABLE DATABASE ALL CLOSE;
SQL> ALTER PLUGGABLE DATABASE ALL EXCEPT testdb CLOSE IMMEDIATE;
(CDB) (PDB)
SPFILE
. ,
, PDB, CDB. , ,
.
:
SQL> SELECT name
FROM v$system_parameter
WHERE ispdb_modifiable = 'TRUE'
ORDER BY name;
47

, PDB,
, . PDB
ALTER SYSTEM. SCOPE SPFILE
BOTH, /
. , ,
/ .
, ,
, , PDB.
, ,

(CDB) (PDB)


, .
. ,
:
.
,
.
UNDO
UNDO RAC CDB.
" "
.
" ".

, "
". ,
" ", " " .
CDB " "

SQL> ALTER DATABASE DEFAULT TABLESPACE tbs_users_cdb;
ALTER DATABASE
, :
SQL> ALTER PLUGGABLE DATABASE DEFAULT TABLESPACE tbs_users_pdb;
"
" ( ).
, CDB$ROOT.
. ,
48

" "
, .
,
.
(CDB)
(PDB)
,
.
,
. , ,
(ALTER PLUGGABLE DATABASE, CREATE USER, CREATE ROLE),
.
. ,
, . ,
/ ,
.

:

CREATE USER.
CDB$ROOT.
C## c## ASCII
EBCDIC .
, ,
CREATE USER CONTAINER=ALL.
, CONTAINER ,
CONTAINER=ALL.
- .
.
SET CONTAINER
CREATE SESSION, :
SQL> CREATE USER c##ocp_admin
IDENTIFIED BY password
DEFAULT TABLESPACE ts_cdb_users
QUOTA 100M ON ts_cdb_users
TEMPORARY TABLESPACE temp_ts
CONTAINER = ALL;
SQL> GRANT SET CONTAINER, CREATE SESSION TO c##ocp_admin CONTAINER = ALL;

49


, .
.
, , ,
, .
:
, ,
CREATE USER.
C## c##.
CONTAINER=CURRENT CREATE USER,
, .
CONTAINER CONTAINER=CURRENT.
:
SQL> CREATE USER ocp_user
IDENTIFIED BY password
DEFAULT TABLESPACE ts_pdb_users
QUOTA 100M ON ts_pdb_users
TEMPORARY TABLESPACE temp_ts
PROFILE ocp_profile
CONTAINER = CURRENT;

.
, CREATE ANY TABLE, .
CREATE ANY TABLE , , ,
.
:
, " ",
.
" "
.

CONTAINER=ALL GRANT.
.
PUBLIC.
:
,
, , .
, .
50

,
.

CONTAINER=CURRENT GRANT.

( ) PUBLIC.
CONTAINER GRANT REVOKE ,
. CONTAINER ALL,
. CURRENT
. CURRENT " ",
, , " "
ALL. c##ocp CREATE TABLE.

.
SQL> GRANT CREATE TABLE TO c##ocp CONTAINER=ALL;

. Oracle .
, , .
- .
:

.
.
,
.
.
.
, " "
:
, .
" " SET CONTAINER ADMIN
OPTION .
GRANT CONTAINER_ALL.
C## c## ASCII EBCDIC
. Oracle , DBA.
CONTAINER ALL. ,
, CREATE ROLE ,
PDB. CONTAINER ,

51

, " " .
c##ocp
SQL> CREATE ROLE c##ocp container=ALL;

,


Oracle
RMAN EM Cloud Control.
, .. ,
, .

. (
)
.
, ,
.
, RMAN , ,
.
, ,
. RMAN,
, SYSBACKUP
SYSDBA , . ,
.
RMAN:
:
RMAN> BACKUP DATABASE;
, redo-,
:
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

RMAN> BACKUP DATABASE ROOT;

RMAN:

52

, BACKUP PLUGGABLE
DATABASE RMAN.
PDB.
RMAN> BACKUP PLUGGABLE DATABASE db_ocp, test;
, BACKUP DATABASE
RMAN.
RMAN> BACKUP DATABASE;

, ,
, ,
. ,
.
RESTORE
RECOVER RMAN. RMAN
redo. ,
.
RMAN,
SYSBACKUP SYSDBA,
.
:
RMAN> RESTORE DATABASE;
RMAN> RECOVER DATABASE;
,
, ,
:
RMAN> RECOVER DATABASE DELETE ARCHIVELOG;
,
, . Oracle

.
.
. RMAN
SYSDBA SYSBACKUP . ,
. :
" " .
:

53

RMAN> RESTORE DATABASE ROOT;


RMAN> RECOVER DATABASE ROOT;
. Oracle
seed
. RESTORE PLUGGABLE DATABASE
RECOVER PLUGGABLE DATABASE
RMAN> RESTORE PLUGGABLE DATABASE 'PDB$SEED',db_ocp;
RMAN> RECOVER PLUGGABLE DATABASE 'PDB$SEED',db_ocp;

:
RMAN> ALTER DATABASE OPEN;
RMAN> ALTER PLUGGABLE DATABASE ALL OPEN;

.
, , PDB.
, RESTORE PLUGGABLE DATABASE RECOVER
PLUGGABLE DATABASE (. .). ,
. ,
RESTORE DATABASE RECOVER DATABASE.
.
ocp_db RMAN
SYSDBA SYSBACKUP:
, :
RMAN> ALTER PLUGGABLE DATABASE ocp_db CLOSE;
- , , .
PDB
offline, :
RMAN> ALTER PLUGGABLE DATABASE ocp_db DATAFILE 8 OFFLINE;
" " .
:
RMAN> RESTORE PLUGGABLE DATABASE ocp_db;
RMAN> RECOVER PLUGGABLE DATABASE ocp_db;
- offline,
online:
RMAN> ALTER PLUGGABLE DATABASE ocp_db DATAFILE 8 ONLINE;
54

RMAN.
, :
RMAN> ALTER PLUGGABLE DATABASE ocp_db OPEN;
, RMAN'
SYSDBA, :
;
RMAN> ALTER PLUGGABLE DATABASE CLOSE;
- , , .
PDB
offline, :
RMAN> ALTER DATABASE DATAFILE 19 OFFLINE;
" "
:
RMAN> RESTORE DATABASE;
RMAN> RECOVER DATABASE;
- offline,
online:
RMAN> ALTER DATABASE DATAFILE 19 ONLINE;
RMAN.
, :
RMAN> ALTER PLUGGABLE DATABASE OPEN;

(flashback) ,
. ,
(Point-In-Time-Recovery).
- ,
,
. ,
, , (PITR).
:
ORA-39866: Data files for pluggable database <PDB_name> must be offline to flashback
across a PDB point-in-time recovery

, PITR,
:
55

RMAN, ,
SYSDBA SYSBACKUP .
, (CDB).
, (PDB) offline.
. PDB,
offline, .
,
, RESTORE PLUGGABLE DATABASE RECOVER PLUGGABLE
DATABASE.
PDB online.

56



(Information Lifecycle
Management, ILM)

. Oracle 12c
ILM,
: (Heat Map)
(Automatic Data Optimization, ADO).
(Heat Map)

. , ,
, , , .
,
, .
,
.
(storage tiering)
. ,
, ,
. Oracle, (Heat Map),
. " "
. ,
. ,
, - .
, ,
.
(Automatic Data Optimization, ADO)
(Automatic Data Optimization, ADO)
.
ADO (Smart Compression),

. ADO
/ . , ADO
DBA,
. ADO
.

ILM Oracle,
.
57

ILM.
ALTER SYSTEM ALTER SESSION HEAT_MAP.

SYSTEM SYSAUX . SQL
:
SQL> ALTER SYSTEM SET HEAT_MAP=ON;
SQL> ALTER SYSTEM SET HEAT_MAP=OFF;

:
V$HEAT_MAP_SEGMENT -
.
DBA_HEAT_MAP_SEGMENT -
.
DBA_HEAT_MAP_SEG_HISTOGRAM -
.
DBA_HEATMAP_TOP_OBJECTS - 1000
.
DBA_HEATMAP_TOP_TABLESPACES - 100
.
,
(ADO).
ADO ,
, ALTER . ADO
SEGMENT, ROW GROUP.
:
SQL> SELECT policy_name, policy_type, enabled FROM user_ilmpolicies;
SQL CREATE TABLE ALTER TABLE ,
, , ILM. policy
, .
ILM ADO - , P1, P2, ... Pn.
.
, ,
.
.
" " ,
:
COMPRESS ADVANCED -
LOW LOB .
58

COMPRESS FOR QUERY LOW/QUERY HIGH -


(MEDIUM) LOB .
COMPRESS FOR ARCHIVE LOW/ARCHIVE HIGH -
(HIGH) LOB .
ILM HR.SALES:
SQL> ALTER TABLE hr.sales MODIFY PARTITION sales_q01_2012 ILM ADD POLICY ROW STORE
COMPRESS ADVANCED ROW AFTER 60 DAYS OF NO MODIFICATION;
SQL> ALTER TABLE hr.sales MODIFY PARTITION sales_q01_2009 ILM ADD POLICY COMPRESS FOR
ARCHIVE HIGH SEGMENT AFTER 12 MONTHS OF NO MODIFICATION;
SQL> ALTER TABLE hr.sales MODIFY PARTITION sales_q01_2007 ILM ADD POLICY COMPRESS FOR
ARCHIVE HIGH SEGMENT AFTER 12 MONTHS OF NO ACCESS;
ILM ,
. :
SQL> ALTER TABLE hr.sales MODIFY PARTITION sales_q01_2012 ILM DISABLE POLICY P2;
SQL> ALTER TABLE hr.sales MODIFY PARTITION sales_q01_2012 ILM DELETE POLICY P2;

59

online
Oracle 12c SQL ALTER DATABASE MOVE DATAFILE
, .

. .
, ALTER DATABASE,
, . REUSE, Oracle
, .
SQL ALTER DATABASE MOVE
DATAFILE .
, , .
" " . KEEP,
.
.
, ,
REUSE, KEEP:
SQL> ALTER DATABASE MOVE DATAFILE '/u01/oracle/X/user1.dbf' TO '/u01/oracle/X/user_ts1.dbf';
SQL> ALTER DATABASE MOVE DATAFILE '/u01/oracle/X/user_ts1.dbf' TO
'/u02/oracle/X/user_ts1.dbf';
SQL> ALTER DATABASE MOVE DATAFILE '/u01/oracle/X/user_ts1.dbf' TO
'/u02/oracle/X/user_ts1.dbf' REUSE;
SQL> ALTER DATABASE MOVE DATAFILE '/u01/oracle/X/user_ts1.dbf' TO
'/u02/oracle/X/user_ts1.dbf' KEEP;

60

(In-Database
(Valid-Time Temporal)

Archiving)

(Information Lifecycle
Management, ILM)
Oracle (Information
Lifecycle Management, ILM)
. , , . ,
, ,
. ILM ,
,
() .
ILM, Oracle
. , ILM
, . ILM -

.
Oracle, (Valid-Time Temporal Validity),
.
. ,
, .

, .

61


Oracle 12c, ,
, .
, , ,
. ILM ,
. ,
.
, ,
:
(valid time) - .
,
.
- ,
, .
(Valid-time flashback queries) AS OF .
-
. , .

. ,
. DATE
, PERIOD FOR :
SQL> CREATE TABLE probationary_emps (
emp_id NUMBER PRIMARY KEY,
first_name VARCHAR2(20),
last_name VARCHAR2(25),
PERIOD FOR emp_probation);
EMP_ID, FIRST_NAME
LAST_NAME:
SQL> DESCRIBE probationary_emps;
Name Null? Type
-------------- --------- -------------EMP_ID NOT NULL NUMBER
FIRST_NAME VARCHAR2(20)
LAST_NAME VARCHAR2(25)


USER_TAB_COLS:
SQL> SELECT column_name, data_type, column_id AS CID,
internal_column_id AS ICID, hidden_column AS HID
62

FROM user_tab_cols
WHERE table_name = 'PROBATIONARY_EMPS';
COLUMN_NAME
DATA_TYPE
CID ICID HID
-------------------- ---------------------------- --- ---- --EMP_PROBATION_START TIMESTAMP(6) WITH TIME ZONE
1
YES
EMP_PROBATION_END
TIMESTAMP(6) WITH TIME ZONE
2
YES
EMP_PROBATION
NUMBER
3
YES
EMP_ID
NUMBER
1
4
NO
FIRST_NAME
VARCHAR2
2
5
NO
LAST_NAME
VARCHAR2
3
6
NO

INSERT
90- :
SQL> INSERT INTO probationary_emps(emp_probation_start, emp_probation_end, emp_id,
first_name, last_name)
VALUES ('01-10-2013 12.00.01', '30-12-2013 12.00.01',1234, 'John', 'Doe');
SQL> INSERT INTO probationary_emps(emp_probation_start, emp_probation_end, emp_id,
first_name, last_name)
VALUES ('14-09-2013 12.00.01', '13-12-2013 12.00.01',5678, 'Fred', 'Rogers');
SQL> SELECT emp_id FROM probationary_emps;
EMP_ID
---------1234
5678

:
SQL> SELECT emp_id FROM probationary_emps
WHERE emp_probation_start < '20-SEP-2013 12.00.01'
AND emp_probation_end > '20-SEP-13 2012.00.01';
EMP_ID
---------5678

, , ,
DATE . ,
, ,
.

PL/SQL

DBMS_FLASHBACK_ARCHIVE, ENABLE_AT_VALID_TIME.
:
SQL> EXECUTE DBMS_FLASHBACK_ARCHIVE.enable_at_valid_time ('ASOF', '20-DEC-2013 12.00.01');
SQL> SELECT emp_id FROM probationary_emps;
63

EMP_ID
---------5678

,
:
SQL> EXECUTE DBMS_FLASHBACK_ARCHIVE.enable_at_valid_time('CURRENT');
SQL> SELECT emp_id
FROM probationary_emps;
no rows selected

,
(" "):
SQL> EXECUTE DBMS_FLASHBACK_ARCHIVE.enable_at_valid_time('ALL');
SQL> SELECT emp_id FROM probationary_emps;
EMP_ID
---------1234
5678

64

(In-Database archiving)

, .

.
.
ROW ARCHIVAL ( SQL ALTER TABLE <table_name> ROW
ARCHIVAL;) ORA_ARCHIVE_STATE .
ROW ARCHIVAL VISIBILITY ACTIVE,
ORA_ARCHIVE_STATE .
ALL, , .
:
SQL> ALTER SESSION SET ROW ARCHIVAL VISIBILITY = ACTIVE;
SQL> CREATE TABLE archival_example
(col_1 NUMBERL,
col_2 VARCHAR2(20)) ROW ARCHIVAL;
SQL> INSERT INTO archival_ example (col1, col2) VALUES (1, 'Record One');
SQL> INSERT INTO archival_ example (col1, col2) VALUES (2, 'Record Two');
SQL> INSERT INTO archival_ example (col1, col2) VALUES (3, 'Record Three');
SQL> INSERT INTO archival_ example (col1, col2) VALUES (4, 'Record Four');
SQL> SELECT col1, col2, ora_archive_state FROM archival_example;
COL_1
----1
2
3
4

COL_2
-----------Record One
Record Two
Record Three
Record Four

ORA_ARCHIVE_STATE
-----------------0
0
0
0

SQL> UPDATE archival_ example SET ora_archive_state = '6' WHERE col_1 = 3;


SQL> SELECT col_1, col_2, ora_archive_state FROM archival_example;
COL_1
----1
2
4

COL_2
-----------Record One
Record Two
Record Four

ORA_ARCHIVE_STATE
-----------------0
0
0

SQL> ALTER SESSION SET ROW ARCHIVAL VISIBILITY = ALL;


SQL> SELECT SELECT col_1, col_2, ora_archive_state FROM archival_example;
COL_1
----1
2
3
4

COL_2
-----------Record One
Record Two
Record Three
Record Four

ORA_ARCHIVE_STATE
-----------------0
0
6
0

65



Oracle 11g ,
. ()

UNIFIED_AUDIT_TRAIL .
AUDSYS SYSAUX.
. SYS
AUDIT_ADMIN AUDIT_VIEWER. AUDIT_ADMIN
. AUDIT_VIEWER ,
.
:
AUDIT.
(fine-grained audit record) DBMS_FGA.
Oracle Real Application Security.
Oracle Recovery Manager ( RMAN "
").
Oracle Database Vault.
Oracle Label Security.
Oracle Data Mining.
Oracle Data Pump.
Oracle SQL*Loader Direct Load.
,
, .
READ-ONLY,
$ORACLE_BASE/audit/$ORACLE_SID. V$OPTION
, :
SQL> SELECT value FROM v$option WHERE parameter = 'Unified Auditing';
PARAMETER VALUE
---------------- ---------Unified Auditing TRUE

, .
FALSE. 12c " "
ORA_SECURECONFIG.
( 12c), .
AUDIT_TRAIL. NONE
12c, .
(PDB)
. ,
, .
66

12c,
, .
, .
, .
.
ORA_SECURECONFIG
12c. :
ADMINISTER KEY MANAGEMENT,
ALTER ANY PROCEDURE, ALTER ANY SQL TRANSLATION PROFILE, ALTER ANY TABLE, ALTER DATABASE LINK,
ALTER DATABASE, ALTER PLUGGABLE DATABASE, ALTER PROFILE, ALTER ROLE, ALTER SYSTEM, ALTER USER,
AUDIT SYSTEM,
CREATE ANY JOB, CREATE ANY LIBRARY, CREATE ANY PROCEDURE, CREATE ANY SQL TRANSLATION PROFILE,
CREATE ANY TABLE, CREATE DATABASE LINK, CREATE DIRECTORY, CREATE EXTERNAL JOB, CREATE
PLUGGABLE DATABASE, CREATE PROFILE, CREATE PUBLIC SYNONYM, CREATE ROLE, CREATE SQL
TRANSLATION PROFILE, CREATE USER,
DROP ANY PROCEDURE, DROP ANY SQL TRANSLATION PROFILE, DROP ANY TABLE, DROP DATABASE LINK,
DROP DIRECTORY, DROP PLUGGABLE DATABASE, DROP PROFILE, DROP PUBLIC SYNONYM, DROP ROLE,
DROP USER,
EXEMPT ACCESS POLICY, EXEMPT REDACTION POLICY,
GRANT ANY OBJECT PRIVILEGE, GRANT ANY PRIVILEGE, GRANT ANY ROLE,
LOGMINING, LOGOFF, LOGON,
PURGE DBA_RECYCLEBIN,
SET ROLE,
TRANSLATE ANY SQL
, TRANSLATE ANY SQL
, ORA_SECURECONFIG .

.
.
:
AUDIT_ADMIN,
AUDIT_UNIFIED_ENABLE_POLICIES ( POLICY_NAME ENABLE_OPT)
NOAUDIT POLICY .
SYSDBA SYSOPER.
67

SHUTDOWN IMMEDIATE

$ cd $ORACLE_HOME/rdbms/lib
$ make -f ins_rdbms.mk uniaud_off ioracle
SQL*Plus STARTUP.
" " SGA
AUDSYS SYSAUX. , .. ,
,
. , SHUTDOWN ABORT,
.
, . ,
.
.
:
SQL*Plus
AUDIT_ADMIN.
AUDIT_TRAIL_MODE DBMS_AUDIT_MGMT
:
SQL> BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY(
DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,
DBMS_AUDIT_MGMT.AUDIT_TRAIL_WRITE_MODE,
DBMS_AUDIT_MGMT.AUDIT_TRAIL_IMMEDIATE_WRITE);
END;
/
( ):
SQL> BEGIN
DBMS_AUDIT_MGMT.SET_AUDIT_TRAIL_PROPERTY(
DBMS_AUDIT_MGMT.AUDIT_TRAIL_UNIFIED,
DBMS_AUDIT_MGMT.AUDIT_TRAIL_WRITE_MODE,
DBMS_AUDIT_MGMT.AUDIT_TRAIL_QUEUED_WRITE);
END;
/
, , ,
, " ",
$ORACLE_BASE/audit/$ORACLE_SID.

DBMS_AUDIT_MGMT.LOAD_UNIFIED_AUDIT_FILES. :
68

SQL*Plus
AUDIT_ADMIN.
, /.
DBMS_AUDIT_MGMT.LOAD_UNIFIED_AUDIT_FILES.
SQL> EXEC DBMS_AUDIT_MGMT.LOAD_UNIFIED_AUDIT_FILES;
AUDSYS
$ORACLE_BASE/audit/$ORACLE_SID.

69


,
.
CREATE AUDIT POLICY.
. , . SQL
AUDIT NOAUDIT . SQL AUDIT
NOAUDIT .
:
,
, SYSDBA, .
, .. , ..
, .
Oracle Database Real Application Security, Oracle Recovery Manager, Oracle Data
Mining, Oracle Data Pump, " " Oracle SQL*Loader, Oracle Database
Vault Oracle Label Security.
,
. ,
. ,
.
, UGA .
UGA,
.
CREATE AUDIT POLICY
, SYS, ,
. :
CREATE AUDIT POLICY policy_name
{ {privilege_audit_clause [action_audit_clause ] [role_audit_clause ]}
| { action_audit_clause [role_audit_clause ] }
| { role_audit_clause }
}[
WHEN audit_condition EVALUATE PER {STATEMENT|SESSION|INSTANCE}]
[CONTAINER = {CURRENT | ALL}];
,
, , ALTER ANY TABLE DROP ANY TABLE,
ocp_admin:
SQL> CREATE AUDIT POLICY change_table_pol PRIVILEGES ALTER ANY TABLE, DROP ANY TABLE
ROLES ocp_admin;
AUDIT POLICY.
,
70

. , ,
.

. ,
, ,
. AUDIT :
BY - . AUDIT
POLICY change_table_pol BY ocpuser.
EXCEPT - . AUDIT POLICY
change_table_pol EXCEPT card1;
WHENEVER SUCCESFUL - . AUDIT POLICY
change_table_pol WHENEVER SUCCESSFULL.
WHENEVER NOT SUCCESFUL - . AUDIT
POLICY change_table_pol WHENEVER NOT SUCCESSFULL.
, :
WHENEVER - - WHENEVER , ,
.
BY/EXCEPT - BY, EXCEPT,
.
AUDIT ... BY - AUDIT
, .
AUDIT ... EXCEPT - AUDIT
,
.
COMMON policies -
.
LOCAL policies -
, .
SQL> AUDIT POLICY ORA_DATABASE_PARAMETER except AAA;
SQL> AUDIT POLICY ORA_DATABASE_PARAMETER except SYS, SYSTEM;

SYS SYSTEM.
" " RMAN .
UNIFIED_AUDIT_TRAIL , RMAN_
RMAN . RMAN
UNIFIED_AUDIT_TRAIL :
RMAN_SESSION_RECID - RMAN.
RMAN_SESSION_STAMP. RMAN.
71

RMAN_SESSION_STAMP - .
RMAN_OPERATION - RMAN, .
RMAN_OBJECT_TYPE - , RMAN.
RMAN_DEVICE_TYPE - , RMAN.

72



Oracle 12c .

. , , ,
, .
SYSBACKUP, SYSDG, SYSKM,
, .
SYSDBA .
SYSBACKUP - Recovery Manager (RMAN)
/
RMAN SQL*Plus.
SYSDG - SYSDG
Data Guard. Data Guard Broker,
dgmgrl. , SYSDG ,
.
SYSKM - SYSKM
Transparent Data Encryption. , SYSKM
,
.
, (recycle bin) DBA.
SYSDBA.
PURGE DBA_RECYCLEBIN PURGE
DBA_RECYCLEBIN, SYSDBA:
SQL> sho user
USER is "SYSTEM"

SQL> PURGE dba_recyclebin;


purge dba_recyclebin
*
ERROR at line 1:
ORA-01031: insufficient privileges

SQL> GRANT PURGE DBA_RECYCLEBIN TO system;


Grant succeeded.

SQL> PURGE dba_recyclebin;


DBA Recyclebin purged.

73

SELECT ANY DICTIONARY


DEFAULT_PWD$, ENC$, LINK$, USER$, USER_HISTORY$ XS$VERIFIERS.
" ",
SELECT ANY DICTIONARY.
Oracle 12c, UNLIMITED TABLESPACE RESOURCE.
" ",
, RESOURCE,
.

74

,
Oracle Database Vault ( )
. ,
.
.
.

.
Oracle Database Vault, .
Enterprise Manager Cloud Control,
PL/SQL DBMS_PRIVILEGE_CAPTURE. ,
CAPTURE_ADMIN,
DBMS_PRIVILEGE_CAPTURE, SELECT , .
DBMS_PRIVILEGE_CAPTURE , ,
. , ,
.
. :
.
SQL> BEGIN
DBMS_PRIVILEGE_CAPTURE.CREATE_CAPTURE(
name => 'ocprep_dev_role_pol',
description => 'Captures ocprep_dev role use',
type => DBMS_PRIVILEGE_CAPTURE.G_ROLE,
roles => role_name_list('DBA', 'RESOURCE');
END;
/
.
SQL> EXEC DBMS_PRIVILEGE_CAPTURE.ENABLE_CAPTURE ('ocprep_dev_role_pol');
.
SQL> EXEC DBMS_PRIVILEGE_CAPTURE.DISABLE_CAPTURE ('ocprep_dev_role_pol');
.
SQL> EXEC DBMS_PRIVILEGE_CAPTURE.GENERATE_RESULT ('ocprep_dev_role_pol');
SQL> SELECT username, sys_priv, object_owner, object_name FROM dba_used_privs
WHERE capture = 'ocprep_dev_role_pol';
()
SQL> EXEC DBMS_PRIVILEGE_CAPTURE.DROP_CAPTURE ('ocprep_dev_role_pol');
75

DBMS_PRIVILEGE_CAPTURE.G_DATABASE,
. ,
. ,
. ,
. .
,
. SYS.
, ,
Oracle Oracle Database Vault:
DBA_PRIV_CAPTURES -
.
DBA_USED_PRIVS - ,
.
DBA_UNUSED_PRIVS - ,
.
DBA_USED_OBJPRIVS - ,
. ( ).
DBA_UNUSED_OBJPRIVS - -- ,
. ( ).
DBA_USED_SYSPRIVS - ,
. (
).
DBA_UNUSED_SYSPRIVS - ,
. (
).

76

(redaction) Oracle
Oracle
Oracle " " ,
. , ,
. , .
Oracle
, .
:
(Full redaction) -
. , ,
. NUMBER (0),
- .
(Partial redaction) -
. ,
, 4 .
(Regular expressions) -
.
. .
(Random redaction) -
,
.
(No redaction) - None
.
.
, ,
:
(Full, Partial, Random .).
( ,
).
(
, ).

EXECUTE PL/SQL DBMS_REDACT. :
DBMS_REDACT.ADD_POLICY -
.
DBMS_REDACT.ALTER_POLICY -
DBMS_REDACT.UPDATE_FULL_REDACTION_VALUES -
.
.
77

DBMS_REDACT.ENABLE_POLICY - .
DBMS_REDACT.DISABLE_POLICY - .
DBMS_REDACT.DROP_POLICY - .
(full data redaction)
. " ", NUMBER (0), VARCHAR2 . UPDATE_FULL_REDACTION_VALUES
. EDI_NUM
EDIGAS.EDI_DATA. "expression" ,
, , EXEMPT
REDACTION POLICY. SYS SYSTEM EXEMPT REDACTION
POLICY. ,

.
, ,
, , .
(,
), .
- ,

.
SQL> BEGIN
DBMS_REDACT.ADD_POLICY(
object_schema => 'edigas',
object_name => 'edi_data',
column_name => 'edi_num',
policy_name => 'redact_edi_num',
function_type => DBMS_REDACT.FULL,
expression => '1=1');
END;
/

"expression"

DBMS_REDACT.ADD_POLICY . TRUE,
.
:
SYS_CONTEXT - .
" " SYS_CONTEXT USERENV.
SESSION_USER CLIENT_IDENTIFIER.
Application Express function - V, NV (
APEX_UTIL.GET_SESSION_STATE APEX_UTIL.GET_NUMERIC_SESSION_STATE )
.
78

:
=, !=, >, <, >=, <=
NULL .
TRUE, NULL FALSE.
.
"expression"
:
(User Environment) -
:
expression => 'SYS_CONTEXT(''USERENV'',''SESSION_USER'') = ''IUS'''
- /
SYS_SESSION_ROLES . TRUE,
/, FALSE, .
AIS_ADMIN
, :
expression => 'SYS_CONTEXT(''SYS_SESSION_ROLES'',''AIS_ADMIN'') = ''FALSE'''
(No Filtering) -
, SYS, SYSTEM EXEMPT
REDUCTION POLICY.
( ):
expression => '1=1'
EXEMPT REDUCTION POLICY
Oracle. , ,
, , SYS EXEMPT
REDUCTION POLICY. EXEMPT REDUCTION POLICY DBA.
, WITH
ADMIN OPTION DBA.
.
, , ,
, , ********1234. ,
, -. ,
, .
, :
DBMS_REDACT.REDACT_US_SSN_F5 - 5
- , VARCHAR2. ..,
123-45-6789 XXX-XX-6789.
79

DBMS_REDACT.REDACT_US_SSN_L4 - 4
, VARCHAR2. .., 123-45-6789
123-45-XXXX.
DBMS_REDACT.REDACT_US_SSN_ENTIRE - ,
VARCHAR2. .., 123-45-6789 XXX-XX-.
DBMS_REDACT.REDACT_ZIP_CODE - 5-
, VARCHAR2. .., 12345 XXXXX.
DBMS_REDACT.REDACT_DATE_MILLENNIUM - --
01-JAN-00 (January 1, 2000).
DBMS_REDACT.REDACT_DATE_EPOCH - 01-JAN-70.
VARCHAR2
REDACT_US_SSN_L4:
SQL> BEGIN
DBMS_REDACT.ADD_POLICY(
object_schema => 'edigas',
object_name => 'edi_data',
column_name => 'edi_nn',
policy_name => 'redact_cust_edi_nn',
function_type => DBMS_REDACT.PARTIAL,
function_parameters => DBMS_REDACT.REDACT_US_SSN_L4,
expression => '1=1',
policy_description => 'Partially redacts last 4 numbers in EDI numbers');
END;
/

80

RMAN
RMAN
(RMAN) Oracle 12c
. .


. RMAN
RECOVER TABLE.
RMAN
.
, ,
.
,
, .
, , ,
.
RMAN
RMAN SQL
SQL. ,
RMAN, SQL*Plus ,
SQL -
. DESCRIBE
RMAN.

,
. (auxiliary)
.
, .
.
, .
, .
.
NOOPEN
NOOPEN DUPLICATE
.
. ,
RESETLOGS .
RMAN> DUPLICATE TARGET DATABASE TO newdb FROM ACTIVE DATABASE NOOPEN;

81

(Multisection Image Copies)


SECTION SIZE
.
.
RMAN> BACKUP AS COPY SECTION SIZE 100M DATABASE;

SECTION SIZE,
,
.
.
RMAN> BACKUP INCREMENTAL LEVEL 1 SECTION SIZE 100M DATAFILE
/u01/oracle/X/datafiles/users_01.dbf;
(Storage Snapshot Optimization)


BACKUP.
/ -
-redo. ,
,
:
- (crash consistent)
.
.
.

RECOVER SNAPSHOT TIME,


-
.
.

82

(Flashback Data Archive)


12 Oracle - Oracle
Flashback Data Archive (FDA). :
(User-context tracking) -
, ,
, ,
. SET_CONTEXT_LEVEL DBMS_FLASHBACK_ARCHIVE
, GET_CONTEXT_LEVEL -
. TYPICAL ,
ID , ID :
SQL> BEGIN
DBMS_FLASHBACK_ARCHIVE.SET_CONTEXT_LEVEL ('TYPICAL');
END;
/
(Database hardening) -
"".
. , ..
read-only, , DML
, .

REGISTER_APPLICATION

DBMS_FLASHBACK_ARCHIVE
,

.
Oracle Database PL/SQL Packages and Types Reference.
- DBMS_FLASHBACK_ARCHIVE
.
,
Data Pump. ,
.
,
. Oracle
Database PL/SQL Packages and Types Reference.

83



,
. ETL ,
SQL-.
:
- SQL PL/SQL
/.
() -

. .
Oracle 11g,
. 12c,
. Oracle , DML
DDL . " "
, ) SQL 5
/ (.. "" ) )
.
, SQL ,
"Monitored SQL Executions" Enterprise Manager Cloud Control,
, DBMS_MONITOR. "Monitored
SQL Executions" Performance.
, SQL .
.
SQL-
:
V$SQL_MONITOR - SQL
.
. SQL,
.
DBOP_NAME, DBOP_EXEC_ID SQL_ID.
V$SQL_MONITOR_SESSTAT - ,
. .
XML, " - ".
.
V$SQL_PLAN_MONITOR -
SQL-.
84

V$SQL_PLAN_MONITOR SQL-.
V$SQL_PLAN_MONITOR
. .
DBMS_SQL_MONITOR ,
. :
REPORT_SQL_MONITOR - ,
, .
.
BEGIN_OPERATION -
.
END_OPERATION -
.
DBMS_MONITOR.BEGIN_OPERATION(
dbop_name IN VARCHAR2,
dbop_eid IN NUMBER := NULL,
force_tracking IN VARCHAR2 := NO_FORCE_TRACKING,
attribute_list IN VARCHAR2 := NULL)
RETURN NUMBER;
BEGIN_OPERATION .
:
dbop_name - .
dbpop_eid - , , (
).
force_tracking - FORCE_TRACKING ,
/. " "
NO_FORCE_TRACKING, ""
( ).
attribute_list - "-", ,
, table_name=emp, operation=load. ( ).
SQL , STATISTICS_LEVEL
TYPICAL ALL. Oracle
. CONTROL_MANAGEMENT_PACK_ACCESS
DIAGNOSTIC+TUNING (" "), SQL.
/ SQL- .. .
MONITOR , NO_MONITOR . ,
, :
SQL> SELECT /*+ MONITOR */ first_name, last_name, email FROM employees;
SQL> SELECT /*+ NO_MONITOR */ first_name, last_name, email FROM employees;
85

,
DBMS_SQL_MONITOR. BEGIN_OPERATION
END_OPERATION.
:
SQL*Plus .
(execution ID).
SQL> var op_id NUMBER;
. my_op.
SQL> EXEC :op_id := DBMS_SQL_MONITOR.BEGIN_OPERATION('my_op');
, .
SQL> SELECT COUNT(*) FROM hr.employees;
SQL> SELECT COUNT(*) FROM hr.departments;
.
SQL> EXEC DBMS_SQL_MONITOR.END_OPERATION(' my_op ', :op_id);
, .
SQL> SELECT dbop_name, status FROM v$sql_monitor WHERE dbop_name = ' my_op ';
DBOP_NAME STATUS
---------- --------my_op DONE

86

SQL

Oracle 12c - (Adaptive Query
Optimization),
, .
:
(Adaptive Plans) -
/ .
(Adaptive Statistics) -
, .


SQL- . , ,
. ,
,
() .

, " ".
,
. ,
. ,
, .

.
,
EXPLAIN PLAN DBMS_XPLAN.DISPLAY_CURSOR. EXPLAIN
PLAN " ", .
DBMS_XPLAN.DISPLAY_CURSOR

.
,
DBMS_XPLAN, . "+adaptive"
() "-" id . ,
, .. . SQL Monitor Oracle Enterprise
Manager , ,
.
V$SQL (IS_RESOLVED_ADAPTIVE_PLAN),
, SQL , .
"Y", , .

87

"N", , .
IS_RESOLVED_ADAPTIVE_PLAN NULL.
OPTIMIZER_ADAPTIVE_REPORTING_ONLY TRUE
( " " FALSE), ,
, -
. TRUE " ", ,
, . DBMS_XPLAN,
'+report'.

, . ,
, ,
. SQL- ,
. ,
, .
,
. Oracle 12c
.

, "GROUP
BY". OPTIMIZER_DYNAMIC_SAMPLING 11.
,
SQL , .
, ,
,
SQL-. 11,
. ,
SQL.

. SQL
, . ,
.
, ,
. Oracle 12c
:
(Statistics feedback) - , ,
(cardinality feedback),
, .
SQL- ,
. ,
88

.
SQL , SQL-
, .
(Performance Feedback) -
SQL-
Automatic Degree of Parallelism (AutoDOP) .
SQL- ,
.

, . ,
,
DOP .
SQL (SQL plan directives) -- SQL
,
.
, SQL-.
SQL-.
SQL SYSAUX.
SQL, 53 ,
.

DBA_SQL_PLAN_DIRECTIVES DBA_SQL_PLAN_DIR_OBJECTS.

.
.
Oracle
.
, , ,
.
12c
, .
.
INCREMENTAL_STALENESS ,
. " " NULL,
.
:
USE_STALE_PERCENT -
, STALE_PERCENTAGE (10% "
").
USE_LOCKED_STATS - (locked),
,
.
89


.
. ,
, , .
12c
. .
12 .
,
. INCREMENTAL_LEVEL DBMS_STAT
. INCREMENTAL_LEVEL TABLE ( " "
PARTITION), Oracle , .
.

DBMS_STATS.SET_GLOBAL_PREF
CONCURRENT, Oracle Job Scheduler
Advanced Queuing
( ) . 12
. ,

.
, AUTOSTAT_TARGET ALL AUTO.
(Automatic column group detection)

GROUP BY,
.
, .
:
(Seed column usage) - Oracle
, .
SQL Tuning Set .
DBMS_STATS.SEED_COL_USAGE
.
(Create the column groups)
DBMS_STATS.CREATE_EXTENDED_STATS ,
.
,
. ,
DBMS_STATS.CREATE_EXTENDED_STATS.
(Regather statistics) -
.

90

SQL
12 - SQL.

. SQL COMPREHENSIVE,
SPM Evolve Advisor (SYS_AUTO_SPM_EVOLVE_TASK) SQL
, , .
, , SQL
(baseline), .
SQL-. , ,
.
DBMS_SPM.
Automatic SPM Evolve Advisor
. Automatic SQL Tuning Advisor, Automatic SPM Evolve
Advisor. .
Enterprise manager PL/SQL DBMS_AUTO_TASK_ADMIN
:

PL/SQL :
SQL> BEGIN
DBMS_AUTO_TASK_ADMIN.ENABLE (
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL
);
END;
/
.
SQL> SELECT client_name, status
FROM dba_autotask_client
WHERE client_name = 'sql tuning advisor';
CLIENT_NAME STATUS
-------------------- -------sql tuning advisor ENABLED

DBMS_AUTO_TASK_ADMIN.DISABLE
. DBMS_SPM .
Oracle Database SQL Tuning Guide.
, SQL Plan Management Evolve task
.
PL/SQL Cloud Control.
91

, .
DBMS_SPM , :
ACCEPT_SQL_PLAN_BASELINE -
SQL.
CREATE_EVOLVE_TASK - ,
SQL-.
SQL -,
, , .
EXECUTE_EVOLVE_TASK - .
, , . ,
.
IMPLEMENT_EVOLVE_TASK -
.
REPORT_EVOLVE_TASK -
CLOB. .
SET_EVOLVE_TASK_PARAMETER -
. 12 TIME_LIMIT.
SQL
:
.
( ).
.
, .
.

92

(Emergency Monitoring),
(Real-Time ADDM), (Compare Period ADDM)
(ASH Analytics)

DBA ""
.
,
.
(Emergency Monitoring) Enterprise Manager
Cloud Control SGA. / SQL
SGA.
(Emergency Monitoring) (Performance) EM
Cloud Control.

. 23 Oracle EM Cloud Control 12c

ASH
(Hang Analysis).
""
( ).

93

. 24 Oracle EM Cloud Control 12c

ADDM
ADDM Oracle Enterprise Manager Cloud
Control 12c, Enterprise Manager Express.
, EM Express
- . ADDM
,
. .
ADDM
. - ADDM
.
, ADDM
:
- ADDM JDBC
.
.
- ,
, JDBC- .
, ADDM , ADDM,
ADDM . ADDM
AWR. ADDM
94

ASH SGA AWR, .. ADDM


.
, .
ASH
MMON (manageability monitor process) . MMON
ADDM , -
:
High load ( ) - ,
.
I/O bound ( /) - /
.
CPU bound ( ) - 10%
50%.
Over-allocated memory ( ) - 95%
.
Interconnect bound ( ) -
.
Session limit ( ) - 100% .
Process limit ( ) - 100%
.
Hung sessions ( ) - , 10%
.
Deadlock detected ( ) -
.
MMON ADDM AWR.
DBA_HIT_REPORTS. ADDM
, ,
:
(Duration between reports) - ADDM
5 ,
.
Oracle RAC control - ADDM
. Oracle RAC ADDM
, ,
MMON .
(Repeated triggers) - ADDM
,
45 .
(Newly identified issues) - ,
45 ,
.

95

ADDM
ADDM
.
Enterprise Manager Cloud Control 12c ,
. Oracle
10.2.0.4 , Cloud Control.
:
(comparison period) - , ,
.
.
(base period) - ,
. ,
, .
ADDM :
1. Performance EM Cloud Control AWR Compare Period
ADDM.
2. Run Compare ADDM .
3. Database Compare Period Report, Run.
4. .
:
(overview) - ,
.
SQL-. 100%, ""
. 0%,
.
(configuration) - , ,
.
(findings) -
.
, .
" " (Change Impact),
. ,
, - .
(Resources) -
. CPU, , /
RAC.

96


ASH

ADDM AWR.
, ADDM ,

AWR.
.
Oracle
SGA.
, , ,
Idle wait.
- Active Session History (ASH).
V$ACTIVE_SESSION_HISTORY. ASH,
:
SQL .
, .
.
.
.
.
AWR Oracle Enterprise Manager Cloud Control.
ASH EM Cloud Control :
Database Home.
Performance Performance Home.
.
Performance.
Average Active Sessions Run ASH Report. Run ASH Report.
,
.
Generate Report.
ASH Report Results
Run ASH Report.
.
ASH :
(Top Events) -
. , .
(Load Profile) - ,
. ,
SQL-,
.
97

SQL (Top SQL) - SQL-


. SQL-
.
(Top Sessions) - ,
. ,
.
// (Top DB Objects/Files/Latches) -

. ,
, .
(Activity Over Time) -

.
EM Cloud Control ASH Analytics,
ASH ,
(ASH) , :
.
.
,
.



Oracle,
.
.
,
. :
(CDB) - PDB,
. PDB
, PDB.
(PDB) - .
:

.
, ,
.
:
,
.
.
98

.
PDB.
PDB.


Oracle
Oracle ,
. . Oracle
, ,
. Oracle , ..
.
12c Unix/Linux Oracle
. Oracle *nix
.
Oracle, (thread)
.
. ,
THREADED_EXECUTION YES .

( Oracle - ). , PMON DBW0 ,
LGWR SMON . P$PROCESS
Oracle , ID ID
.

, .
ORA-1031:
SQL> ALTER SYSTEM SET threaded_execution=true SCOPE=SPFILE;
System altered.

SQL> shutdown immediate


Database closed.
Database dismounted.
ORACLE instance shut down.

SQL> startup
ORA-01017: invalid username/password; logon denied

SQL>

99

(flash cache)
Database Smart Flash Cache . Solaris Linux.
, :
Buffer Pool Advisory AWR STATSPACK ,
.
"db file sequential read" .
(spare) .
Database Smart Flash Cache:
DB_FLASH_CACHE_FILE - Database Smart Flash
Cache. , ASM,
-.
. ,
. 16 .
DB_FLASH_CACHE_SIZE - Database Smart Flash Cache.
, DB_FLASH_CACHE_FILE.
, .
nG.
V$FLASHFILESTAT
(latency), .
-, ALTER SYSTEM
DB_FLASH_CACHE_SIZE.
-. .

100



12c
. ,
(, B-tree bitmap). ,
, ,
. ,
.
,
:
B-tree .
.
.

101


12c .
,
. , :
SELECT * FROM SQL.
DESCRIBE SQL*Plus.
%ROWTYPE PL/SQL.
Describe Oracle Call Interface (OCI).
SELECT.
, ,
INSERT. INSERT ,
.
,
. .
.
:
, .
.

102

online
" "
. () " ",
DML
.
" " " Reorganize Objects"
Oracle EM Cloud Control DBMS_REDEFINITION.
,
.
12 .
:

o
o

(Multiple Partitions) -
.
.
.
(Tables With VPD Policies) -

Virtual Private Database (VPD). copy_vpd_policy
START_REDEF_TABLE VDP
. :
DBMS_REDEFINITION.CONS_VPD_NONE - " ". ,
. ,
, .
DBMS_REDEFINITION.CONS_VPD_AUTO -
" ".
DBMS_REDEFINITION.CONS_VPD_MANUAL - ,
.
VPD ,
/ VPD
.
(Lock Timeout for
FINISH_REDEF_TABLE) - ( ),
FINISH_REDEF_TABLE
. ,
.
.
REDEF_TABLE - DBMS_REDEFINITION.
. REDEF_TABLE
, , ,
:
, , ,
LOB-
103

o
o

, , ,
LOB
LOB , SECUREFILE BASICFILE

104

ADR (Automatic Diagnostic Repository)


ADR
Oracle 12c - .
(DDL)
, alert.log.
ENABLE_DDL_LOGGING TRUE, DDL, ,
. FALSE, DDL . DDL .
, , XML, .
DDL log/dll ADR
IPS .
ENABLE_DDL_LOGGING TRUE, DDL :
ALTER/CREATE/DROP/TRUNCATE CLUSTER
ALTER/CREATE/DROP FUNCTION
ALTER/CREATE/DROP INDEX
ALTER/CREATE/DROP OUTLINE
ALTER/CREATE/DROP PACKAGE
ALTER/CREATE/DROP PACKAGE BODY
ALTER/CREATE/DROP PROCEDURE
ALTER/CREATE/DROP PROFILE
ALTER/CREATE/DROP SEQUENCE
CREATE/DROP SYNONYM
ALTER/CREATE/DROP/RENAME/TRUNCATE TABLE
ALTER/CREATE/DROP TRIGGER
ALTER/CREATE/DROP TYPE
ALTER/CREATE/DROP TYPE BODY
DROP USER
ALTER/CREATE/DROP VIEW
(Debug Log)
, ,
.
, , ,
alert.log. ,
. ,
alert.log, ,
. ,
alert.log ,
. IPS
Oracle.

105

Oracle Data Pump, SQL*Loader, External Tables Online


Oracle Data Pump
Data Pump
(full transportable export).
TRANSPORTABLE=ALWAYS FULL.
, .
Data Pump
:
-
SYSTEM SYSAUX , ,

.
-
.
.
,
:
DATAPUMP_EXP_FULL_DATABASE.
" " , ,
.

ENCRYPTION_PASSWORD.
,
(Endianess).
,
.
.
, ,
, (SYSTEM/SYSAUX),
, .
.
Data Pump
(PDB)
. ,
.
, .

Oracle.

106

Data Pump :
- ,
, impdp DBMS_DATAPUMP. TRANSFORM impdp
TABLE_COMPRESSION_CLAUSE. NONE,
, .
(, NOCOMPRESS),
.
.
- ,
, expdp DBMS_DATAPUMP.
COMPRESSION ,
, . " "
.
.
Data Pump :

o
o
o
o

Export View As a Table -


. , Data Pump
,
. impdp , ,
.
LOGTIME - LOGTIME
, export
import

impdp,
expdp

DBMS_DATAPUMP.SET_PARAMETER. :
NONE - ( "
").
STATUS - .
LOGTIME - .
ALL - .
Audit Commands - Oracle Data Pump .
No Logging Option - impdp DBMS_DATAPUMP
DISABLE_ARCHIVE_LOGGING TRANSFORM. ,
redo
. ,
redo Oracle Data Pump, .
RMAN .
, CREATE ALTER ( CREATE INDEX)
-, Oracle Data Pump, redo .
Security - ENCRYPTION_PWD_PROMPT expdp /
impdp. , Oracle Data Pump
.
107

SecureFiles LOB as Default impdp DBMS_DATAPUMP


Oracle Data Pump LOBs SecureFiles LOBs. " " Data Pump
, , ,
LOB BasicFile LOB , Data Pump
a BasicFile LOB .

108

SQL*Loader
"express mode" SQL*Loader
.
,
, . -
. SQL*Loader
.
" ", .
EMPLOYEES:
$ sqlldr username TABLE=employees
" " "express" SQL*Loader
, :

o
o
o
o

(Data file) - , SQL*Loader


[table_name].dat .
(Load method) - " " (external
tables). SQL*Loader
(direct path load).
(Fields) - , ,
. ,
, .
(DOP) - DEGREE_OF_PARALLELISM
AUTO.
(Date Format) - NLS.
(Character Set) - NLS.
(Append mode) -
.
(File Names) - , ,
" " ( %p
ID Oracle Database.):
Data File - table-name.dat
SQL*Loader Log File - table-name.log
Oracle Database Log Files - table-name_%p.log_xt
Bad File - table-name_%p.bad

, ,
SQL*Loader (
). , , READ
, , WRITE ,
. ,
SQL*Loader SQL . , ,
, CREATE ANY DIRECTORY.

109

, , ,
DELETE ANY DIRECTORY.
"" NFS (Direct NFS)
Oracle Direct NFS (dNFS) /,
, NFS, . "
" 12c SQL*Loader
. DNFS_ENABLE SQL*Loader access
dNFS.
Direct NFS " " 1 GB.
/ .
Direct NFS DNFS_ENABLE=TRUE.
Direct NFS DNFS_ENABLE=FALSE.

110



(interval-reference)
12c , ,
. , ,
.

. ,
, .

COMPATIBLE 12.0.0.0 .


.
. :
ADD - ADD PARTITION ADD
SUBPARTITION ALTER TABLE.
(range), (list)
(subpartition).

-
, MAXVALUE.

, DEFAULT.
, :
SQL> ALTER TABLE orders ADD
PARTITION orders_2013 VALUES LESS THAN
(TO_DATE('01-JAN-2014','DD-MON-YYYY')),
PARTITION orders_2014 VALUES LESS THAN
(TO_DATE('01-JAN-2015','DD-MON-YYYY')),
PARTITION orders_2015 VALUES LESS THAN
(TO_DATE('01-JAN-2016','DD-MON-YYYY'));
DROP -
SQL ALTER TABLE,
DROP PARTITION DROP SUBPARTITION.
.
:
SQL> ALTER TABLE orders DROP PARTITION
orders_1999, orders_2000,
111

orders,

orders_2001, orders_2002;
TRUNCATE - ,
( TRUNCATE PARTITION ALTER
TABLE). ,
UPDATE INDEXES. ,
:
SQL> ALTER TABLE sales TRUNCATE PARTITIONS
orders_1999, orders_2000,
orders_2001, orders_2002;
MERGE - ALTER TABLE MERGE PARTITION
. , ,
. ,
.
,
.
:
SQL> ALTER TABLE orders
MERGE PARTITIONS orders_2003, orders_2004,
orders_2005, orders_2006
INTO PARTITION orders_2003_6;

SQL> ALTER TABLE orders


MERGE PARTITIONS orders_2003 TO orders_2006
INTO PARTITION orders_2003_6;
SPLIT -
ALTER TABLE SPLIT PARTITION SPLIT
SUBPARTITION. , .

. , :
SQL> ALTER TABLE orders
SPLIT PARTITION orders_2003_6 INTO
(PARTITION orders_2003 VALUES LESS THAN
(TO_DATE('01-JAN-2004','DD-MON-YYYY')),
PARTITION orders_2004 VALUES LESS THAN
(TO_DATE('01-JAN-2005','DD-MON-YYYY')),
PARTITION orders_2005 VALUES LESS THAN
(TO_DATE('01-JAN-2006','DD-MON-YYYY')),
PARTITION orders_2006 VALUES LESS THAN
112

(TO_DATE('01-JAN-2007','DD-MON-YYYY'))
);
(Cascade Functionality)
TRUNCATE PARTITION EXCHANGE PARTITION ,
, .

. " " .
(EXCHANGE)
CASCADE SQL ALTER TABLE EXCHANGE PARTITION ALTER
TABLE EXCHANGE SUBPARTITION.
ON DELETE CASCADE.
CASCADE EXCHANGE
, . ,
, , .
TRUNCATE TABLE, ALTER TABLE TRUNCATE PARTITION ALTER TABLE TRUNCATE
SUBPARTITION
ON DELETE CASCADE.
, .. .
(truncate)
,
, .
, TRUNCATE TABLE CASCADE

ON DELETE CASCADE. CASCADE TRUNCATE
PARTITION TRUNCATE SUBPARTITION .
" "

DML .
, .
MOVE PARTITION ALTER TABLE :
.
.
.
.
ALTER
TABLE/INDEX MODIFY PARTITION. ,
(, ), MOVE PARTITION.
, MODIFY PARTITION ,
, . MOVE
113

PARTITION , ,
. , ,
. , ,
.


DROP PARTITION TRUNCATE PARTITION
12 , . "
" .
.
DROP TRUNCATE
.
.
UPDATE INDEXES .
, :
(heap) .
.
.
SYS.
, ,
SYS.PMO_DEFERRED_GIDX_MAINT_JOB. " "
2:00 .
DBMS_SCHEDULER.RUN_JOB .
(partial indexes)

, .

. .
,
. " " ,
. INDEXING
. SALES:
SQL> CREATE TABLE sales (
sales_id NUMBER,
customer_id NUMBER,
sale_date DATE,
sale_total NUMBER(9,2))
INDEXING OFF
114

PARTITION BY RANGE (SALE_DATE)


(PARTITION sales_p11 VALUES LESS THAN
(TO_DATE('01-JAN-2011','DD-MON-YYYY'))
INDEXING OFF,
PARTITION sales_p12 VALUES LESS THAN
(TO_DATE('01-JAN-2012','DD-MON-YYYY'))
INDEXING ON,
PARTITION sales_p13 VALUES LESS THAN
(TO_DATE('01-JAN-2013','DD-MON-YYYY'))
INDEXING ON,
PARTITION sales_p14 VALUES LESS THAN
(TO_DATE('01-JAN-2014','DD-MON-YYYY'))
INDEXING ON,
PARTITION sales_p15 VALUES LESS THAN
(TO_DATE('01-JAN-2015','DD-MON-YYYY'))
);

SALES_P12, SALES_P13 SALES_P14

( , PARTIAL)
" ".

( , PARTIAL).
ONLINE
ALTER TABLE MOVE PARTITION DML
. ,
.

115

SQL

Oracle 12c VARCHAR2, NVARCHAR2 RAW
32767 . MAX_STRING_SIZE ,
. STANDARD ( ),
: 4000 VARCHAR2 NVARCHAR2, 2000 RAW.
EXTENDED 32767 .
VARCHAR2 NVARCHAR2 4000 , RAW 2000 , .
LOB , "", .
(Automatic Segment Space
Management (ASSM)) SecureFiles LOBs. ,
BasicFiles LOBs. .
"" LOB
DBMS_LOB.
(Top-N SQL )
12c Oracle - Top-N SQL .
,
ROWNUM, ORDER BY, , ,
Top-N . , FETCH FIRST OFFSET,
SQL. SQL

. ,
:
SQL> SELECT first_name, last_name, salary
FROM hr.employees
ORDER BY salary DESC
FETCH FIRST 4 ROWS ONLY;
FIRST_NAME LAST_NAME SALARY
------------ ----------- -------Vano
Dudadze
21000
Dan
Kohen
19000
Alex
Cooper
14500
Peter
Crause
12100

, FETCH LAST, .
N . ,

:
SQL> SELECT first_name, last_name, salary
FROM hr.employees
116

ORDER BY salary DESC


OFFSET 4 ROWS FETCH NEXT 5 ROWS ONLY;
FIRST_NAME LAST_NAME SALARY
------------ ----------- -------Karen
Ogayan
11900
Mikhail
Vantstein 11800
Nina
Greenberg 10900
Rita
Hu
10100
Dima
Erzuriz
10000

FETCH NEXT
. 4% :
SQL> SELECT first_name, last_name, salary
FROM hr.employees
ORDER BY salary DESC
FETCH NEXT 4 PERCENT ROWS ONLY;
FIRST_NAME LAST_NAME SALARY
------------ ----------- -------Vano
Dudadze
21000
Dan
Kohen
19000
Alex
Cooper
14500
Peter
Crause
12100
Karen
Ogayan
11900

(Secure Files)
Oracle 12c COMPATIBLE 12.1 ,
LOB " " . SecureFiles
BasicFiles
. SecureFiles:

o
o
o
o
o
o
o
o
o
o

- SecureFiles
DML . ,
SecureFiles LOB (, BasicFiles ),
DML. :
INSERT
INSERT AS SELECT
CREATE TABLE AS SELECT
DELETE
UPDATE
MERGE (conditional UPDATE and INSERT)
Multi-table INSERT
SQL Loader
Import/Export
LogMiner - LogMiner

117

LogMiner - LogMiner SecureFiles LOB,


SecureFiles LOB SecureFiles Database File System
(DBFS) 11.2 .
SQL_REDO SecureFiles LOB; SQL_UNDO .
Oracle Database Migration Assistant Unicode
Database Migration Assistant for Unicode (DMU) Oracle 12c Release 1
(12.1) Unicode.
Database Character Set Scanner (CSSCAN) CSALTER
.
DMU . ,
, , DMU
. , ,
.
DMU
:
10.2.0.4, 10.2.0.5, 11.1.0.7, 11.2.0.1 .
ASCII.
SYS.DBMS_DUMA_INTERNAL.
Oracle Database Vault .
(PDB).
/.
DMU:
(Selective Conversion) - DMU
, , ,
.
(Monitoring) - DMU
.
(Inline Conversion) - Oracle
DMU.
(Scheduling) -
.
, , DMU
VARCHAR2, CHAR, LONG CLOB.
, - ,
. DMU
.
:
.
118

.
.
- , ,

.

119




. ,
, ,
, "" . , ,
"", DBA,
, , ,
. ,
, ? . , , IT-
, . , ! ,
, , .
IT- - ,
/ . , -
, , ,
IT- . IT -
, IT ,
"/ ",
-. ,
,
, . , .
"" -: SAP-, 1
, etc, .. ,
.
, .
,
-.
,
- .
.
.
() ,
,
. , ,
, .
, ,
120

, -
. ICMP . , ,
HP-UX, , .

. , .
, .. .
, ,
. , !
,
-.
, DBA ,
.

Oracle
. ,
.
,
. ,
.
" " ""
Oracle
: . "
Oracle" . :
(Database) - ,
. .
(Database instance) -
, .
Oracle .
.
.
, Real Application Clusters (RAC),
. ,
.
Oracle Data Guard ,
.
, .. .

(redo-). , ..
SQL Oracle Streams.
121


Oracle
Learning
Library
(http://www.oracle.com/webfolder/technetwork/
tutorials/obe/db/12c/r1/poster/OUTPUT_poster/poster.html)

.
, ,
. :


System Global Area (SGA)


Background Processes
PMON


Shared Pool
Library Cache

Database Buffer
Cache
User Global
Area

Shared SQL Area


Data
Dictionary
Cache

Server
Result
Cache

Reserved
Pool

Private
SQL Area

DBWn
LGWR

Other

Fixed SGA
CKPT
Java Pool

Large Pool
Response
Queue

SMON

Others ...
XA Interface
Pool

PX Msg Pool

Request
Queue

Streams Pool

Backup
Recovery Ops
Redo Log
Buffer

. 25 Oracle

, .
,
. :
(System Global Area) (SGA) - SGA
,
Oracle. SGA
. , SGA,
SQL
(Program Global area) (PGA) - PGA
.
Oracle. PGA Oracle.

122

PGA .
PGA PGA .
(User Global Area) (UGA) - UGA
.
(Software code areas) - ,
, .
System Global Area (SGA)
SGA ,
, .
. ,
.
(redo log buffer)
, (granules). SGA
V$SGASTAT.
SGA :
(Database Buffer Cache) -
, . ,
() .
, , .
/.
, .
, ,
Least Recently Used (LRU).
(Redo Log Buffer) -
, ,
, . ,
, DML
DDL . (recovery)
.
(redo) , .
(log writer (LGWR))
.
(Shared Pool) - ,
. SQL,
PL/SQL, , .
. , SQL,
, .
(Large Pool) - - SGA.
,
. UGA (

123

User Global Area) , XA Oracle


/ RMAN.
Java (Java Pool) -
Java. Java,
Java- .
(Streams Pool) - , Oracle Streams.

. ,
, Oracle Streams.
SGA (Fixed SGA) - SGA -
. ,
.
Oracle .

124


Oracle
CREATE DATABASE, , .
- , . Database Create Assistant
(DBCA) . ,
DBCA , , CREATE
DATABASE, , !
DBCA ,
. . DBCA
UNIX/Linux Microsoft Windows dbca.
dbca ORACLE_HOME/bin. DBCA
.
/ dbca .
1. . : ,
,
(pluggable) ( ).

. 26 DBCA. 1

125

2. . ,
, (fast recovery area),
. Enterprise ,
. (Advanced)
.

. 27 DBCA. 2

126

3. . - DBCA ,

. 28 DBCA. 3

127

4. - ,
.

. 29 DBCA. 4

128

5. - .

. 30 DBCA. 5

DBCA , , ..
.
,
utlrp.sql. PL/SQL , , ,
. " "
, CPU_COUNT .
, Oracle , .

129



Oracle Net Services. Oracle Net Services, , Oracle Net,
c Oracle.
, Oracle Net .
Oracle Net
. Oracle
Net /
. , , TCP/IP,
.
Oracle Net. Oracle Net
Java Application, Web Client Application Web Server
. Oracle Database Net Services Administrator's Guide
12c Release 1 (12.1) E17610-11.

TCP/IP

RDBMS

Oracle Net

Oracle Net

. 31 - Oracle Net

Oracle Net ,
. Oracle Net
. Oracle Net
Oracle,
Oracle , SQL DB2,
EXTPROC.
Oracle
Oracle Net, . ,
, .
. . ,
, .
,
. ,
.
,
(connect descriptor), .
Easy Connect
ocp.exam.com ocp-server " " (1251): ocpserver/ocp.exam.com.
130

,
tnsnames.ora .
:
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=ocp-server)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=ocp.exam.com))
)


. .
, - , .
/
tnsnames.ora.
ocp:
ocp=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)
(HOST=ocp-server)
(PORT=1521)
)
(CONNECT_DATA=(SID=ocp)
(SERVICE_NAME=ocp.exam.com)
(INSTANCE_NAME=ocp)
)
)

ADDRESS :
PROTOCOL , 'tcp' TCP/IP.
HOST , .. ocp-server. IP-,
TCP/IP.
PORT , " " 1521.
CONNECT_DATA :
SID SID Oracle database, ocp.
SERVICE_NAME . ocp.exam.com.
SERVICE_NAMES.
SERVICE_NAMES .
INSTANCE_NAME . , "
" SID.
,
. ,
. ,
.
:

131

.
,
.
.
.
, .
,
Oracle,
. ,
.
:
(Local Naming Method)

TNSNAMES.ORA. " " $ORACLE_HOME/network/admin/.
.
ocp_1 sales.us.example.com:
ocp_1=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=ocprep-server)(PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)))

DESCRIPTION
.
TCP/IP 1251.
Oracle . Oracle Net
Configuration Assistant .
Oracle Net Configuration Assistant, Oracle Enterprise
Manager Cloud Control Oracle Net Manager.
(Easy Connect Naming Method)

TNSNAMES.ORA . -
. ,
, , .
:
CONNECT username@[//]host[:port][/service_name][:server][/instance_name]
, ,
TNSNAMES.ORA:
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=host)(PORT=port))
(CONNECT_DATA=

132

(SERVICE_NAME=service_name)
(SERVER=server)
(INSTANCE_NAME=instance_name)))

" " Oracle Typical


. , :
SQLPLUS /nolog
SQL> CONNECT username@host/db_name
Enter password:


:
CONNECT username@ocp_1:1521/sales.us.example.com
, :
Oracle Net Services .
TCP/IP , .
- ,
.., .
EZCONNECT NAMES.DIRECTORY_PATH sqlnet.ora.
(Directory Naming Method)
LDAP- , Oracle Internet
Directory.
. LDAP-
.
Oracle.
, LDAP Oracle Enterprise Manager Cloud Control Oracle Net Manager.
,
. ,
.
(External Naming Methods)
,
NIS. . ,
NIS, ,
NIS.
, , NIS Oracle Net
.
Oracle.

133


, Oracle,
. ,
.
, Oracle Support.
(alert.log).
. ,
:
, " ".
(ORA-600), (ORA-1578)
(ORA-60).
, DDL CREATE, ALTER DROP,
STARTUP SHUTDOWN.
: XML-
. .
adrci "" XML.
, ,

. ,
(ADR, Automatic Diagnostic Repository).
, , .
MMON LGWR. MAX_DUMP_FILE_SIZE
, , ,
. ,
, .
. ,
.

. SQL_TRACE TRUE,
SQL SQL,
. ADR. , SQL
ALTER SESSION SET SQL_TRACE.
DBMS_SESSION DBMS_MONITOR SQL .
(Adaptive Thresholds)
12
.
.
, , .

, .

134

, OLTP- ,
, .
:

o
o
o
o

(Percentage of maximum) -
,
(, 95% ).
(Significance level) -
, .
:
, High (.95) , 5 100 .
, Very High (.99) , 1 100
.
, Severe (.999) , 1 1000
.
, Extreme (.9999) , 1 10000
.


"" ,
, , (,
..) . ,
, .
. ,
, ,
, , , , .
Oracle Oracle Database Administrator's Guide
:
Oracle .

.
(
).
(, , ).
.
Oracle.
.
, .
.
.
.
/.
135

/ .
:
. "" .
, ,
.
,
, .
" " , "
". , , . ,
. -
, , ,
. .

136



Oracle Oracle. :
My Oracle Support, , Metalink,
.
Patches & Updates.
Patches & Updates Patch Search, Search.
. My Oracle Support
.
Download.
File Download patch.zip .
Download Patch Metadata.
Download Patch Metadata Download .
Oracle
.
,
.
- . Oracle
:
(Interim Patches) -
, .
.
(Diagnostic Patches) -
/ .
(Patch Set Updates (PSU)) - ,
- /.
(Critical Patch Updates (CPU)) -
, .

OPatch Enterprise Manager Patch Wizard , OPatch
. , ,
Patch Advisor Enterprise Manager Cloud Control.
Online
11g ( .), (.)
. , ,
.
" ". .. .so ,
,
. ,
. ,
137

. , / online-
, . Online-
OPatch.
online- :
.
.
RAC .
.
, :
.
" " .
" ".
EM Cloud Control
Oracle Enterprise Manager Cloud Control 12c
.
, .
:
My Oracle Support .
, .
.

.
,

.
,
.
, RAC Oracle
Grid.
Cloud Control ,
, .
,
, . Oracle Database, Fusion Middleware
Cloud Control
. Enterprise Manager
, .
EM Cloud Control :

138

Online - , EM Cloud
Control My Oracle Support, ,
.
Oracle ,
My Oracle Support .

My Oracle Support.
Offline - , EM Cloud Control My Oracle
Support . ,
(Software Library),
.

12, -
(Queryable Patch Inventory).
DBMS_QOPATCH.
PL/SQL SQL .
, lsinventory-xml opatch.
DBMS_QOPATCH Oracle Universal Installer (OUI)

:
SQL.
.
Oracle RAC .
DBMS_QOPATCH :
GET_OPATCH_BUGS - , XML,
. XML
.
GET_OPATCH_COUNT -
XML.
GET_OPATCH_DATA - XML (Patch ID,
).
GET_OPATCH_FILES - ,
XML.
GET_OPATCH_INSTALL_INFO - XML , ORACLE_HOME
.
GET_OPATCH_LIST - XML .
GET_OPATCH_LSINVENTORY - XML.
GET_OPATCH_OLAYS - , ,
XML.

139

GET_OPATCH_PREQS - ,
XML .
GET_OPATCH_XSLT - (style-sheet)
opatch.
GET_PENDING_ACTIVITY - ,
SQL .
GET_SQLPATCH_STATUS - SQL SQL
.
IS_PATCH_INSTALLED - , patchID,
SQL , XML, XML .
PATCH_CONFLICT_DETECTION -
, .
SET_CURRENT_OPINST -
, Oracle Real Application
Clusters (RAC).
My Oracle Support Doc ID
1530108.1 "Oracle Database 12.1 : FAQ on Queryable Patch Inventory".

140



. Oracles
Recovery Manager (RMAN), .
Oracle Backup and Recovery User's Guide 12c Release 1 (12.1)
E50658-06s.
RMAN ,
.
/. ,
,
. , , ,
,- . :
SHOW - RMAN .
, , "
".

V$RMAN_CONFIGURATION.
CONFIGURE - RMAN
/. CLEAR
" ".
:
,
0 .
, "", , . " " 1.
RMAN> CONFIGURE RETENTION POLICY TO REDUNDANCY 3;
, ,

:
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
, RMAN
, " ", .. .
" ":
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;
" "
, DEVICE TYPE BACKUP, :
RMAN> BACKUP DEVICE TYPE SBT DATABASE;
RMAN> BACKUP DEVICE TYPE DISK DATABASE;
141

RMAN " "


(backup set), (image copies).
. ,
RMAN .
COMPRESSED BACKUP TYPE TO BACKUPSET RMAN
. COMPRESSED
. - .
RMAN :
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY;
COMPRESSED:
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;
RMAN> CONFIGURE DEVICE TYPE SBT BACKUP TYPE TO COMPRESSED BACKUPSET;
RMAN . CONFIGURE
CHANNEL .
CONFIGURE CHANNEL " ",
. , CONFIGURE
CHANNEL, " ".
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 1G;
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/tmp/%U';
" " RMAN .
" "
. , ,
RMAN " " (fast
recovery area).
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u01/ora_df%t_s%s_s%p';
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '+dgroup1';
, , RMAN
. DEVICE TYPE DISK
. :
RMAN> RUN
{
ALLOCATE CHANNEL U01 DEVICE TYPE DISK FORMAT '/u01/%U';
ALLOCATE CHANNEL U02 DEVICE TYPE DISK FORMAT '/u02/%U';
BACKUP DATABASE PLUS ARCHIVELOG;
};

142


RMAN. ,
,
,
.
,
, .
:
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP OFF;
RMAN " "
CLEAR:
RMAN> CONFIGURE DEFAULT DEVICE TYPE CLEAR;
RMAN> CONFIGURE RETENTION POLICY CLEAR;
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP CLEAR;
RMAN,
RMAN ,
. , , RMAN
:
(Datafile) --
DBID, SCN,
SCN,
RESETLOGS SCN , .
offline-normal, read-only .
(Archived log) -
DBID, ,
RESETLOGS SCN .
(Backup set) -
DBID, ID .
RMAN , ,
,
. TO DESTINATION BACKUP RECOVERY
AREA BACKUP RECOVERY FILES, RMAN
. :
RMAN> CONFIGURE BACKUP OPTIMIZATION ON;
, ,
, RMAN
.
143

- , .
FORCE BACKUP:
RMAN> BACKUP DATABASE FORCE;
RMAN> BACKUP ARCHIVELOG ALL FORCE;

,
.
. RMAN BACKUP AS
COPY, cp/copy Oracle. "
" " " (image copies) CONFIGURE
DEVICE TYPE:
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COPY;
" ", AS COPY
BACKUP:
RMAN> BACKUP AS COPY DEVICE TYPE DISK DATABASE;
.
, ,
.
. .
, RMAN.
, MAXPIECESIZE.
ALLOCATE CHANNEL CONFIGURE CHANNEL.
, " "
CONFIGURE DEVICE TYPE:
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO BACKUPSET;
" " AS
BACKUPSET. " ", :
RMAN> BACKUP AS BACKUPSET DATABASE;
RMAN> BACKUP AS BACKUPSET DEVICE TYPE DISK DATABASE;
.
, . RMAN BACKUP
DATABASE :
RMAN> BACKUP DATABASE;
PLUS ARCHIVELOGS ,
.

144

,
.
RMAN> BACKUP DATABASE PLUS ARCHIVELOG;

BACKUP INCREMENTAL RMAN
. ,
, .
, .
:
0 - .

.
1 - ,
.
1 " ".
1 - ,
0.
, RMAN 0
. 1
,
. RMAN .
0 ,
:
RMAN> BACKUP INCREMENTAL LEVEL 0 DATABASE;
1:
RMAN> BACKUP INCREMENTAL LEVEL 1 CUMULATIVE DATABASE;

1:
RMAN> BACKUP INCREMENTAL LEVEL 1 DATABASE;
(Block Change Tracking)


. , RMAN
.
. " "
. .
145

, ,
DB_CREATE_FILE_DEST.
0, 0 .
, 0 ,
.
:
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING;
:
SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '/u01/rman_change_track.f'
REUSE;
:
SQL> ALTER DATABASE DISABLE BLOCK CHANGE TRACKING;

Oracle "restore" "recover". ,
"". "restore"
" ", "recover" "
".
,
. .
" , ", , - ,
. :
,
.
.

, .
,
.
.
.
.
:
RMAN :
$ rman
RMAN> CONNECT TARGET /
146

, :
RMAN> STARTUP MOUNT;
SHOW:
RMAN> SHOW ALL;
,
CONFIGURE ALLOCATE CHANNEL RUN-
:
RMAN> RESTORE DATABASE;
Starting restore at 20-DEC-14
...
Finished restore at 20-DEC-14

RMAN> RECOVER DATABASE;


...
media recovery complete, elapsed time: 00:00:21
Finished recover at 20-DEC-14

.
, :
RMAN> ALTER DATABASE OPEN;

147

.
, , ,
.
.
. ,
Oracle.
Oracle (alert.log).
alert_<SID>.log,

"
"

$ORACLE_BASE/diag/rdbms/<db_name>/<sid>/trace.
, .

(ORA-00600), ,
(ORA-01578), (deadlock errors) (ORA-00060).
, CREATE, ALTER, DROP
STARTUP, SHUTDOWN, ARCHIVELOG.
,
.
,
.
, " ".
,
.
, .
: XML
. . XML adrci.
,
.
. ARCn ( )
, ,
log_archive_trace.
. .
11g , , ,
, .., ,
(Automatic Diagnostic Repository, ADR). ADR
Oracle .

ADR. ADR
. ,
,
.
148

DIAGNOSTIC_DEST ,
ADR. ,
V$DIAG_INFO:
SQL> SELECT name, value
FROM v$diag_info
WHERE name LIKE 'Diag%';
NAME
VALUE
------- ---------------------------------------------------------------Diag Enabled
TRUE
Diag Trace
/u01/app/oracle/diag/rdbms/x/X/trace
Diag Alert
/u01/app/oracle/diag/rdbms/x/X/alert
Diag Incident
/u01/app/oracle/diag/rdbms/x/X/incident
Diag Cdump
/u01/app/oracle/diag/rdbms/x/X/cdump

V$DIAG_INFO
ADR Base ADR.
ADR Home ADR .
Diag Trace ,
, SQL
alert log.
Diag Alert XML- alert log.
Default Trace .
Diag Incident .
Diag Cdump cdump. .
Health Monitor .
.
.
, ORA-00600, ORA-07445 ORA-04031.
ADR , .
.
, . Oracle
ADR. ,
ADR. :
.
Oracle Enterprise Manager.
.
, ADR ,
, .

149

Data Recovery
Advisor
Data Recovery Advisor
. Support Workbench,
RMAN.
, ,
. Data Recovery Advisor
,
/ .
, . Data Recovery Advisor
:
, ,
.
,
.
, , .
/, ,
.
Data Recovery Advisor
. , ,
Oracle Support Services.

, .
, (),
. .
, ADR.
Data Recovery Advisor ,
ADR. Data Recovery Advisor
, ,
/. : CRITICAL, HIGH
LOW, OPEN CLOSED.
CRITICAL - . ,
. ,
.
HIGH - .
, .
LOW - .
.

150

Data Recovery Advisor


Data Recovery Advisor .
,
, Oracle Flashback Database.
Data Recovery Advisor .
,
. Data Recovery Advisor
,
.
RMAN
: LIST FAILURE , ADVISE FAILURE
REPAIR FAILURE .
LIST FAILURE
LIST FAILURE , ADVISE
FAILURE REPAIR FAILURE.
RMAN> LIST FAILURE;
List of Database Failures
=========================
Failure ID
Priority
Status Time
Detected Summary
- - - - - 674
HIGH
OPEN
23-DEC-14
One or more non-system
datafiles are missing
721
HIGH
OPEN
23-DEC-14
Datafile 1:
'/u01/oradata/X/system01.dbf'
contains one or more corrupt blocks

ADVISE FAILURE
ADVISE FAILURE
. , Data Recovery Advisor,
. ADVISE FAILURE ,
Data Recovery Advisor .
Data Recovery Advisor ,
. , ,
, . Data Recovery Advisor ,
.
ADVISE FAILURE ,
Data Recovery Advisor. Data Recovery Advisor
. , ,
, Data Recovery
Advisor
(PITR - point-in-time
recovery)
RMAN> ADVISE FAILURE;
151

List of Database Failures


=========================
Failure ID
Priority
Status
Time Detected Summary
- - - - - 274
HIGH
OPEN
23-DEC-14
One or more non-system
datafiles are missing
329
HIGH
OPEN 21-DEC-14
Datafile 1:
'/u01/oradata/X/system01.dbf'
contains one or more corrupt blocks
analyzing automatic repair options; this may take some time
using channel ORA_DISK_1
analyzing automatic repair options complete
Mandatory Manual Actions
========================
no manual actions available
Optional Manual Actions
=======================
1. If file /u01/oradata/X/data01.dbf was unintentionally renamed or moved, restore it
Automated Repair Options
========================
Option Repair Description

Restore and recover datafile 41; Perform block
media recovery of block 73781 in file 1
Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/oracle/log/diag/rdbms/x/X/hm/reco_740113234.hm

CHANGE FAILURE
CHANGE FAILURE ,
. .
RMAN> CHANGE FAILURE 6 PRIORITY LOW;
REPAIR FAILURE
REPAIR FAILURE ,
Data Recovery Advisor. ,
standby. ,
RMAN, REPAIR FAILURE.
REPAIR FAILURE PREVIEW,
.
Data Recovery Advisor'
. , . , Data
Recovery Advisor .
ADVISE FAILURE, REPAIR FAILURE
ADVISE FAILURE. RMAN , ,
. RMAN

.

152



" " .
,
. , , .
FALSHBACK TABLE.
, ,
. ,
, . -
,
- . ,
, .
, , . " "
. ,
, .

. , ,
. ,
.
FLASHBACK TABLE TO BEFORE DROP
. ,
, . RENAME TO
. USER_RECYCLEBIN
. FLASHBACK TABLE TO BEFORE
DROP , .
ocp_new :
SQL> FLASHBACK TABLE ocp_new TO BEFORE DROP RENAME TO ocp_2;


.
SCN.
, DML,
, , .
VERSIONS
BETWEEN SELECT. VERSIONS BETWEEN
: VERSIONS {BETWEEN {SCN | TIMESTAMP} AND }.
:

153

VERSIONS_START[SCN/TIME] - (SCN)
TIMESTAMP, . NULL ,
, .
VERSIONS_END[SCN/TIME] - SCN TIMESTAMP,
. NULL, ,
DELETE.
VERSIONS_XID - , .
VERSIONS_OPERATION - , : I (), D (), U
(). , ,
.
, VERSIONS_START*,
VERSIONS_END*. , "t",
VERSIONS_START* <= t < VERSIONS_END*. ,
EMPLOYEES :
SQL> UPDATE employees SET salary = 97000
WHERE emp_last='Dow';
SQL> UPDATE employees SET salary = 102000
WHERE emp_last='Dow';
SQL> UPDATE employees SET salary = 105000
WHERE emp_last='Dow';
SQL> COMMIT;
:
SQL> SELECT versions_starttime, versions_endtime,versions_xid, versions_operation AS OP,salary
FROM employees
VERSIONS BETWEEN TIMESTAMP
TO_TIMESTAMP('23-DEC-2014 11:46','DD-MON-YY 24HH:MI')
AND
TO_TIMESTAMP('23-DEC-2014 11:56','DD-MON-YY 24HH:MI')
WHERE emp_last = 'Dow';
VERSIONS_STARTTIME VERSIONS_ENDTIME VERSIONS_XID OP SALARY
-------------------- --------------------- ---------------23-DEC-2014 11.51
09000900A9010000
23-DEC-2014 11.49
22-DEC-2014 11.51
04001A003F010000
23-DEC-2014 11.49
22-DEC-2014 11.49
03002100A2010000
23-DEC-2014 11.49

- -----U
105000
U
102000
U
97000
93500

, ,
salary. , . VERSIONS_XID
Oracle
. SQL
, .

154



.
FLASHBACK_TRANSACTION_QUERY.
UNDO_SQL. SQL, ,
DML, .
, ..
INSERT SQL_UNDO ROWID,
. , ,
ID.
SQL> SELECT operation, start_scn, commit_scn, logon_user
FROM flashback_transaction_query
WHERE xid = HEXTORAW('09000900C9140000');
OPERATION
-----------UNKNOWN
BEGIN

START_SCN
COMMIT_SCN
LOGON_USER
--------- ---------- ------------ -----------593374
594863
OCP
593374
594863
OCP


, ,
:
SQL> SELECT xid, logon_user
FROM flashback_transaction_query
WHERE xid IN (
SELECT versions_xid
FROM employees VERSIONS BETWEEN TIMESTAMP
TO_TIMESTAMP('22-FEB-2014 11:40:00',
'DD-MON-YYYY HH:MI:SS') AND
TO_TIMESTAMP('22-FEB-2014 11:56:00',
'DD-MON-YYYY HH:MI:SS')
);
DBMS_FLASHBACK.TRANSACTION_BACKOUT
, .
UNDO
, .
DBMS_FLASHBACK.TRANSACTION_BACKOUT COMMIT DML ,
. ,
.
.

155

,
.
.
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
.
:
FLASHBACK SELECT
SELECT FLASHBACK ANY TABLE.

SELECT ANY TRANSACTION. SQL- ,
Oracle Flashback Transaction, SELECT, UPDATE,
DELETE INSERT . EXECUTE
DBMS_FLASHBACK.


,
.

, .. .
RMAN FLASHBACK DATABASE
SQL FLASHBACK DATABASE.

. ,
, (flashback retention target)
(Fast Recovery Area). ,
"" .
.

.
, .
redo
, . SCN,
FLASHBACK DATABASE,
.
Fast Recovery Area
, ,
,
SCN. ,

156

.
.
:
Flashback Database ,
. ,
.
Flashback Database .
,
.
Flashback Database
NOLOGGING,
, NOLOGGING.
SCN .
SCN.
,
SCN.
, , .
:
RECOVER DATABASE FLASHBACK DATABASE RMAN.
FLASHBACK TABLE SQL
SCN
.
. , ""
, .
,
,
SCN.
Flashback
Database, , -, , .
, (
shutdown shutdown immediate), standby .
:
1. DB_FLASHBACK_RETENTION_TARGET
. " " 1 (1440
). .
2.
SQL> ALTER DATABASE FLASHBACK ON;

157

3.
.
,
, :
SQL> ALTER DATABASE FLASHBACK OFF;

.
, ,
/.
.
:
(fast recovery area)
,

.
,
, ,
"" 128KB.
LOG_BUFFER
8MB.
:
1. RMAN , .
2. MOUNT.
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
3. FLASHBACK DATABASE.
SQL> FLASHBACK DATABASE TO SCN 12345678;
4. " " SQL-Plus ,
.
SQL> ALTER DATABASE OPEN READ ONLY;
5. ,
RESETLOGS:
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE OPEN RESETLOGS;
158


Data Pump
. export/import,
Oracle. Data Pump :
expdp impdp - ,
DBMS_DATAPUMP .
/
.
DBMS_DATAPUMP - , Data Pump API,

. DBMS_DATAPUMP
impdp expdp.
DBMS_METADATA - , Metadata API,
,
. DBMS_METADATA DATAPUMP
impdp expdp.
Data Pump -, -
:
- - -
.
. , impdp expdp,
CREATE TABLE -
. - , .
Data Pump ,
. -
.
- - - .
/, ,
, .
- - ,
, .
Data Pump ,
.
Data Pump
Data Pump Export Import
.
. -
.
,
. ,
159

.
:
DBA_DATAPUMP_JOBS - Data Pump
, .
-, .
DBA_DATAPUMP_SESSIONS - ,
Data Pump. ,
.
V$SESSION_LONGOPS - Data Pump, ,
, .

.
Data Pump V$SESSION_LONGOPS:
USERNAME - .
OPNAME - .
TARGET_DESC - .
SOFAR - .
TOTALWORK - .
UNITS - (MB).
MESSAGE - 'job_name:
operation_name : nnn out of mmm MB done'.
Data Pump expdp. , ,
. ,
. Data Pump ,
- .
-
.
- .
PARFILE , ..
.
- - ,
.
- .
Data Pump :
(Dump Files) - .
(Log Files) - .
SQL (SQL Files) - SQLFILE.

160

(Data Files) -, DATA_FILES,


.
.
. :
(Full) - .
DATAPUMP_EXP_FULL_DATABASE.
FULL.
(Schema) - " ".
DATAPUMP_EXP_FULL_DATABASE,
. .
SCHEMAS.
(Table) - ,
.
DATAPUMP_EXP_FULL_DATABASE. TABLES.
(Tablespace) -
, .
.
.
TABLESPACES.
(Transportable Tablespace) -
,
.
. TRANSPORT_TABLESPACES.
expdp
:
ATTACH
- .
CONTENT : ,
, .
DIRECTORY ,
.
DUMPFILE , , .
ESTIMATE ,
, ( ).
ESTIMATE_ONLY ,
.
EXCLUDE , ,
.
FILESIZE .
FULL .
161

INCLUDE , ,
.
JOB_NAME , .
LOGFILE , , .
PARFILE .
QUERY SQL-,
.
SCHEMAS "".
TABLES "".
TABLESPACES
" ".
TRANSPORT_TABLESPACES - ,
" ".
,
.
impdp
expdp impdp.
, impdp :
REUSE_DATAFILES ,
.
SQLFILE , SQL DDL ,
.
STATUS ,
.
TABLE_EXISTS_ACTION ,
.
REMAP_DATAFILE SQL, .
REMAP_SCHEMA .
REMAP_TABLE .
REMAP_TABLESPACE ,
.
:
ADD_FILE .
CONTINUE_CLIENT .
EXIT_CLIENT /,
.
KILL_JOB .
PARALLEL .
START_JOB , .
162

STATUS , /
.
STOP_JOB .
Data Pump
NETWORK_LINK impdp
SQL. SELECT
, NETWORK_LINK.
INSERT .
. NETWORK_LINK expdp
, .
:
(Public , public and shared).
(Fixed user).
(Connected user).
"Current User" Data Pump
NETWORK_LINK:
, LONG
LONG RAW,
.
,
,
(SYSTEM SYSAUX),
.
,
. , 12,
12c, 11g, 10g.
SQL-Loader
SQL-Loader .
,
.
. SQL-Loader Oracle.
SQL-Loader :
, ,
.
.
.
, .
.
, SQL.
163

.
.
, pipe.
.
- .
LOB' .
,
.
SQL-Loader , .
.
.
(SQL-Loader express mode). SQL-Loader
:
Control SQL*Loader.
Data , .
Log , SQL*Loader, .
Bad , - .
Discard ,
.
SQL-Loader sqlldr.
, . ,
:
.
, PARFILE.
SQL-Loader
OPTIONS.
, , OPTIONS
, .
SQL-Loader , SQLLoader', , ,
..
:
, ,
, .
INTO TABLE.
.
, , .

164

SQL-Loader Oracle:
(Conventional Path) (Direct Load). SQL-Loader
INSERT , , SQL Oracle.
SQL-Loader SQL .
, .
:
.
.

.
.
.

165

SYSAUX
SYSAUX
SYSTEM. Oracle,
, " " SYSAUX. SYSAUX
, .
, SYSAUX,
. V$SYSAUX_OCCUPANTS
, SYSAUX. :
.
.
.
.
.
MOVE_PROCEDURE V$SYSAUX_OCCUPANTS
,
SYSAUX. , SYSAUX,
SYSAUX.
, ,
:
SQL> SELECT occupant_name, occupant_desc, move_procedure
FROM v$sysaux_occupants
WHERE move_procedure IS NOT NULL;
OCCUPANT_NAME OCCUPANT_DESC
MOVE_PROCEDURE
---------------------------------------------------------------LOGMNR
LogMiner
SYS.DBMS_LOGMNR_D.SET_TABLESPACE
LOGSTDBY
Logical Standby SYS.DBMS_LOGSTDBY.SET_TABLESPACE
AUDIT_TABLES
DB audit tables DBMS_AUDIT_MGMT.move_dbaudit_tables
XDB
XDB
XDB.DBMS_XDB.MOVEXDB_TABLESPACE
AO
Analytical
DBMS_AW.MOVE_AWMETA
Workspace
Object Table

166

" "
12 "
", ,
. ,
, ,
" ",
SYSTEM. CREATE DATABASE ALTER DATABASE DEFAULT
TABLESPACE. , USERS "
":
SQL> ALTER DATABASE DEFAULT TABLESPACE users;
" "
DATABASE_PROPERTIES:
SQL> SELECT property_name, property_value
FROM database_properties
WHERE property_name like '%TABLESPACE';
PROPERTY_NAME PROPERTY_VALUE
------------------------------ -------------DEFAULT_TEMP_TABLESPACE TEMP
DEFAULT_PERMANENT_TABLESPACE USERS

" ",
, , ,
,
, . " "
.

167


(redo)

.
DBW ARCH .
. ,
.
,
FAST_START_MTTR_TARGET. ,
,
, FAST_START_MTTR_TARGET.
OPTIMAL_LOGFILE_SIZE V$INSTANCE_RECOVERY
. Redo Log Groups
Oracle Enterprise Manager.
100 . ,
. , ,
, .

168

LOB
Oracle 11g
(SecureFile LOBs). (BasicFile
LOBs). SecureFile LOBs :

.
" "
.
Oracle
LOB , .
LOB
, , ,
/ ..
db_securefile , Oracle
SecureFile BasicFile LOB. :
ALWAYS, FORCE, PERMITTED, NEVER IGNORE. :
ALWAYS - SecureFile LOB,
BasicFile,
.
PERMITTED - SecureFile LOB.
PREFERRED - LOB SecureFiles,
BASICFILE LOB
. PREFERRED
, BASICFILE
, , LOB SecureFiles.
NEVER - SecureFile LOB.
DML SecureFile LOB, BasicFile LOB.
- SecureFile
DML, .
IGNORE - SECUREFILE SecureFiles .
" " . "
" , offline.
. ,
() LOB . ,
.
SecureFiles LOB ,
, LOB'. DBMS_LOB ,
:

169

DBMS_LOB.GETOPTIONS -
. ,
. , DEDUPLICATE_OFF 0.
, .
DBMS_LOB.SETOPTIONS - SecureFile LOB (,
). LOB,
.
DBMS_LOB.ISSECUREFILE - TRUE FALSE
, LOB (BLOB CLOB) SecureFile.
DBMS_SPACE SPACE_USAGE
LOB.
, LOB' .
.

170

NFS
Oracle 11g, NFS .

NFS. NFS (Direct NFS Client)
/ Oracle
NFS . ,
NFS
NFS.
NFS
. NFS
. , , ,
NFS Oracle . NFS
oranfstab, (/etc/mtab Linux),
NFS.
. , Oracle $ORACLE_HOME/dbs/oranfstab,
NFS . -, Oracle
/etc/oranfstab, NFS,
. Oracle (/etc/mtab Linux,
/etc/vfstab - Solaris), NFS.
NFS .
Oracle Disk Manager (ODM)
NFS. oranfstab:
server: FirstNFSServer
path: 192.168.1.1
path: 192.168.1.2
path: 192.168.1.3
path: 192.168.1.4
export: /u01/oradata1 mount: /u01/oradata1

,
NFS ODM:
$ cd $ORACLE_HOME/lib
$ cp libodm11.so libodm11.so_stub
$ ln s libnfsodm11.so libodm11.so

171



,
. ,
"" .
Oracle /
Oracle Automatic Storage Management (Oracle ASM). - ,
Oracle ASM (striping) ,
ASM.
Oracle ASM :
(Striping).
(Mirroring).
.
.
, Oracle ASM,
:
- /
,
. ,
(RAID 1).
-
, ,
/ ,
.

.
-
(OLTP , )
. ,
, , ,
.
, /.

172



. Oracle
Enterprise Manager,
. 12c Oracle Enterprise Manager
Cloud Control - . EM Cloud Control
IT , , , .. ,
.
Oracle Enterprise
Manager - EM Express. EM Express ,
Oracle -, ,
. ,
. -
, EM Express. , .
EM Express
. EM Express:

. 32 EM express


.
173

ASH, SQL, ADDM ,


.
.
"Select Time Period"
"Time Picker" .
.
.

( . 30 03:55 PM).

.
, DBA . " "
.
AWR. ,
AWR.
.

,
. :
(Summary) -

(CPU, / ), .

,
.
(Activity) -- ASH Analytics
.
(Workload) - ,
, .
SQL-
. SQL
(DB time) .
, , CPU
.
RAC - RAC , ,
, .
SQL (Monitored SQL) -
SQL , PL/SQL (Database Operations)
.
ADDM - ADDM ADDM
.
174

ADDM (Current ADDM Findings) -


.
, ,
.

175


Oracle
, . ,
, Oracle .
12c ,
. MEMORY_TARGET
,
.

MEMORY_MAX_TARGET. MEMORY_TARGET
. MEMORY_MAX_TARGET ,
. MEMORY_TARGET,
MEMORY_TARGET .

SGA PGA . ,
DBCA ,
" ".
, :
SQL> ALTER SYSTEM SET MEMORY_TARGET = nM;
SQL> ALTER SYSTEM SET SGA_TARGET = 0;
SQL> ALTER SYSTEM SET PGA_AGGREGATE_TARGET = 0;

SQL> ALTER SYSTEM SET MEMORY_MAX_TARGET = nM SCOPE = SPFILE;
,
(Automatic Memory Management, AMM), :
memory_target MEMORY_TARGET,
, " " 60%
SGA, 40% - PGA.
(SGA)
(PGA). MEMORY_TARGET ,
,
MEMORY_MAX_TARGET.
memory_max_target ,
, Oracle
SGA PGA. , ,
MEMORY_TARGET.
sga_target
. , MEMORY_TARGET ,

176

SGA_TARGET ,
SGA .
pga_aggregate_target
. , MEMORY_TARGET ,
PGA_AGGREGATE_TARGET
, PGA .
(Automatic Shared Memory
Management)
Automatic Shared Memory Management (ASMM)
(Automatic Memory Management, AMM).
ASMM AMM, SGA
SGA_TARGET. Oracle
SGA. ASMM SGA
,
LOG_BUFFER - .
DB_KEEP_CACHE_SIZE - .
DB_RECYCLE_CACHE_SIZE - .
DB_nK_CACHE_SIZE - () .
, ,
SGA_TARGET, ,
:
SHARED_POOL_SIZE - .
LARGE_POOL_SIZE - .
JAVA_POOL_SIZE - Java.
DB_CACHE_SIZE - .
STREAMS_POOL_SIZE - .
, AMM, ASMM, ,
, ,
STATISTICS_LEVEL BASIC.

.
,
.
.
:
" " (Default pool) - , , , .
,
.

177

(Keep pool) - ,
, " " -
.
,
/.
(Recycle pool) - ,
.
.
, ,
. " "
- , , ,
.

178


(Automatic Database Diagnostic Monitor
ADDM) , Oracle,
.
ADDM (Automatic Workload Repository,
AWR). , "" ADDM
Oracle Enterprise Manager Cloud Control. Cloud Control
, ,
ADDM . Cloud Control , ADDM
DBMS_ADDM. API DBMS_ADDM
ADVISOR.
ADDM
, , .

ADDM. ADDM
.
ADDM
.
AWR (" " ) ADDM,
. , ADDM
:
.
.
.
, .
ADDM .
, . ADDM
.
(DB time) ,
. DB time
. DB time
.
.
. ,
.
ADDM.
, ADDM .
, . ADDM
:

179

-
/.
-
.
- - ,
(ASSM).
- ,
.
- ADDM
SQL Tuning Advisor SQL-
Segment Advisor ( ).
" " ADDM .
CONTROL_MANAGEMENT_PACK_ACCESS STATISTICS_LEVEL. ,
CONTROL_MANAGEMENT_PACK_ACCESS DIAGNOSTIC+TUNING ("
") DIAGNOSTIC. NONE
Oracle, ADDM. ADDM STATISTICS_LEVEL
TYPICAL (" ") ALL. BASIC
Oracle, ADDM.
/
DBIO_EXPECTED, I/O.
, . " ",
Oracle 10 , .
, . ,
DBIO_EXPECTED. , 600 .
SYS:
SQL> EXECUTE DBMS_ADVISOR.SET_DEFAULT_TASK_PARAMETER('ADDM','DBIO_EXPECTED',600);
" " AWR
.
. .
, -,
.
ADDM . ADDM
:
(Problem) - , .
(Symptom) - , ,
/.
(Information) - , ,
.

180

,
. , ADDM
. .
,
. ADDM .
, .
.

181

.
Oracle -
Database Replay SQL - SQL Performance Analyzer (SPA).

. ,
. SPA
SQL ,
. SQL Performance Analyzer SQL (SQL
Tuning Sets), SQL (SQL Tuning Advisor) SQL (SQL Plan
Management).
SQL .
SQL Performance Analyzer
, SQL (SQL Performance Analyzer),
SQL .
. , SQL
, ,
SQL
. , SQL-,
. SQL-
SQL
. SQL ,
SQL, .
SQL SQL .
, AWR
SQL. SQL :
SQL
.
, , SQL
SQL.
, AWR
.
SQL , ,

SQL ,
SQL Tuning Advisor the SQL Access Advisor

SQL
:

182

o
o
o
o

DBA_ADVISOR_TASKS
SQL.
DBA_ADVISOR_EXECUTIONS .
DBA_ADVISOR_FINDINGS
SQL. SQL Performance Analyzer
:
, .
, .
, .
.
DBA_ADVISOR_SQLPLANS .
DBA_ADVISOR_SQLSTATS SQL
.
V$ADVISOR_PROGRESS SQL.


SQL, ,
SQL.
,
.
SQL .
SQL.
SQL .
.
SQL- .
,
SQL-, ,
.
SQL-, .
DBMS_SQLPA SQL Performance Analyzer.
,
:
CREATE_ANALYSIS_TASK -
SQL (SQL , AWR ),
SQL.
EXECUTE_ANALYSIS_TASK - /
, .
REPORT_ANALYSIS_TASK - .

183


Oracle Database Replay
, .
, SQL-,
.
. ,
:
, SQLLoader.
(Oracle MTS).
Oracle (Oracle Streams).
(Advanced replication).
PL/SQL Advanced Queuing (AQ).
.
Oracle Call Interface (OCI).
SQL.
.
.
,
. ,
.
" "
.
.
, . ,
. ,
.

DBMS_WORKLOAD_CAPTURE.ADD_FILTER.

DBMS_WORKLOAD_CAPTURE.DELETE_FILTER.
,
, ,
. ,
.
, .
RESTRICTED .
, UNRESTRICTED,
.
DBMS_WORKLOAD_CAPTURE.START_CAPTURE,
DBMS_WORKLOAD_CAPTURE.FINISH_CAPTURE.

184

AWR ,
. ,
AWR
.

AWR

BMS_WORKLOAD_CAPTURE.EXPORT_AWR.
Oracle Enterprise Manager
Cloud Control :
DBA_WORKLOAD_CAPTURES - , .
DBA_WORKLOAD_FILTERS - ,
.
,
.

.
Oracle.
.
,
. ,
, ,
.

DBMS_WORKLOAD_REPLAY.PROCESS_CAPTURE.

. Oracle
.
, ,
. Database Replay
.
.

. , ,
DML SQL, , ,
, .

185

Oracle Database Resource Manager (DRM)


. DRM
, ,
, , .
DRM
. DRM
,
. ,
, .
Oracle 12c ,
,
:
DEFAULT_MAINTENANCE_PLAN - " " .
DEFAULT_PLAN - " ",
SYS_GROUP
.
DSS_PLAN - , DSS
ETL.
ETL_CRITICAL_PLAN - ,
ETL DSS.
INTERNAL_QUIESCE - "" .
. QUIESCE.
MIXED_WORKLOAD_PLAN - ,
.


CPU / .
, , -
, . , "",
,
. :
.
.
SQL- .
, ,
SWITCH_GROUP. ,
.
, .
186

"CANCEL_SQL", SQL . ,
"KILL_SESSION", .
/
,
, . " "
UNLIMITED.
SWITCH_TIME: ( ),
, .
SWITCH_IO_MEGABYTES: / ,
/ .
SWITCH_IO_REQS: /,
.
,
:
SWITCH_ESTIMATE: TRUE,
. SWITCH_TIME,
SWITCH_GROUP . "
" FALSE.
SWITCH_FOR_CALL: TRUE, ,
,
. " "
NULL.

187


, .
, ,

.
, Oracle
, .
, :
- ,
, . ,
, . ,
. SQL-,
, (!) .
.
-
, Oracle
.
.

. .
- .
- . ,
, ,
. ,
. , ,

, . ,

, .
-
, .
,
.
- , ,
.

, .
,
.

188




Oracle Enterprise Manager Express (EM Express). web- ,
. EM
Express :

. 33 EM Database Express

"Storage"
Oracle.
.

189

. 34

(Tablespaces)

, , ,
, ( " ") ..

. 35

(Undo)
.
undo ,
. ,
.

190

. 36 UNDO

(Redo Log Groups)


,
: , ,
.. ,
..

. 37

(Archive Logs)
.

191

. 38

(Control Files)
.

.

. 39

Oracle
Oracle Managed Files (OMF)
. OMF
, ,
.
192

, DATAFILE
. OMF (LVM), ""
. OMF
:
(Tablespaces).
(Redo log files).
(Control files).
(Archived logs).
(Block change tracking files).
(Flashback logs).
RMAN (RMAN backups).
OMF , ,
, , (alert logs) .
, .
,
, . OMF Oracle
.
OMF :
DB_CREATE_FILE_DEST - " ",
.
" "
, DB_CREATE_ONLINE_LOG_DEST_n.
DB_CREATE_ONLINE_LOG_DEST_n - " "
. "n"
. .
DB_RECOVERY_FILE_DEST - (Fast
Recovery Area). " "

DB_CREATE_ONLINE_LOG_DEST_n.

193

ASM
Oracle (Automatic Storage
Management, ASM) Oracle,
. , ,
. (mirroring)
(striping). ASM, ,
ASM. Oracle ASM
Oracle (OMF). OMF ,
. OMF
, . ASM
/
. ASM
:
.

.

.
Oracle ASM , Oracle.
SGA ASM
. SGA ASM , SGA
, , ASM
. ASM
.
ASM / . Oracle ASM
:
ASM (ASM Disks) - ,
ASM. ASM ,
(Logical Unit Number, LUN) ,
.
ASM (ASM Disk Groups) - ASM,
.
ASM (ASM Files) - , Oracle ASM .
, ,
Oracle ASM.
ASM (ASM Extents) - ,
Oracle ASM, . ASM
, ASM.
ASM (ASM Allocation Units) -
.

194

ASM (ASM Instance) - Oracle,


Oracle ASM.
.
Oracle ASM
, ,
, . Oracle ASM
, .
, , ASM:
/ Control files - CONTROLFILE
/ Data files - DATAFILE
/ Redo log files - ONLINELOG
/ Archive log files - ARCHIVELOG
/ Temporary files - TEMPFILE
/ Data file backup pieces - BACKUPSET
/ Archive log backup piece - BACKUPSET
/ Server initialization parameter file (SPFILE) PARAMETERFILE
/ Flashback logs - FLASHBACK
DataPump / Data Pump dumpset - DUMPSET

Oracle ASM, Oracle Managed Files
.
Oracle ASM.
Oracle ASM, .
:
+diskgroup/dbname/filetype/filetypetag.file.incarnation , :
+diskgroup - "+". "+"
ASM.
dbname - DB_UNIQUE_NAME ,
.
filetype - Oracle.
filetypetag - .
file.incarnation - /. .
:
+dg1/v11/controlfile/current.271.839783087
.
, Oracle ASM
. Oracle ASM
195

. ,
Oracle ASM .
.


ASM. "+"
. "\"
"/", . .
(+). ,
, .
, . :
+dg1/v11/control_file.bkp
,
dg1 zz_2:
SQL> CREATE UNDO TABLESPACE z_undo_2 DATAFILE '+dg1/z/zz_2' size 200m;
,
:
ASMCMD> ls -l /dg1/z
Type
Redund Striped
Time
DATAFILE
UNPROT COARSE
FEB 03 14:00:00
+DG1/Z/DATAFILE/Z_UNDO_2.264.870704891
ASMCMD>

Sys
N

Name
zz_2 =>

, Oracle
Managed Files (OMF), , , OMF
, .
SQL:
SQL> ALTER DISKGROUP dg1 DROP FILE '+dg1/z/zz_2';

196

ASM
ASM ,
Oracle ASM. ,
. , .
. .
.

, ,
ASM. .
Oracle ASM Administrator's Guide.
ACCESS_CONTROL.ENABLED - , (File
Access Control) Oracle ASM . true false. "
" FALSE.
.
ACCESS_CONTROL.UMASK -
Oracle ASM - , ,
, .
.
AU_SIZE - . Oracle
ASM .
AU_SIZE. 1, 2,
4, 8, 16, 32 64 MB, .
COMPATIBLE.ASM - ASM
. ASM , ,
. COMPATIBLE.ASM
COMPATIBLE.RDBMS . ,
COMPATIBLE.ASM 11.0, COMPATIBLE.RDBMS - 10.1.
ASM 11.0 .
10.1 .
COMPATIBLE.ASM
.
COMPATIBLE.RDBMS - ,
ASM .
, .
ASM
.
CONTENT.TYPE - : data, recovery system.
"" (failure) ,
Oracle ASM . " "
"data", 1 . "recovery"
3, "system" 5.

197

DISK_REPAIR_TIME - ,
- ,
. ,
COMPATIBLE.RDBMS COMPATIBLE.ASM 11.1 .
,
DISK_REPAIR_TIME ALTER DISKGROUP SET ATTRIBUTE.
, COMPATIBLE.RDBMS COMPATIBLE.ASM,
11.1, " " 3.6 . 11.1,
, .
(M) (H). ,
, . offline "
" DROP AFTER ALTER
DISKGROUP DISK OFFLINE. offline
DISK_REPAIR_TIME,
ALTER DISKGROUP SET ATTRIBUTE,
.

SQL CREATE DISKGROUP.
:
.
. Oracle
ASM NORMAL REDUNDANCY (2-
) HIGH REDUNDANCY (3- ).
Oracle ASM, EXTERNAL
REDUNDANCY.
, Oracle ASM , .
, ().
().
,
( ).
DG1 .
FG1 FG2 .
:
SQL> CREATE DISKGROUP DG1 NORMAL REDUNDANCY
FAILGROUP FG1 DISK
'/dev/rdsk/c6t6001438009B02AE90000400001910000d0s6' NAME diska1,
'/dev/rdsk/c6t6001438009B02AE90000400001950000d0s6' NAME diska2,
'/dev/rdsk/c6t6001438009B02AE90000400001970000d0s6' NAME diska3
FAILGROUP fg2 DISK
'/dev/rdsk/c6t6001438009B02AE900003000015D0000d0s6' NAME diskb1,
'/dev/rdsk/c6t6001438009B02AE90000300001610000d0s6' NAME diskb2,
198

'/dev/rdsk/c6t6001438009B02AE90000300001650000d0s6' NAME diskb3


ATTRIBUTE 'au_size'='2M',
'compatible.asm' = '11.2',
'compatible.rdbms' = '11.2';

SQL ALTER DISKGROUP.
, , .
ALTER DISKGROUP .
ALTER DISKGROUP
. Oracle ASM
. V$ASM_OPERATION
. DG1 :
SQL> ALTER DISKGROUP data ADD DISK
'/dev/rdsk/c6t6001438009B02AE90000400001990000d0s6' NAME diska4,
'/dev/rdsk/c6t6001438009B02AE900004000019B0000d0s6' NAME diska5;
ALTER DISKGROUP POWER,
- / ,
ASM_POWER_LIMIT .
.
, / .
" ", 1,
.

199

ASM
ASM
Oracle. ASM :
ORACLE_SID
Oracle ASM system identifier (SID). " " +ASM
+ASMnode_number RAC.
ORACLE_HOME Grid Infrastructure, .. ,
Oracle ASM.
INSTANCE_TYPE=ASM, ,
ASM.
STARTUP ,
.
ASM STARTUP SQL*Plus
:
FORCE - SHUTDOWN ABORT Oracle ASM ,
.
MOUNT OPEN - , ASM_DISKGROUPS.
" ". "OPEN" ASM
. , MOUNT.
NOMOUNT - Oracle ASM, - .
RESTRICT - .
, CREATE SESSION RESTRICTED SESSION,
.
SYSASM OSASM

Oracle.
ASM, SYSASM.
ASM . ,
OSASM
SYSASM .
$ . oraenv
ORACLE_SID = [] ? +ASM
The Oracle base remains unchanged with value /u01/app/grid

$ sqlplus / as sysasm
SQL> CREATE USER asm_admin IDENTIFIED by password1;
User created.

SQL> GRANT SYSASM TO asm_admin;


SQL> SQLPLUS /NOLOG
SQL> CONNECT asm_admin AS SYSASM
200

Enter password: password1


Connected to an idle instance.

SQL> STARTUP
ASM instance started
Total System Global Area 71303168 bytes
Fixed Size 1069292 bytes
Variable Size 45068052 bytes
ASM Cache 25165824 bytes
ASM disk groups mounted

ASM
ASM SHUTDOWN SQL*Plus ,
Oracle. ASM SQL*Plus
, ORACLE_SID ASM SID.
ASM , .
ASM ,
Oracle ASM Dynamic Volume Manager. ASM
:
$ . oraenv
ORACLE_SID = [] ? +ASM
The Oracle base remains unchanged with value /u01/app/grid

$ sqlplus /nolog
SQL> CONNECT asm_admin AS SYSASM
Enter password: password1
Connected.

SQL>SHUTDOWN NORMAL;
SHUTDOWN Oracle ASM:
NORMAL - SQL
.
. - ASM,
SHUTDOWN . NORMAL "
".
IMMEDIATE TRANSACTIONAL -
SQL .
, . ,
. TRANSACTIONAL IMMEDIATE ,
ASM .
ABORT - ASM .
.
201

, ASM, ,
.

202

(VLDB)

"" " " . 100
? ,
.
, .
, .
, ,
. , .
"", " ",
.

. Oracle
, ,
. SQL , SQL
, , "
" (partition pruning). SQL

.
.
,
.

,
: (Range), (Hash) (List).

.
. .
, , !


,
:
(Range Partitioning) -
.
, ,
. ,
.
VALUES LESS THAN, . ,

203

, "", .
VALUES LESS THAN .
. MAXVALUE.
,
, , , NULL.
- (Hash Partitioning) -
.
,
. ,
. ,
. - ,
.
(List Partitioning) -

.
.
.
DEFAULT ,
.

, .
,
. , ,
, .
.
:
- (Range-Range Partitioning).
- (Range-Hash Partitioning).
- (Range-List Partitioning).
- (List-Range Partitioning).
- (List-Hash Partitioning).
- (List-List Partitioning).

204



.

.
, :

, ,
.
,
.
AUTOALLOCATE
.
,
.
.
, SYSTEM SYSAUX,
. DBMS_SPACE_ADMIN
.
CREATE
TABLESPACE EXTENT MANAGEMENT LOCAL. "
" "EXTENT MANAGEMENT
LOCAL AUTOALLOCATE". , ,

UNIFORM. " " . ,
,
UNIFORM.
:
SQL> CREATE TABLESPACE ocp_1
DATAFILE '/u01/app/oracle/oradata/X/ocp_01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE;
SQL> CREATE TABLESPACE ocpts
DATAFILE '/u01/app/oracle/oradata/X/ocpts_01.dbf' SIZE 50M;
, Oracle,
.
, -
. " "
.
SEGMENT SPACE MANAGEMENT AUTO:
205

SQL> CREATE TABLESPACE ocp_1


DATAFILE '/u01/app/oracle/oradata/X/ocp_01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE
SEGMENT SPACE MANAGEMENT AUTO;
(Basic Table Compression)
(Basic Table Compression)
.
DML (INSERT / UPDATE), .
. Database Enterprise Edition (EE) .

(Advanced Row Compression) ,
.
(Advanced Row Compression)
(Advanced Row Compression)
11g OLTP (OLTP Table compression).
, DML INSERT
UPDATE. ,
. Advanced
Compression.
, .
(Hybrid Columnar Compression)
(Hybrid Columnar Compression, HCC)
. HCC
, .
HCC Oracle - Exadata, Pillar Axiom
Sun ZFS Storage Appliance.
. , HCC, ,
(compression unit).
HCC, .
.
,
. 6 15
.
, HCC,
" ".
, ,
CREATE TABLE.
, .

206

(Segment Shrink)

(high watermark) .
:
.
.
,
, , DML
. DML
, .
.
. ,
. " " ,
.
,
,
rowid.

(ASSM). ASSM
:
IOT mapping tables
rowid

SECUREFILE LOB'
(Compressed tables)

, - , , ,
.
ALTER TABLE, ALTER INDEX, ALTER MATERIALIZED VIEW ALTER MATERIALIZED VIEW LOG
SHRINK SPACE.
:
COMPACT .
,
, .
SHRINK SPACE COMPACT
.
CASCADE
.

207


:
SQL> ALTER TABLE table_001 SHRINK SPACE CASCADE;
:
SQL> ALTER TABLE partitioned_table_002 MODIFY PARTITION part_01 SHRINK SPACE;

208


. , ,
. , DBA,
.


. Oracle
- . ,
, (,
), .
:
.
, .

.
, : ,
, .

, ,
, , .
Oracle .
. 11g,
" ". ,
Oracle . 12c

:
ORA12C_VERIFY_FUNCTION

ORA12C_STRONG_VERIFY_FUNCTION. ,
, .
. " "
.
.

, .. ,
, , .
,
.
. ,
,
DBA, ,
. , , ,
! :
209

- .
- .
.
.
-.
, .
DBA ,
.


, DBA.
, . " " Oracle
, .
. PL/SQL DBMS_FGA
, ,
.

, ,
.
.

210


Oracle
.
, . ,
, SQL,
. .
.
. .
:
.
.
.
.
.
.
.
AUDIT_TRAIL.
:
DB ,
SYS,
. DB "
".
DB, EXTENDED , DB,
SQL SQL CLOB-type SYS.AUD$
SQL, ( ).
OS . AUDIT_FILE_DEST
.
XML XML. XML AUDIT_TRAIL
. .
XML, EXTENDED , AUDIT_TRAIL=XML,
SQL SQL XML
.
NONE .
SYS.AUD$, ..
SYS.FGA_LOG$.
. .
O7_DICTIONARY_ACCESSIBILITY FALSE ("
"), SYSDBA DML
SYS.AUD$ SYS.FGA_LOG$. , ,
Oracle, Database Vault Oracle Label Security.
211

,
. , ,
SYSDBA SYSOPER. .. ,
AUDIT_TRAIL. " "
$ORACLE_BASE/admin/$ORACLE_SID/adump aud.

.
SYSDBA SYSOPER.
.
SYSDBA SYSOPER
. ,
,
, .
(Fine-grained auditing, FGA) .
,
. DML.
SELECT ,
SELECT ,
. , (Fine Grained Auditing)
"" -
.

212


Oracle SYSDBA, SYSOPER,
SYSBACKUP, SYSDG SYSKM. ,
orapwd. ,
SYS . :
$ orapwd FILE=filename [ENTRIES=numusers] [FORCE={Y|N}] [IGNORECASE={Y|N}]
"=".
:
FILE -- . . ,
.
ENTRIES - ( ),
. .
FORCE - Y, . .
IGNORECASE - Y, .
.
FORMAT - 12 (" "), ORAPWD
Oracle Database 12c. 12c SYSBACKUP,
SYSDG SYSKM . legacy
ORAPWD SYSDBA SYSOPER .
SYSBACKUP - Y ORAPWD SYSBACKUP
.
SYSDG - Y ORAPWD SYSDG
.
SYSKM - Y ORAPWD SYSKM
.
, 40
:
$ orapwd FILE=/u01/app/oracle/product/12.1.0/dbhome_1/dbs/orapwX ENTRIES=40
REMOTE_LOGIN_PASSWORDFILE .
SHARED, EXCLUSIVE NONE. SHARED
,
SYS, . EXCLUSIVE
,
.
REMOTE_LOGIN_PASSWORDFILE
. :
none - Oracle , .
SYS .
213

exclusive - .
,
, SYS, SYSBACKUP, SYSDG SYSKM
ALTER USER. " ".
shared - ,
, Oracle RAC.
"read-only" . ,
. ,
, , REMOTE_LOGIN_PASSWORDFILE
"exclusive", "shared".

214


Oracle Transparent
Data Encryption (TDE). TDE
, .. , - TDE.
, ,
sqlnet.ora $ORACLE_BASE/admin/$ORACLE_SID/wallet.
X.
$ mkdir $ORACLE_BASE/admin/$ORACLE_SID/wallet
$ sqlplus / as sysdba
( , SYSKM SYSTEM).
SQL> ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "oracle";
System altered.

-. ,
. ,
:
SQL> ! ls $ORACLE_BASE/admin/$ORACLE_SID/wallet/ewallet.p12
/u01/app/oracle/admin/X/wallet/ewallet.p12

SQL> CREATE TABLESPACE s2 DATAFILE '/u01/app/oracle/oradata/X/s2.dbf' SIZE 150M ENCRYPTION


USING '3DES168' DEFAULT STORAGE (ENCRYPT);
Tablespace created.

SQL> SELECT TABLESPACE_NAME, ENCRYPTED, STATUS FROM dba_tablespaces;


TABLESPACE_NAME
-----------------------------SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
S2

ENC
--NO
NO
NO
NO
NO
YES

STATUS
--------ONLINE
ONLINE
ONLINE
ONLINE
ONLINE
ONLINE

SQL> ALTER SYSTEM SET ENCRYPTION WALLET CLOSE IDENTOFIED BY "oracle";


System altered.

-
ENCRYPTION_WALLET_LOCATION $ORACLE_HOME/network/admin/sqlnet.ora.
.
ENCRYPTION_WALLET_LOCATION =
(SOURCE=(METHOD=FILE)

215

(METHOD_DATA=
(DIRECTORY=/u01/app/oracle/product/12.1.0/dbhome_1/network/admin/$ORACLE_SID)
)
)

.
:
$ chown -R oracle:oinstall $ORACLE_BASE/admin/$ORACLE_SID/wallet
$ chmod -R 700 $ORACLE_BASE/admin/$ORACLE_SID/wallet
$ chmod 600 $ORACLE_BASE/admin/$ORACLE_SID/wallet/ewallet.p12
, , . ZFS Solaris 11

$ chmod S+ci ewallet.p12

$ chmod S-ci ewallet.p12.

Oracle 12c Advanced Security Guide.
Oracle Wallet.
,
,
. , , ,
.
Oracle Transparent Data Encryption (TDE)
, 3DES168, AES128, AES192, AES256.
, .. AES128 128-
.
.
, .
,
. TDE
AES 192 (AES192). TDE
(salt) ,
. TDE
(Message Authentication Code, MAC) . " "
SHA-1.

216



SQL. Oracle, SQL,
, TDE. TDE
/ :
, B-tree.
.
.
.
TDE ,
. ,
, DBMS_CRYPTO.
BINARY_DOUBLE, BINARY_FLOAT, CHAR, DATE, INTERVAL DAY TO SECOND,
INTERVAL YEAR TO MONTH, NCHAR, NUMBER, NVARCHAR2, RAW, TIMESTAMP, VARCHAR2
. ,
Advanced Security Guide.
, SALARY
" " (AES192).
SQL> CREATE TABLE employee (emp_id NUMBER, first_name VARCHAR2(128),
last_name VARCHAR2(128),salary NUMBER ENCRYPT);
,
(salt).
, EMP_ID SALARY
AES256.
SQL> CREATE TABLE employee (emp_id NUMBER ENCRYPT NO SALT, first_name VARCHAR2(128),
last_name VARCHAR2(128),salary NUMBER ENCRYPT USING 'AES256');
ALTER TABLE ADD
:
SQL> ALTER TABLE employee ADD (ssn VARCHAR2(11) ENCRYPT);
ALTER TABLE MODIFY :
SQL> ALTER TABLE employee MODIFY (last_name ENCRYPT);


. ,
. , .
, , , , LOB',
217

..
,
. .
:
ALTER TABLESPACE.

(Transportable Tablespace).

,
.

" ":
SQL> CREATE TABLESPACE secure_ts_01
DATAFILE '/u01/app/oracle/oradata/X/ocp_secure01.dbf' SIZE 100M
ENCRYPTION DEFAULT STORAGE(ENCRYPT);

218


Oracle,
.
.
, ,
.

(.)

(.)

archivelog
flashback
Fast recovery area
redo log















Oracle

patch

partition
Queryable Patch Inventory
Software Library
undo
undo tablespace
ADO
ADR
ASH
CBD
DBCA
DBA

Automatic Data Optimization


Automatic Diagnostic Repository
Active Session History
Container DataBase
Database Create Assistant
Database administrator

FDA
FGA
ILM
PITR
PDB
OUI
VLDB

Flashback Data Archive


Fine-grained auditing
Information Lifecycle Management
Point-in-time recovery
Pluggable DataBase
Oracle Universal Installer
Very Large Database

219

You might also like