Bilgisayarımın yerel SQL Server Developer Edition 12.0.2000.8 sürümünde geliştirme amacıyla bir veritabanı kurmaya çalışıyorum. Ağ üzerinden bana gönderilen tam bir veritabanı yedekleme ve ayrı işlem-log-sadece yedekleme dosyaları var.
Tam yedeklemeden geri yüklemeye çalışırken (~ 1 saat belki, veritabanı ~ 270 GB boyutunda), bir hata alıyorum:
System.Data.SqlClient.SqlError: 'veritabanı adı' veritabanı için günlük işlenirken bir hata oluştu. Mümkünse yedekten geri yükleyin. Bir yedekleme yoksa, günlüğü yeniden oluşturmak gerekebilir. (Microsoft.SqlServer.SmoExtended)
Bundan sonra, db 'Geri yükleniyor ..' durumundadır.
Gibi bir şey çalıştırmak istedim ( bu sorudan aldım )
ALTER DATABASE recovery_test_2 SET EMERGENCY;
ALTER DATABASE recovery_test_2 SET SINGLE_USER;
DBCC CHECKDB (recovery_test_2, REPAIR_ALLOW_DATA_LOSS) WITH NO_INFOMSGS, ALL_ERRORMSGS;
buna karşı, ama doğal olarak veritabanı 'Geri yükleme .. "durumunda olduğu gibi yapamıyorum.On geri yükleme işlemi yeniden başlatıldığında aynı hata iletisine yol açar, bırakarak ve yeniden geri yükleme de yardımcı olmadı.
Db'yi nasıl çalışır hale getiririm? İşlem tutarlılığı benim için önemli değil.
Otomatik oluşturulan SSMS geri yükleme komut dosyası:
USE [master]
RESTORE DATABASE [database_name] FROM DISK = N'D:\database_name.bak' WITH FILE = 1,
MOVE N'database_name' TO N'D:\MSSQL\MSSQL12.MSSQLSERVER\MSSQL\DATA\database_name.mdf',
MOVE N'database_name_index' TO N'D:\MSSQL\MSSQL12.MSSQLSERVER\MSSQL\DATA\database_name_index.ndf',
MOVE N'database_name_log' TO N'D:\MSSQL\MSSQL12.MSSQLSERVER\MSSQL\DATA\database_name_log.ldf',
NOUNLOAD,
STATS = 5
GO
@Craig Efrein tarafından önerilen sorgu sonucu
Veritabanı kapatıldığında açık işlemler / kullanıcılar olduğu, veritabanında denetim noktası oluşmadığı veya veritabanı salt okunur olduğu için günlük yeniden oluşturulamaz. Bu hata, işlem günlüğü dosyası bir donanım veya ortam hatası nedeniyle el ile silinmiş veya kaybolmuşsa oluşabilir.