|
|
|
SSCrazy Eights
        
Group: General Forum Members
Last Login: Today @ 7:38 AM
Points: 8,184,
Visits: 7,963
|
|
|
|
|
|
SSC Eights!
      
Group: General Forum Members
Last Login: Tuesday, October 20, 2009 10:32 PM
Points: 856,
Visits: 851
|
|
|
|
|
|
Ten Centuries
      
Group: General Forum Members
Last Login: Monday, March 15, 2010 9:47 AM
Points: 1,269,
Visits: 1,962
|
|
Nice article.
I keep 99 (max) errorlogs. It depends on the size of each errorlog/entries in the errorlog. When the size is over 1 MB; it takes time to open it (in my case). This is one of the factors I consider how often to recycle the errorlog.
I zip the old errorlogs by the end of the year and move it to a central depository. This can be automated, too.
Keeping 25000 errorlog may be not realistic; it will take a lot of space on the current live system.
|
|
|
|
|
Right there with Babe
      
Group: General Forum Members
Last Login: Tuesday, March 16, 2010 7:30 PM
Points: 745,
Visits: 1,212
|
|
Ken,
Great article / checklist!
Thanks,
Tom Garth Vertical Solutions
"There are three kinds of men. The one that learns by reading. The few who learn by observation. The rest of them have to pee on the electric fence for themselves." -- Will Rogers
|
|
|
|
|
SSC Journeyman
      
Group: General Forum Members
Last Login: Today @ 6:23 AM
Points: 75,
Visits: 313
|
|
Ken, Nice article. I will be adding some of the items you mentioned. Some of the things we do may be of interest.
6. Determine Drive Structure and move system databases if necessary. We also resize all the system databases and set them to grow by a reasonable amount of MB and set a max after the growth factor is applied 2 to 4 times. I would stay away from 10MB as a growth number, as I have seen this still be interpreted as 10%.
15. Make sure each maintenance job has an output file in a standard directory. We set up a jobs directory on each server with a cmd, reports, and sql subdirectory. All jobs are run from the cmd directory and the output of each job is piped to a member in the reports directory with the same name as the cmd member name. One of the jobs in the cmd directory is sqlcmd that accepts a database and a sql script as input. When you set up a new server you can copy this directory structure to the server and copy the server jobs with an SSIS package and you have most of the jobs you need on the new server.
We also have a daily report for each server that contains the space available on each disk drive. The size and space available for each database file. The log space used and recovery mode of each database. An edited report containing backups, update statistics, and reindex along with errors found in the last two logs, backups, and dbcccs. We keep a copy of these reports for each server for 30 days.
|
|
|
|
|
SSC-Addicted
      
Group: General Forum Members
Last Login: Monday, March 15, 2010 4:41 PM
Points: 450,
Visits: 218
|
|
Wow, no offense to any other authors, but this is probably one of the most valuable articles I have ever seen on SQL Server Central. What a great compilation of immediately useful resources in one place. Thank you for all the work!
|
|
|
|
|
SSC Eights!
      
Group: General Forum Members
Last Login: Monday, March 01, 2010 8:56 AM
Points: 856,
Visits: 1,775
|
|
Excellent article, Ken. Your list should be part of every administrator's personal standard practices list, perhaps altered a bit for individual taste and installation specifics.
I also do full audits, but then every night I parse my error logs through a Perl script that ignores successful logins and gives me a text file of just SQL events and failed logins. I can always go back to the server log and check it for successful logins: we're almost exclusively 2000, so we don't do login audit triggers at this time.
I would add one thing for pre-2005 servers: create yourself an additional admin account in case something happens to your network login or you lose network connectivity and have to go local console. I like to use a strong password, sometimes completely random, for SA just to ensure it won't be used, so this serves as my back door when an admin connection can't be used.
And I'd add backing up the master, model, and msdb databases regularly. Great help for restoring systems.
----- Regards, Wayne West
The Cheap DBA and the Arizona SQL Server User Group
|
|
|
|
|
SSC Eights!
      
Group: General Forum Members
Last Login: Monday, March 01, 2010 8:56 AM
Points: 856,
Visits: 1,775
|
|
Forgot something that I do on 2005. I have all my 2005 instances set to use checksums for torn page detection, so I run the following code in addition to my DBCC step:
select * from msdb..suspect_pages go The output goes into a text file, suspectpagesresult.txt. If I get any rows in my result, I know I have a problem (haven't gotten any yet).
I also filter my DBCC runs
d: cd\dbccs type dbccresult.txt | find "errors" >server1_dbcc.txt type suspectpagesresult.txt >>server1_dbcc.txt So my result file looks someting like this:
.... DBCC Results: CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database CHECKDB found 0 allocation errors and 0 consistency errors in database 1> 2> 1> 2> 3> database_id file_id page_id event_type error_count last_update_date ----------- ----------- -------------------- ----------- ----------- -----------------------
(0 rows affected) 1> Makes things a lot easier to see if there are problems rather than sifting through pages of DBCC results. If I see a non-zero result, I know there is a problem and I have the full log on my server to investigate further.
----- Regards, Wayne West
The Cheap DBA and the Arizona SQL Server User Group
|
|
|
|