|
Posted by William on 09/08/06 11:09
I've been tasked with taking over the support for a client's SQL Server
database. I'm not a DBA by profession, I'm a software developer who
uses SQL Server as a database designer.
The clients have reported that the server is running out of disk space
and examination shows that the log files for several of the databases
are at 5Gb or more.
After reading around the subject I suggested the following sequence of
operations:
-- Select the name of the database you want to shrink
USE MyDB
-- Dump unwanted transactions
dump tran MyDB with truncate_only
-- Get the name of the logfile
SELECT * from sysfiles
-- Having examined the rows returned by this use the log file....
-- Shrink the file to required size (in MB)
DBCC SHRINKFILE('MyDB_log', 10)
Is this a reasonable approach? Please bear in mind that I'm pretty new
to this, and I have many other tasks to do besides manage the server.
A previous DBA has set up good maintenance plans etc. so everything is
being properly backed up (well, I think it is)
If this IS a good approach, would it be reasonable to do this on, say,
a monthly basis as a scheduled job? Obviously the step
SELECT * from sysfiles
which gives us the physical name of the log file would be removed and
the job would operate explicitly on each log file for each database in
turn.
Many thanks for reading.
William Balmer.
Navigation:
[Reply to this message]
|