Logo & SQL

Sql'de Tabloların indexlerini tekrar oluşturmak

sql

YKYunus KÖSE14 Mart 20251 dk okuma

Öncelikle sql server'da hangi tabloların % kaç oranında bozulduğunu gösteren sorgu aşağıdaki gibidir;

SELECT

DB_NAME() AS VeriTabaniAdi,

OBJECT_NAME(IPS.object_id) AS TabloAdi,

SI.name AS IndeksAdi,

IPS.index_type_desc AS IndeksTuru,

IPS.avg_fragmentation_in_percent AS BozulmaOrani,

IPS.page_count AS SayfaSayisi

FROM sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, 'LIMITED') IPS

JOIN sys.indexes SI ON IPS.object_id = SI.object_id AND IPS.index_id = SI.index_id

WHERE IPS.index_id > 0

ORDER BY BozulmaOrani DESC;

Sonrasında

Bir sql veritabanında çok fazla yavaşlama varsa indexlerin düzelmesi için aşağıdaki kodu çalıştırmanız yeterli olacaktır.

ALTER INDEX ALL ON YKYAZILIMDB.dbo.TABLOADI REBUILD; --Tek Tablo

EXEC sp_MSforeachtable 'ALTER INDEX ALL ON ? REBUILD'; --Tüm Tablolar

ALTER INDEX ALL ON YKYAZILIMDB.dbo.TABLOADI REBUILD WITH (ONLINE = ON); -- Sql Enterprise gerektirir

Logo yazılım ürünlerinde Logo Start, Go Plus, Go3, Go3 New, Tiger Plus ve Tiger Enterprise gibi ürünlerinde kullanılan MS SQL...

Başlamak için

Bir hafta sonunda tanıyamayacaksınız.

Üye ol, kategorilerini kur, ekibini davet et, kullanmaya başla. Ödeme bilgisi istenmez, deneme süresi sonunda otomatik fatura çıkmaz.

Kredi kartı yok · Anlık başlangıç · İstediğinde iptal