Tüm Ürünler
Search
Belge Merkezi

Data Management:Tablespace parçalarını geri kazanma

Son Güncelleme:Oct 04, 2026

MySQL veritabanında INSERT, UPDATE ve DELETE deyimleri sıkça çalıştırıldığında veriler disk üzerinde sürekli bir şekilde depolanmaz ve tablespace parçaları oluşur. Bu parçalar veritabanı performansını düşürür. Tablespace parçalarını geri kazanmak için OPTIMIZE TABLE deyimi gibi standart işlemler uygulandığında tablolar kilitlenebilir ve bu durum iş süreçlerinizi etkileyebilir. Data Management (DMS) hizmetinin kilitsiz şema değişikliği özelliği, veritabanı değişikliği sırasında tabloların kilitlenmesinin iş süreçlerinizi etkilemesini önlerken tablespace parçalarını otomatik olarak geri kazanır. Bu sayede veritabanı performansı ve verimliliği artar, depolama maliyetleri azalır. Bu konuda, DMS'te tablespace parçalarını otomatik olarak geri kazanmak için nasıl kilitsiz şema değişikliği bileti oluşturulacağı açıklanmaktadır.

Ön koşullar

Kullanım notları

Büyük bir tablodan tablespace parçalarını geri kazanırken, örnekteki kullanılabilir depolama alanının hedef tablo boyutunun en az iki ila üç katı olduğundan emin olun. İşlem sırasında örnek üzerindeki kullanılabilir depolama alanını yakından izleyin.

Önemli
  • Büyük bir tablodaki tablespace parçalarını geri kazanırken, verileri geçici olarak saklamak için bir kopyaya ihtiyaç duyulabilir ve bu durum ek depolama alanı kaplar. Veritabanı örneğindeki kalan depolama alanı yetersizse DMS, tablespace parçalarını geri kazanamayabilir veya veritabanı örneği kilitlenebilir.

  • DMS, tabloları kilitlemeden şemaları değiştirmek için DDL deyimlerini çalıştırarak tablespace parçalarını geri kazanır. Deyimlerin çalıştırılma başarı oranının %100'e ulaşamayabileceğini unutmayın.

Tablespace parçalarının boyutunu görüntüleme

Tablespace parçalarının boyutunu, DMS'in SQL Konsolu'nda aşağıdaki SQL deyimi çalıştırarak kontrol edebilirsiniz: SHOW TABLE STATUS LIKE 'table_name';. SQL Konsolu'nun kullanımıyla ilgili ayrıntılı talimatlar için bkz. SQL Konsolu.

Sorgu sonuçlarında, Data_free sütunu tablodaki parçalı alan miktarını bayt cinsinden gösterir.

Yordam

  1. DMS 5.0 konsoluna giriş yapın.

  2. Üst gezinme çubuğunda Database Development > Data Change > Lock-free Change seçeneklerini seçin.

    Not

    DMS konsolunu basit modda kullanıyorsanız sol üst köşedeki 2022-10-21_15-25-22..png simgesine tıklayın ve All functions > Database Development > Data Change > Lock-free Change yolunu izleyin.

  3. Kilitsiz şema değişikliği biletini yapılandırın. Daha fazla bilgi için bkz. Kilitsiz değişiklik biletleri kullanarak kilitsiz şema değişiklikleri gerçekleştirin.

    Bir örnek için kilitsiz şema değişikliği özelliğini etkinleştirdikten sonra gönderdiğiniz her kilitsiz şema değişikliği bileti tablespace parçalarını otomatik olarak geri kazanır. Ancak, daha kararlı bir geri kazanım işlemi sağlamak ve ilgili tablolar üzerindeki etkiyi en aza indirmek için biletinizde tabloyu açıkça yeniden düzenlemek amacıyla aşağıdaki SQL deyimlerinden birini kullanmanızı öneririz:

    • OPTIMIZE TABLE table_name;

    • ALTER TABLE table_name COMMENT 'The new comment for the table';

    • ALTER TABLE table_name ENGINE=InnoDB;

    • ALTER TABLE table_name MODIFY COLUMN field_name INT COMMENT 'The new comment for the field';

      Not

      Bu SQL deyimleri alan geri kazansa da DMS'teki kilitsiz işlem (OPTIMIZE TABLE dahil), yerel OPTIMIZE TABLE komutu kadar kapsamlı olmayabilir.