第一章:日志管理
1.forcing log switches
sql alter system switch logfile;
2.forcing checkpoints
sql alter system checkpoint;
3.adding online redo log groups
sql alter database add logfile [group 4]
sql ('/disk3/log4a.rdo','/disk4/log4b.rdo') size 1m;
4.adding online redo log members
sql alter database add logfile member
sql '/disk3/log1b.rdo' to group 1,
sql '/disk4/log2b.rdo' to group 2;
5.changes the name of the online redo logfile
sql alter database rename file 'c:/oracle/oradata/oradb/redo01.log'
sql to 'c:/oracle/oradata/redo01.log';
6.drop online redo log groups
sql alter database drop logfile group 3;
7.drop online redo log members
sql alter database drop logfile member 'c:/oracle/oradata/redo01.log';
8.clearing online redo log files
sql alter database clear [unarchived] logfile 'c:/oracle/log2a.rdo';
9.using logminer analyzing redo logfiles
a. in the init.ora specify utl_file_dir = ' '
b. sql execute dbms_logmnr_d.build('oradb.ora','c:\oracle\oradb\log');
c. sql execute dbms_logmnr_add_logfile('c:\oracle\oradata\oradb\redo01.log',
sql dbms_logmnr.new);
d. sql execute dbms_logmnr.add_logfile('c:\oracle\oradata\oradb\redo02.log',
sql dbms_logmnr.addfile);
e. sql execute dbms_logmnr.start_logmnr(dictfilename='c:\oracle\oradb\log\oradb.ora');
f. sql select * from v$logmnr_contents(v$logmnr_dictionary,v$logmnr_parameters
sql v$logmnr_logs);
g. sql execute dbms_logmnr.end_logmnr;
第二章:表空间管理
1.create tablespaces
sql create tablespace tablespace_name datafile 'c:\oracle\oradata\file1.dbf' size 100m,
sql 'c:\oracle\oradata\file2.dbf' size 100m minimum extent 550k [logging/nologging]
sql default storage (initial 500k next 500k maxextents 500 pctinccease 0)
sql [online/offline] [permanent/temporary] [extent_management_clause]
2.locally managed tablespace
sql create tablespace user_data datafile 'c:\oracle\oradata\user_data01.dbf'
sql size 500m extent management local uniform size 10m;
3.temporary tablespace
sql create temporary tablespace temp tempfile 'c:\oracle\oradata\temp01.dbf'
sql size 500m extent management local uniform size 10m;
4.change the storage setting
sql alter tablespace app_data minimum extent 2m;
sql alter tablespace app_data default storage(initial 2m next 2m
axextents 999);
5.taking tablespace offline or online
sql alter tablespace app_data offline;
sql alter tablespace app_data online;
6.read_only tablespace
sql alter tablespace app_data read only|write;
7.droping tablespace
sql drop tablespace app_data including contents;
8.enableing automatic extension of data files
sql alter tablespace app_data add datafile 'c:\oracle\oradata\app_data01.dbf' size 200m
sql autoextend on next 10m maxsize 500m;
9.change the size fo data files manually
sql alter database datafile 'c:\oracle\oradata\app_data.dbf' resize 200m;
10.Moving data files: alter tablespace
sql alter tablespace app_data rename datafile 'c:\oracle\oradata\app_data.dbf'
sql to 'c:\oracle\app_data.dbf';
11.moving data files:alter database
sql alter database rename file 'c:\oracle\oradata\app_data.dbf'
sql to 'c:\oracle\app_data.dbf';
第三章:表
1.create a table
sql create table table_name (column datatype,column datatype]....)
sql tablespace tablespace_name [pctfree integer] [pctused integer]
sql [initrans integer] [maxtrans integer]
sql storage(initial 200k next 200k pctincrease 0 maxextents 50)
sql [logging|nologging] [cache|nocache]
2.copy an existing table
sql create table table_name [logging|nologging] as subquery
3.create temporary table
sql create global temporary table xay_temp as select * from xay;
on commit preserve rows/on commit delete rows
4.pctfree = (average row size - initial row size) *100 /average row size
pctused = 100-pctfree- (average row size*100/available data space)
5.change storage and block utilization parameter
sql alter table table_name pctfree=30 pctused=50 storage(next 500k
sql minextents 2 maxextents 100);
6.manually allocating extents
sql alter table table_name allocate extent(size 500k datafile 'c:/oracle/data.dbf');
7.move tablespace
sql alter table employee move tablespace users;
8.deallocate of unused space
sql alter table table_name deallocate unused [keep integer]
9.truncate a table
sql truncate table table_name;
10.drop a table
sql drop table table_name [cascade constraints];
11.drop a column
sql alter table table_name drop column comments cascade constraints checkpoint 1000;
alter table table_name drop columns continue;
12.mark a column as unused
sql alter table table_name set unused column comments cascade constraints;
alter table table_name drop unused columns checkpoint 1000;
alter table orders drop columns continue checkpoint 1000
data_dictionary : dba_unused_col_tabs
第四章:索引
1.creating function-based indexes
sql create index summit.item_quantity on summit.item(quantity-quantity_shipped);
2.create a B-tree index
sql create [unique] index index_name on table_name(column,.. asc/desc)
tablespace
sql tablespace_name [pctfree integer] [initrans integer] [maxtrans integer]
sql [logging | nologging] [nosort] storage(initial 200k next 200k pctincrease 0
sql maxextents 50);
3.pctfree(index)=(maximum number of rows-initial number of rows)*100/maximum number of rows
4.creating reverse key indexes
sql create unique index xay_id on xay(a) reverse pctfree 30 storage(initial 200k
sql next 200k pctincrease 0 maxextents 50) tablespace indx;
5.create bitmap index
sql create bitmap index xay_id on xay(a) pctfree 30 storage( initial 200k next 200k
sql pctincrease 0 maxextents 50) tablespace indx;
6.change storage parameter of index
sql alter index xay_id storage (next 400k maxextents 100);
7.allocating index space
sql alter index xay_id allocate extent(size 200k datafile
'c:/oracle/index.dbf');
8.alter index xay_id deallocate unused;
第五章:约束
1.define constraints as immediate or deferred
sql alter session set constraint[s] = immediate/deferred/default;
set constraint[s] constraint_name/all immediate/deferred;
2. sql drop table table_name cascade constraints
sql drop tablespace tablespace_name including contents cascade constraints
3. define constraints while create a table
sql create table xay(id number(7) constraint xay_id primary key deferrable
sql using index storage(initial 100k next 100k) tablespace indx);
primary key/unique/references table(column)/check
4.enable constraints
sql alter table xay enable novalidate constraint xay_id;
5.enable constraints
sql alter table xay enable validate constraint xay_id;
第六章:LOAD数据
1.loading data using direct_load insert
sql insert /*+append */ into emp nologging
sql select * from emp_old;
2.parallel direct-load insert
sql alter session enable parallel dml;
sql insert /*+parallel(emp,2) */ into emp nologging
sql select * from emp_old;
3.using sql*loader
sql sqlldr scott/tiger sql control = ulcase6.ctl sql log = ulcas