sp_add_log_file_recover_suspect_db (Transact-SQL)

Gilt für: SQL Server

Fügt einer Datenbank eine Protokolldatei hinzu, wenn die Wiederherstellung aufgrund eines unzureichenden Protokollspeichers nicht abgeschlossen werden kann (Fehler 9002). Nachdem die Datei hinzugefügt wurde, sp_add_log_file_recover_suspect_db wird die Einstellung für verdächtigen Benutzer deaktiviert und die Wiederherstellung der Datenbank abgeschlossen. Die Parameter sind identisch mit ALTER DATABASE database_name ADD LOG FILE.

Transact-SQL-Syntaxkonventionen

Syntax

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'
[ ; ]

Argumente

[ @dbName = ] 'Datenbank'

Der Name der Datenbank. @dbName ist "sysname" ohne Standard.

[ @name = ] N'logical_file_name'

Der Name, der im SQL Server verwendet wird, um auf die Datei zu verweisen. Der Name muss auf dem Server eindeutig sein. @name ist nvarchar(260) ohne Standard.

[ @filename = ] N'os_file_name'

Der Pfad und der Dateiname, der vom Betriebssystem für die Datei verwendet wird. Die Datei muss sich in einer Instanz des Datenbank-Engine befinden. @filename ist nvarchar(260), ohne Standard.

[ @size = ] N'size'

Die Anfangsgröße der Datei. @size ist "nvarchar(20)", mit einem Standardwert von NULL. Geben Sie eine ganze Zahl an; fügen Sie kein Dezimalzeichen ein. Die MB Suffixe KB können verwendet werden, um Megabyte oder Kilobyte anzugeben. Der Standardwert ist MB. Der Mindestwert ist 512 KB. Wenn @size nicht angegeben ist, ist der Standardwert 1 MB.

[ @maxsize = ] N'max_size'

Die maximale Größe, auf die die Datei vergrößert werden kann. @maxsize ist nvarchar(20), wobei die Standardeinstellung istNULL. Geben Sie eine ganze Zahl an; fügen Sie kein Dezimalzeichen ein. Die MB Suffixe KB können verwendet werden, um Megabyte oder Kilobyte anzugeben. Der Standardwert ist MB.

Wenn @maxsize nicht angegeben ist, wächst die Datei, bis der Datenträger voll ist. Das Anwendungsprotokoll von Windows warnt den Administrator, bevor der Speicherplatz auf einem Datenträger erschöpft ist.

[ @filegrowth = ] N'growth_increment'

Der Speicherplatz, der der Datei jedes Mal hinzugefügt wird, wenn ein neuer Speicherplatz erforderlich ist. @filegrowth ist nvarchar(20) mit einem Standardwert von NULL. Ein Wert von 0 "Kein Wachstum". Geben Sie eine ganze Zahl an; fügen Sie kein Dezimalzeichen ein. Der Wert kann in MB, oder KBProzent (%) angegeben werden. Wenn % angegeben wird, wird der Wachstumsschritt der angegebene Prozentsatz der Größe der Datei zum Zeitpunkt des Inkrements angegeben. Wenn eine Zahl ohne ein MB, KBoder % Suffix angegeben wird, ist MBdie Standardeinstellung .

Wenn @filegrowth ist NULL, lautet 10%der Standardwert , und der Mindestwert ist 64 KB. Die angegebene Größe wird auf den nächsten durch 64 KB teilbaren Wert gerundet.

Rückgabecodewerte

0 (erfolgreich) oder 1 Fehler.

Resultset

Keine.

Berechtigungen

Berechtigungen werden standardmäßig für Mitglieder der festen Serverrolle "sysadmin " ausgeführt. Diese Berechtigungen können nicht übertragen werden.

Beispiele

Im folgenden Beispiel wurde die db1-Datenbank bei der Wiederherstellung aufgrund unzureichenden Protokollspeicherplatzes (Fehler 9002) als fehlerverdächtig gekennzeichnet.

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';