log dosyasını küçültme ya da silme

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
onaydin
Üye
Mesajlar: 202
Kayıt: 07 Şub 2006 02:30

log dosyasını küçültme ya da silme

Mesaj gönderen onaydin »

Merhaba
sql serverda log dosyasını ayırıp silme ya da boyutunu düşürme ile ilgili bir yöntem var mıdır?
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Mrb; önce db'yi detach ederek kullanımdan kaldırın. Sonra log dosyasını silin ve daha sonra da sp_attach_single_file_db ile sadece .mdf dosyasını attach edin. Artık sıfır kilometre bir log dosyanız olacaktır. İyi çalışmalar.

Kod: Tümünü seç

sp_attach_single_file_db 'dbadi' ,'c:\data\veri.mdf'
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

Selamlar,

Hangi versiyonda?

Malum M$-SQL Server 2000'de bu problem vardı. Log Shrink yapmak gerekiyor ama Shring ile maalesef LOG Dosyası küçülmüyor abidik gubidik işlemler yapmak gerekiyor.

Eğer 2000'den bahsediyorsanız, önce LOG için DB'yi simple Recovery Mode'una alın. Sonra Backup alın daha sonra shrink edin ve en sonda tekrar hangi moddaysa (genelde Full Recovery Mode'a) alın.

O zaman Log dosyası küçülecektir.

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Kuri_YJ yazdı:Selamlar,

Hangi versiyonda?

Malum M$-SQL Server 2000'de bu problem vardı. Log Shrink yapmak gerekiyor ama Shring ile maalesef LOG Dosyası küçülmüyor abidik gubidik işlemler yapmak gerekiyor.

Eğer 2000'den bahsediyorsanız, önce LOG için DB'yi simple Recovery Mode'una alın. Sonra Backup alın daha sonra shrink edin ve en sonda tekrar hangi moddaysa (genelde Full Recovery Mode'a) alın.

O zaman Log dosyası küçülecektir.

Kolay Gelsin
Aslında konuya çok ta hakim değilim, biraz kafam karıştı. Yukarıda yazdığım yöntem istenileni karşılamıyor mu şimdi anlayamadım? Genelde bana gelen log'suz dosyaları bu şekilde attach etmek zorunda kalıyordum ve her seferinde 1 MB'ı geçmeyen log dosyam oluşuyordu. Acaba onların orjinal log'ları zaten o boyuttalar mıydı? Son olarak kısaca bu loglar hakkında kaba taslak neyi bilmemiz gerekiyor? tşk.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Çağrıbey
Üye
Mesajlar: 40
Kayıt: 26 Kas 2004 11:25
Konum: Ankara

Mesaj gönderen Çağrıbey »

Önce SQL QUERY ANALYZER 'i açıyorsunuz...
ve aşağıdaki kodları yazarak Run yapiyorsunuz...
her iki işlemi de ayrı ayrı da yapabilirsiniz, birlikte de yapabilirsiniz..


DENEME ISIMLI DATA'da LOG TEMIZLEME
----------------------------------------
USE DENEME
DBCC SHRINKFILE(DENEME_Log,2)

USE DENEME
BACKUP LOG DENEME WITH TRUNCATE_ONLY


DENEME DATA'YI TEMIZLEME
---------------------------------
USE DENEME
DBCC SHRINKFILE(DENEME_Dat,2)

USE DENEME
BACKUP LOG DENEME WITH TRUNCATE_ONLY

--------------
Kolay gelsin...
Gelecek günden ne dilersen, doğacak günler onu getirir
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

Mesaj gönderen conari »

iki türlü Shring yönetimi var ben genelde ikincisini kullanırım.
Bir normal shring dersiniz.
Bir de Shring ederken Files kısmına girerek shring etme
Her zaman ikinci yöntemi kullanırım.
Bir kelimenin anlamını öğretsen bile yeter..
ResimResim
onaydin
Üye
Mesajlar: 202
Kayıt: 07 Şub 2006 02:30

Mesaj gönderen onaydin »

Server da 2000 yüklü, ama sadece raporlama amaçlı, şirket dışında da çalışma imkanı olabilmesi için sql2005 express yüklü bir makinaya aldığımız backup ı restore yöntemiyle aktarıyoruz. Bu veritabanında yeni bir ekleme çıkarma işlemi yapılmıyor, dolayısıyla aslında log dosyası olmasa da olur.
önce db'yi detach ederek kullanımdan kaldırın. Sonra log dosyasını silin ve daha sonra da sp_attach_single_file_db ile sadece .mdf dosyasını attach edin. Artık sıfır kilometre bir log dosyanız olacaktır.
2005 te bu şekilde yaparak acaba logdan kurtulur muyuz?
Kullanıcı avatarı
hbahadir
Kıdemli Üye
Mesajlar: 544
Kayıt: 06 Ara 2004 05:03
Konum: BURSA idi artık İST.
İletişim:

Mesaj gönderen hbahadir »

2000 vt sini 2005 aktarırken bende sorun yaşamıştım. Ama log dosyasını küçültmek kolaydır (siz yine de yedek alıp deneyin). Entprise manager dan Vt' yi detach edin, sonra yanındaki log dosyasını silin (yada ismini değiştirin) tekrar attach edin, artık yenir bir log dosyanız var !!!
onaydin
Üye
Mesajlar: 202
Kayıt: 07 Şub 2006 02:30

Mesaj gönderen onaydin »

Sorunun devamı olması açısından buraya yazıyorum.
2.14gb lık bir db ve 2.7gb lik bir log dosyası vardı, log u sildim, shrink ettim vs, onda sorun kalmadı. Veritabanını küçültmek için paket programın kullandığı log table ları var, bunlardan 1,5 milyon civarı satır sildim şimdi mdf 2,12gb gözüküyor.
Neticede 2gb aldığım backup dosyası artık 750 mb ama bu backuptan geri döndüğümde bana yine 2gb lık db veriyor.
Tablolar tarafından kullanılan alanlara baktığımda 700mb reserved, 330mb index ve 190mb da data olaracak şekilde bir sonuç dönüyor.

Ne yapılırda bu veritabının boyutu düşer.
Cevapla