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 KB
Prozent (%
) 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
, KB
oder %
Suffix angegeben wird, ist MB
die 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';