web-dev-qa-db-fra.com

Les fichiers journaux SQL Server 2008 ont des tailles minimales, ce qui donne et comment les rendre plus petits?

OK, pour commencer, je suis foutu lorsque j'ai créé les bases de données, en utilisant un script Créer à peu près à peu près: (chevrefeaux artificiels et noms/chemins à des fins d'emballage)

CREATE DATABASE [EXAMPLE] ON  PRIMARY 
( NAME = N'EXAMPLE_Data', FILENAME = N'J:\SQLServer2008\MSSQL.INSTANCE\EXAMPLE.mdf', 
    SIZE = 446046KB , MAXSIZE = UNLIMITED, FILEGROWTH = 10%)
 LOG ON 
( NAME = N'EXAMPLE_Log', FILENAME = N'J:\SQLServer2008\MSSQL.INSTANCE\EXAMPLE.ldf', 
    SIZE = 664505KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
GO

parce que je l'écarée dans une base de données de développement existante et que je voulais juste avoir quelque chose. J'ai foiré quand je n'ai pas changé mes tailles à quelque chose de raisonnable (comme 4096KB) Et maintenant, je ne peux donc pas réduire le journal inférieur à environ 600 Mo.

Je sais où je me suis trompé, mais comment puis-je le réparer facilement?

7
jcolebrand
  1. Détacher la base de données.

    sp_detach_db @dbname = 'EXAMPLE'

  2. Supprimer physiquement le fichier journal du disque (ceci est crucial , mais peut être risqué - voir MRNNNY Commentaire ci-dessous).

  3. Joignez la base de données en utilisant le sp_attach_single_file_db procédure stockée.

    sp_attach_single_file_db @dbname = 'EXAMPLE', @physname = N'J:\SQLServer2008\MSSQL.INSTANCE\EXAMPLE.mdf'

7
Marek Grzenkowicz

J'espère que vous avez assez de privilèges pour accéder aux SSMS. Si vous faites, suivez ces étapes

  1. Open SSMS
  2. Connectez-vous à vous SQL Server Instacne
  3. Ouvrez l'explorateur d'objet, cliquez avec le bouton droit de la souris sur la base de données (que vous souhaitez réduire la taille du fichier journal) et sélectionnez "Propriétés"
  4. De "Propriétés" Fenêtre - Sélectionnez "Fichiers"
  5. Vous verrez la grille de fichiers de base de données en bas à droite
  6. Cliquez sur Ajouter pour ajouter un nouveau fichier journal, donner
    • nom logique
    • Type de fichier = journal
    • Taille initiale = 1 Mo (ou votre préférence)
    • Cick autogrowth et définir des préférences en conséquence
    • Nom de fichier
  7. Maintenant, cliquez sur la ligne de journalisation existante et sélectionnez "Supprimer"
  8. C'est ça! Maintenant, vous avez un nouveau fichier journal avec la taille de la minute souhaitée.

alt text

5
CoderHawk