Diyelimki VeriTabanı Load işleminde bu şekilde bir hata aldınız.
The log segment in the target database % is too small (% MB) to accommodate the log segment from the dumped database (% MB)
sizden LogSegmentin az yada cok olduğuınu söylüyor. bu durumda disk resize ederek sorunu aşağıdaki şekilde çözebilirsiniz
eğer hatada 15MegaByte'a ihtiyaç varsa aşağıdaki şekilde ekstra '15M' eklenebilirEğer GigaByte ise GigaByte eklenebilir '45G'
1> disk resize name='VT_log01', size= "15M"
2> go
1> alter database TEST_DB log on VT_log01 = "15M"
2> go
çalıştırdınız ama hata aldınız. Ne diyor.
An attempt was made to fetch logical page '%' from cache 'default data cache'. Page belongs to database '%' (12), object 'sysdepends' (12), index 'csysdepends' (2), partition 'csysdepends_12' (12) and not to database '%' (12), object 'sysreferences' (16), index 'sysreferences' (0), partition 'sysreferences_16' (16).
bu hatanın birçok sebebi olabilir. bunlardan biri de Dtabase Load ederken sizin tarafınızdan load işlemin kesilmesi yada bi şekilde kesilmiş olması. yani load tamamlanmadan load işlem kesildi ise bu hatayı alabilirsiniz.
yapmamız gereken. Database'i drop edip tekrardan create etmemiz.
1>drop database TEST_DB
dedik. :) Ancak bunda da hata alıyoruz.
An attempt was made to fetch logical page '%' from cache 'default data cache'. Page belongs to database '%' (12), object 'sysdepends' (12), index 'csysdepends' (2), partition 'csysdepends_12' (12) and not to database '%' (12), object 'sysreferences' (16), index 'sysreferences' (0), partition 'sysreferences_16' (16).
VeriTabanına ve disklerine zaten erişemiyoruz ki. Nasıl drop edelim.
Ozaman bizde VeriTabanını Repair yaparız.
dbcc dbrepair(TEST_DB,dropdb)
go
Database 'ebyn_arc' is not marked suspect. You cannot drop it with DBCC
yine hata verdi. Benim daha önceden işaretleme yaptığım birşey yok. bunu yapamazsın diyor.
O zman bizde Kısır döngüye giriyoruz. burada çıkmaz yoldayız. ne yapacağız.
Öncelikle sistem databaselerinin update yetkisini açacağız.
sp_configure "allow updates", 1
go
daha sonra database in statusunu değiştireceğiz. sonra sistem databaselerine erişimi kapatacağız. bunu yaparken sa logini ile yapmanız gerekmektedir.
1> use master
2> go
1> begin transaction
2> update sysdatabases set status = 320
3> where name = 'TEST_DB'
4> go
kontorl edin gerçekten 1 tane mi kayıt etkilendi. sonra commitlemeyi yapın 1> commit transaction
2> go
daha sonra sistem database erişimi kaldırın.
1> sp_configure "allow updates", 0
2> go
sonra VeriTabanı instance ını kapatıyoruz tekrar açıyoruz.
1> shutdown with nowait
2> go
kapattıktan sonra tekrar açmayı Unix/Linux sistemlerde komutla windows sistemlerde servislerden açıyorsunuz.
daha sonra dbccrepair komutu ile databasei kaldırıyoruz.
1> dbcc dbrepair(TEST_DB,dropdb)
2> go
bundan sonrası artık size kalmış. VeriTabanını tekrardan create edeceksiniz.
iyi şanslar.
Hiç yorum yok:
Yorum Gönder