Bagikan melalui


sp_add_log_file_recover_suspect_db (T-SQL)

Berlaku untuk:SQL Server

Menambahkan file log ke database saat pemulihan tidak dapat diselesaikan pada database karena ruang log yang tidak mencukup (kesalahan 9002). Setelah file ditambahkan, sp_add_log_file_recover_suspect_db matikan pengaturan tersangka dan selesaikan pemulihan database. Parameternya sama dengan untuk ALTER DATABASE database_name ADD LOG FILE.

Konvensi sintaks transact-SQL

Sintaks

sp_add_log_file_recover_suspect_db [ @dbName = ] 'database'
    , [ @name = ] N'logical_file_name'
    , [ @filename = ] N'os_file_name'
    , [ @size = ] N'size'
    , [ @maxsize = ] N'max_size'
    , [ @filegrowth = ] N'growth_increment'
[ ; ]

Argumen

[ @dbName = ] 'database'

Nama database. @dbName adalah sysname, tanpa default.

[ @name = ] N'logical_file_name'

Nama yang digunakan di SQL Server untuk mereferensikan file. Nama harus unik di server. @name adalah nvarchar(260), tanpa default.

[ @filename = ] N'os_file_name'

Jalur dan nama file yang digunakan oleh sistem operasi untuk file. File harus berada di instans Mesin Database. @filename adalah nvarchar(260), tanpa default.

[ @size = ] N'size'

Ukuran awal file. @size adalah nvarchar(20), dengan default NULL. Tentukan bilangan bujur; jangan sertakan desimal. Akhiran MB dan KB dapat digunakan untuk menentukan megabyte atau kilobyte. Default adalah MB. Nilai minimumnya adalah 512 KB. Jika @size tidak ditentukan, defaultnya adalah 1 MB.

[ @maxsize = ] N'max_size'

Ukuran maksimum tempat file dapat tumbuh. @maxsize adalah nvarchar(20), dengan default NULL. Tentukan bilangan bujur; jangan sertakan desimal. Akhiran MB dan KB dapat digunakan untuk menentukan megabyte atau kilobyte. Default adalah MB.

Jika @maxsize tidak ditentukan, file akan bertambah hingga disk penuh. Log aplikasi Microsoft Windows memperingatkan administrator ketika disk akan menjadi penuh.

[ @filegrowth = ] N'growth_increment'

Jumlah ruang yang ditambahkan ke file setiap kali ruang baru diperlukan. @filegrowth adalah nvarchar(20), dengan default NULL. Nilai 0 menunjukkan tidak ada pertumbuhan. Tentukan bilangan bujur; jangan sertakan desimal. Nilai dapat ditentukan dalam MB, , KBatau persen (%). Ketika % ditentukan, kenaikan pertumbuhan adalah persentase yang ditentukan dari ukuran file pada saat kenaikan terjadi. Jika angka ditentukan tanpa akhiran MB, , KBatau % , defaultnya adalah MB.

Jika @filegrowth NULL, nilai defaultnya adalah 10%, dan nilai minimumnya adalah 64 KB. Ukuran yang ditentukan dibulatkan ke 64 KB terdekat.

Mengembalikan nilai kode

0 (berhasil) atau 1 (kegagalan).

Tataan hasil

Tidak ada.

Izin

Jalankan izin default untuk anggota peran server tetap sysadmin . Izin ini tidak dapat ditransfer.

Contoh

Dalam contoh berikut, database db1 ditandai sebagai tersangka selama pemulihan karena ruang log yang tidak mencukup (kesalahan 9002).

USE master;
GO

EXEC sp_add_log_file_recover_suspect_db db1,
    logfile2,
    'C:\Program Files\Microsoft SQL
    Server\MSSQL13.MSSQLSERVER\MSSQL\Data\db1_logfile2.ldf',
    '1 MB';