6 Temmuz 2011 Çarşamba

Enterprise Manager recreate komutları

önce çalisip çalismadigini kontrol etmek için;

 -- emctl status dbconsole

''Environment variable ORACLE_SID not defined. Please define it.''
  yazabilir.ilk çalistirmada sid degerini girmemizi ister.

-- set oracle_sid=orcl

sid değerimizi yazariz.(linux da set yerine export yazılır).Ancak linux da büyük harflerle orcl vermissek büyük yazacagiz.

-- emctl stop dbconsole

sonra

-- emctl start dbconsole

diyerek çalistimaya çalisirz.düzelmezse yeniden yartmaliyiz.yeniden yaratmak için aşşağıdaki adımları uygularız.

EM repository recreate

-- recreate
emca -config dbcontrol db -repos recreate


recreate komutu hata verirse ayrı ayrı drop ve create komutlarını çalıştırırız. 

-- drop
emca -deconfig dbcontrol db -repos drop


-- create
emca -config dbcontrol db -repos create


-- hata verirse (sysman user already exists gibi) elle
-----------------------------------------------------
-- sys kullanicisi ile


sql> drop user sysman cascade;
sql> drop role mgmt_user;
sql> drop user mgmt_view cascade;
sql> drop public synonym MGMT_TARGET_BLACKOUTS;
sql> drop public synonym SETEMVIEWUSERCONTEXT;

3 Temmuz 2011 Pazar

Sorgu bazlı flashback

Örneğin biri geldi dedi ki,5dk önce deneme3 tablosundan bir kaydı sildim ama hangi kaydı sildim bilmiyorum.Bu durumda hangi kaydı sildiğini bulmak için sorgu bazlı flashback yapmak gerekir.

select * from deneme3

as of timestamp to_timestamp('03/07/2011 20:55','DD/MM/YYYY HH24:MI')

minus

select *from deneme3



eklenen satırı bulmak içinse tam tersini yazarız



select *from deneme3

minus

select * from deneme3

as of timestamp to_timestamp('03/07/2011 20:55','DD/MM/YYYY HH24:MI')



eksik olanı bulduktan sonra insert into tablo adı yazarsak silinmiş olan kaydı da geri eklemiş oluruz.


insert into deneme3

select * from deneme3

as of timestamp to_timestamp('03/07/2011 20:55','DD/MM/YYYY HH24:MI')

minus

select *from deneme3