Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: SQL Server 2019 (15.x) ve sonraki sürümleri
Bu makalede, SQL Server 2019 (15.x) ve sonraki sürümlerde Transact-SQL (T-SQL) ile hızlandırılmış veritabanı kurtarma (ADR) etkinleştirmeyi ve devre dışı bırakmanın yanı sıra ADR tarafından kullanılan kalıcı sürüm deposu (PVS) dosya grubunun nasıl değiştirileceği öğretilmektedir.
Note
Azure SQL Veritabanı, Azure SQL Yönetilen Örneği ve Microsoft Fabric'teki SQL veritabanında hızlandırılmış veritabanı kurtarma (ADR) her zaman etkindir. PVS tarafından yüksek depolama kullanımı veya yavaş ADR temizlemesi gibi sorunlar gözlemlerseniz, hızlandırılmış veritabanı kurtarma izleme ve sorun giderme bölümüne bakın veya Azure desteği ile iletişime geçin.
Hızlandırılmış veritabanı kurtarmayı kimler dikkate almalıdır?
Birçok müşteri, veritabanı kurtarma süresini iyileştirmek ve uzun geri alma işlemlerinden kaçınmak için hızlandırılmış veritabanı kurtarma (ADR) teknolojisini değerli buluyor.
Veritabanı iş yükleriniz sık sık aşağıdaki senaryolarla karşılaşıyorsa ADR'den yararlanabilirsiniz:
- Uzun süre çalışan ve önlenemeyen işlemler. Örneğin, Otomatik İşlem Geri Alma (ADR), uzun süre devam eden işlemlerin geri alınma tehlikesiyle karşı karşıya olduğu durumlarda yardımcı olur.
- İşlem günlüğünün önemli ölçüde büyümesine neden olan etkin işlemler.
- Veritabanının kullanılabilirliğini etkileyen uzun süre çalışan veritabanı kurtarma (örneğin, beklenmeyen bir SQL Server yeniden başlatma veya el ile işlem geri alma işleminden sonra).
Uygulamanız tek tek işlemlerde yüksek hacimli tek satırlı değişiklikler kullanıyorsa iş yükünüz ADR için en uygun olmayabilir. Mümkün olduğunda çok satırlı deyimlerde değişiklikleri toplu olarak oluşturmayı ve yüksek hacimli küçük DML işlemlerinden kaçınmayı göz önünde bulundurun.
ADR'yi etkinleştirme
ADR varsayılan olarak kapalıdır ve SQL Server 2019 (15.x) ile başlayarak kullanılabilir.
ADR'yi etkinleştirmek için aşağıdaki Transact-SQL (T-SQL) komutunu kullanın:
ALTER DATABASE [<db_name>] SET ACCELERATED_DATABASE_RECOVERY = ON;
ADR'yi etkinleştirmek veya devre dışı bırakmak için özel bir veritabanı kilidi gereklidir. Bu, tüm etkin oturumlar gidene kadar ALTER DATABASE komutunun engellendiği ve yeni oturumların ALTER DATABASE komutunun arkasında beklediği anlamına gelir. İşlemi tamamlamak ve kilidi kaldırmak önemliyse, veritabanındaki etkin oturumları durdurmak için WITH ROLLBACK [IMMEDIATE | AFTER {number} SECONDS | NO_WAIT] sonlandırma yan tümcesini kullanabilirsiniz. Daha fazla bilgi için bkz. ALTER DATABASE SET seçenekleri.
tempdb içinde ADR etkinleştirildiğinde veya devre dışı bırakıldığında, özel bir veritabanı kilidi gerekmez ve sonlandırma ifadesi belirtilmemelidir. Ancak, değişikliğin etkili olması için Veritabanı Altyapısı'nın yeniden başlatılması gerekir.
ADR'yi devre dışı bırakma
ADR'yi devre dışı bırakmak için aşağıdaki T-SQL komutunu kullanın:
ALTER DATABASE [<db_name>] SET ACCELERATED_DATABASE_RECOVERY = OFF;
GO
ADR devre dışı bırakıldıktan sonra bile, tüm etkin işlemler tamamlanana kadar sistemin hala mantıksal geri döndürmeye ihtiyaç duyduğu PVS'de depolanan sürümler olabilir. içinde tempdbADR devre dışı bırakılırsa, değişikliğin etkili olması için Veritabanı Altyapısı'nın yeniden başlatılması gerekir.
PVS dosya grubunu değiştirme
Varsayılan olarak, kalıcı sürüm deposu (PVS) verileri PRIMARY dosya grubundadır. Gerekirse PVS'yi farklı bir dosya grubuna taşıyabilirsiniz. Örneğin, daha fazla alan veya daha hızlı depolama alanı gerektirebilir.
PVS'nin konumunu farklı bir dosya grubuyla değiştirmek için şu adımları izleyin:
PVS için dosya grubunu oluşturun ve bu dosya grubuna en az bir veri dosyası ekleyin. Örneğin:
ALTER DATABASE [<db_name>] ADD FILEGROUP [VersionStoreFG]; GO ALTER DATABASE [<db_name>] ADD FILE ( NAME = N'VersionStoreFG', FILENAME = N'E:\DATA\VersionStore.ndf', SIZE = 8192 MB, FILEGROWTH = 64 MB ) TO FILEGROUP [VersionStoreFG];ADR'yi aşağıdaki T-SQL komutuyla devre dışı bırakın:
ALTER DATABASE [<db_name>] SET ACCELERATED_DATABASE_RECOVERY = OFF; GOPVS'de depolanan tüm sürümlerin kaldırılmasını bekleyin.
ADR'yi yeni bir PVS konumu kullanarak etkinleştirmek için öncelikle tüm sürüm bilgilerinin önceki PVS konumundan temizlenmiş olduğundan emin olun. temizleme işleminin sys.sp_persistent_version_cleanup saklı yordamıyla gerçekleşmesini zorlayabilirsiniz:
EXEC sys.sp_persistent_version_cleanup [<db_name>];sys.sp_persistent_version_cleanupsaklı yordamı eşzamanlı olduğundan, işlem, tüm sürüm bilgileri geçerli PVS'den temizlenene kadar tamamlanmaz. İşlem tamamlandıktan ve ADR'nin devre dışı bırakıldığını varsayarsak, sys.dm_tran_persistent_version_store_stats sorgulayıppersistent_version_store_size_kbdeğerini inceleyerek sürüm bilgilerinin kaldırıldığını doğrulayabilirsiniz. Örneğin:SELECT DB_NAME(database_id), persistent_version_store_size_kb FROM sys.dm_tran_persistent_version_store_stats WHERE database_id = [MyDatabaseID];persistent_version_store_size_kbdeğeri0olduğunda ADR'yi yeniden etkinleştirebilir ve PVS'yi yeni dosya grubuna yerleştirebilirsiniz.ADR'yi etkinleştirin ve aşağıdaki T-SQL komutuyla yeni PVS konumunu belirtin:
ALTER DATABASE [<db_name>] SET ACCELERATED_DATABASE_RECOVERY = ON (PERSISTENT_VERSION_STORE_FILEGROUP = [VersionStoreFG]);
Note
tempdb'de, dosya gruplarını ekleyemediğiniz için PVS'nin farklı bir tempdb dosya grubuna taşınması desteklenmez.
PVS'nin boyutunu izleme
Veritabanında ADR'yi etkinleştirdikten sonra kalıcı sürüm deposunun (PVS) boyutunu ve PVS temizleme performansını izleyin. Daha fazla bilgi için bkz. Hızlandırılmış veritabanı kurtarmayı izleme ve sorunlarını giderme.
İlgili içerik
- hızlandırılmış veritabanı kurtarma
- hızlandırılmış veritabanı kurtarma izleme ve sorun giderme