2010-03-09 10 views
4

J'essaie de réduire mon fichier journal à l'aide DBCC SHRINKFILE(db_2.ldf), qui est le nom de fichier journalDBCC SHRINKFILE donne l'erreur

Il me donne l'erreur à chaque fois:

8985, niveau 16, état 1, Ligne 1 Impossible de trouver le fichier 'FIELD' pour la base de données db dans sys.database_files. Le fichier n'existe pas ou a été supprimé.

Pouvez-vous suggérer ce que je peux faire pour le réparer.

Répondre

12

Le nom de fichier doit être le nom de fichier logique et non le nom de fichier physique. Regardez dans les propriétés de la base de données, dans l'onglet Fichiers pour le nom logique du fichier que vous essayez de réduire, et utilisez ce nom.

1

L'exécutez-vous dans le contexte de la base de données contenant le journal que vous essayez de réduire? Assurez-vous d'avoir la bonne instruction USE avant d'exécuter les commandes DBCC

+0

Merci et oui j'utilisais la base de données que je rétrécissais. – user70636

0

La commande ci-dessous a fonctionné. Cependant je ne le vois pas en réduisant la taille. Je vois la même taille après et avant de l'exécuter. Pouvez-vous s'il vous plaît laissez-moi savoir ce que j'ai pu manquer.

fileid groupid size maxsize  growth status perf name filename 
2   0 1048 268435456  10 1048642 0   PrimaryLogFileName 

Merci

+0

La commande ci-dessous? – influent

1

eu le même problème ici, la solution a été de renommer le fichier logique pour correspondre au nom de la base de données. est un exemple ci-dessous pour interroger les noms de fichiers logiques puis effectuez un changement de nom des fichiers:

-- retrieve the logical files for the current db 
SELECT [name] AS logical_file FROM sys.database_files df 

-- rename the logical file (to match the database name) 
ALTER DATABASE YourDB 
MODIFY FILE (NAME = 'LogicalFile1', NEWNAME='NewLogicalFile1') 
GO 

ALTER DATABASE YourDB 
MODIFY FILE (NAME = 'LogicalFile2', NEWNAME='NewLogicalFile2') 
GO 

La raison de deux alters est qu'il ya généralement deux fichiers associés à chaque base de données, le fichier de données et le journal fichier.

0

De SQL Management Studio cliquez droit sur le nom de la base de données, Tâches, Réduction de la taille, la base de données Ctrl + Maj + N (ou Action Script à une nouvelle fenêtre de requête)

génère:

UTILISATION [DataBaseName ] GO DBCC SHRINKDATABASE (N'DataBaseName ') GO