вторник, 14 декабря 2010 г.

Hash cluster

Hash function applied to key and locates the needed block (for select or update)

-- When to use
1) Rows with the same key are located in the same area on disk
2) Mostly equal predicates used for the key

Better than table/index because for that needed:
1) One or more I/O to find entry in index
2) One or more I/O to find entry in table

FRA

-- Space usage
select name, space_used/1024/1024 um, space_reclaimable/1024/1024 m, space_limit/1024/1024 ml from v$recovery_file_dest;
-- Delete unneeded archivelogs from OS
rmam
-- Crosscheck
crosscheck archivelog all;
-- List
list expired archivelog all;
-- Delete
delete expired archivelog all

resync catalog, error in doc 10g

doc

RMAN> resync catalog;

new incarnation of database registered in recovery catalog
starting full resync of recovery catalog
full resync complete

RMAN> resync catalog;

starting full resync of recovery catalog
full resync complete

-- And that form does not work (but would be really useful)
RMAN> RESYNC CONTROLFILE FROM CONTROLFILECOPY '/tmp/cfile.dbf';

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "controlfile": expecting one of: "catalog"
RMAN-01007: at line 1 column 8 file: standard input

понедельник, 13 декабря 2010 г.

set initial consumer group for user

-- Create consumer group
exec dbms_resource_manager.create_pending_area;
exec dbms_resource_manager.create_consumer_group('test', 'test');
-- Try to set for user test
09:36:37 159 4294967295 SYS@orcl> exec dbms_resource_manager.set_initial_consumer_group('test', 'test');
ORA-29368: consumer group TEST does not exist
-- Need to submit pending area
exec dbms_resource_manager.submit_pending_area;
-- But...
exec dbms_resource_manager.set_initial_consumer_group('test', 'test');
ORA-29399: user TEST does not have privilege to switch to consumer group TEST
-- Grant privilege
exec dbms_resource_manager_privs.grant_switch_consumer_group('test', 'test', false);
-- And we are done
exec dbms_resource_manager.set_initial_consumer_group('test', 'test');

resumable session

08:21:50 159 67 TEST@orcl> alter session enable resumable timeout 60;
ORA-01031: insufficient privileges
--
08:29:00 159 4294967295 SYS@orcl> grant resumable to test;
Grant succeeded.
--
08:29:22 159 69 TEST@orcl> alter session enable resumable timeout 60;
Session altered.

online validate structure

-- error will raise if something wrong
analyze table test validate structure online;

scn controlfile/datafile

set lines 300
column name format a51
select d.name, d.checkpoint_change# control_file_change, h.checkpoint_change# file_change
from v$datafile d, v$datafile_header h
where h.file# = d.file#
order by 1
/

1) control_file_change = file_change => database can be opened
2) control_file_change > file_change => recovery is needed
3) control_file_change < file_change => recovery using backup controlfile needed

Update BLOB

set define off DECLARE    vb1 CLOB := 'long text';    vb2 CLOB :=                 'long text';    vb3 CLOB :=              ...