Tuesday 22 May 2012

ASM tips

ASM Clients and status -- Clients select INSTANCE_NAME, DB_NAME, STATUS from v$asm_client order by DB_NAME,INSTANCE_NAME;

ASM Diskgroups & Space, diskgroup size col pct_used for a9 set line 200 select name, group_number,state, round((total_mb-free_mb)/total_mb*100)||'%' pct_used, total_mb/1024 total_gb,round(free_mb/1024) free_gb from V$ASM_DISKGROUP;

ASM Archivelog Usage by DB col path for a40 set line 200 SELECT substr(full_path,1,instr(full_path,'/',1,2)) path, round(sum(f.bytes)/1024/1024) sum_MB, count(*) qty FROM (SELECT CONCAT('+'||gname, SYS_CONNECT_BY_PATH(aname,'/')) full_path, group_number, file_number FROM (SELECT g.name gname, a.parent_index pindex, a.name aname, a.reference_index rindex, a.group_number, a.file_number FROM v$asm_alias a, v$asm_diskgroup g WHERE a.group_number = g.group_number) START WITH (MOD(pindex, POWER(2, 24))) = 0 CONNECT BY PRIOR rindex = pindex) sub, v$asm_file f WHERE sub.group_number = f.group_number AND sub.file_number = f.file_number AND f.type = 'ARCHIVELOG' GROUP BY substr(full_path,1,instr(full_path,'/',1,2)) ORDER BY 2; Disk Usage by file/object name select substr(al.name, 0, instr(al.name, '.')-1) Friendly_name, round(sum(a.bytes)/1024/1024, 2) from v$asm_file a, v$asm_alias al where al.file_number = a.file_number and a.group_number = 2 group by substr(al.name, 0, instr(al.name, '.')-1); If a db has a restore point and you want to turn off flash back, it was slightly tricky on 10g. After few tries found that i had to drop the restore point first. select flashback_on from v$database; select name, scn, time, guarantee_flashback_database from v$restore_point; DROP RESTORE POINT FRI_1120_TEST_RW; alter database flashback off; Drop files. $ ORACLE_SID=+ASM; export ORACLE_SID $ sqlplus "/ as sysdba" SQL> ALTER DISKGROUP TESTDB_DATA2 DROP FILE '+TESTDB_DATA2/testdb/datafile/app_data.256.598127837';

Thursday 10 May 2012

snapshot and fast start db

Very simple to change the standby to snapshop (allows you wirt)

Wednesday 9 May 2012

Oracle Active Data Guard

Oracle Active Data Guard SE1: N SE: N EE: Y - Extra cost option

Tuesday 8 May 2012

Data Guard using RMAN

Data Guard using RMAN run { allocate channel prmy1 type disk; allocate channel prmy2 type disk; allocate channel prmy3 type disk; allocate channel prmy4 type disk; allocate auxiliary channel stby type disk; duplicate target database for standby from active database spfile parameter_value_convert 'nidb1_uk','nidb1_fr' set db_unique_name='nidb1_fr' set db_create_file_dest='+SBDAT' set db_recovery_file_dest='+SBFRA' set db_recovery_file_dest_size='5G' set control_files='+SBDAT' set log_archive_max_processes='5' set fal_client='nidb1_fr' set fal_server='nidb1_uk' set standby_file_management='AUTO' set log_archive_config='dg_config=(nidb1_uk,nidb1_fr)' set log_archive_dest_2='service=nidb1_uk ASYNC valid_for=(ONLINE_LOGFILE,PRIMARY_ROLE) db_unique_name=nidb1_uk' ; }