Presentation is loading. Please wait.

Presentation is loading. Please wait.

SQL Server 2005 Implementation and Maintenance Chapter 10: Maintaining and Automating SQL Server.

Similar presentations


Presentation on theme: "SQL Server 2005 Implementation and Maintenance Chapter 10: Maintaining and Automating SQL Server."— Presentation transcript:

1 SQL Server 2005 Implementation and Maintenance Chapter 10: Maintaining and Automating SQL Server

2 Maintaining Indexes Page splits cause database fragmentation Query DM_DB_INDEX_PHYSICAL_STATS to find fragmentation –USE AdventureWorks; SELECT INDEX_ID, AVG_FRAGMENTATION_IN_PERCENT FROM sys.dm_db_index_physical_stats (db_id(),Object_ID(N'Sales.SalesOrderDet ail'), NULL, NULL, 'DETAILED') find the fragmentation on the Sales.SalesOrderDetail table in the Adventure- Works database © Wiley Inc. 2006. All Rights Reserved.

3 Reorganizing Indexes If database fragmentation is less than 10%, no action is required 20 – 30% requires you to reorganize indexes Use ALTER INDEX REORGANIZE –USE AdventureWorks ALTER INDEX PK_ProductPhoto_ProductPhotoID ON Production.ProductPhoto REORGANIZE reorganize the PK_Product_Product-PhotoID index on the Production.ProductPhoto table © Wiley Inc. 2006. All Rights Reserved.

4 Rebuild Indexes More than 30% fragmentation requires you to rebuild indexes There are two methods –CREATE INDEX WITH DROP EXISTING –ALTER INDEX REBUILD © Wiley Inc. 2006. All Rights Reserved.

5 Maintaining Statistics SQL Server formulates an execution plan to run queries –This is a map of available tables and indexes Statistics are used to create an execution plan Statistics are updated automatically by default If you have changed this for an index run UPDATE STATISTICS to bring it up to date © Wiley Inc. 2006. All Rights Reserved.

6 Using DBCC CHECKDB Checks allocation, logical, and structural integrity of objects It has several options –NOINDEX intensive checks of nonclustered indexes should not be performed –REPAIR_REBUILD –REPAIR_ALLOW_DATA_LOSS –ALL_ERRORMSGS If this is not used, then only the first 200 errors display. –NO_INFOMSGS This suppresses all informational messages. –TABLOCK TABLOCK causes DBCC CHECKDB to obtain locks instead of using a snapshot, which makes it run faster. –ESTIMATE_ONLY Displays the estimated amount of tempdb space needed to run DBCC CHECKDB with all the other specified options. The actual database check is not performed. –PHYSICAL_ONLY Using this option causes DBCC CHECKDB to run much faster than performing a full check, which makes it well suited for frequent use on production systems. –DATA_PURITY This causes DBCC CHECKDB to check the database for column values that are not valid or are out of range. © Wiley Inc. 2006. All Rights Reserved.

7 Shrinking Data Files When users add data, the data files may grow in size When data is removed, the files are not automatically reduced in size Files can be shrunk manually or on a scheduled basis © Wiley Inc. 2006. All Rights Reserved.

8 Automation Basics SQL Agent performs automation tasks The Agent has three subcomponents –Jobs –Alerts –Operators Make sure the Agent is set to start automatically Have it log on with a domain account © Wiley Inc. 2006. All Rights Reserved.

9 Database Mail Database Mail allows SQL Server to send SMTP email It uses Service Broker so it runs asynchronously For the SQL Agent to send mail the MSDB database must be a mailhost © Wiley Inc. 2006. All Rights Reserved.

10 Operators An operator is an object that contains contact information for a DBA –Name –Email address –Pager address –Net send address –Hours available © Wiley Inc. 2006. All Rights Reserved.

11 Jobs A job is a series of tasks that can be scheduled They have three main parts –Steps The action(s) to perform –Schedules When to perform the action(s) –Notifications Whom to notify on completion © Wiley Inc. 2006. All Rights Reserved.

12 Standard Alerts Alerts are fired when an event occurs They can be configured to notify operators and/or run a job Standard alerts are based on built-in error messages or severity levels © Wiley Inc. 2006. All Rights Reserved.

13 Custom Alerts The built-in error messages do not cover every circumstance You can create custom error messages to based alerts on –They must start at 50,001 –They are fired using the RAISERROR() command –They accept parameters %ls and %s for strings %ld and %d for numbers © Wiley Inc. 2006. All Rights Reserved.

14 Performance Alerts These are based on Windows performance counters –I.e. Processor: % Processor Time When the counter reaches the specified threshold, the alert fires © Wiley Inc. 2006. All Rights Reserved.

15 WMI Alerts These are based on Windows Management Instrumentation This allows you to fire alerts under special circumstances: –When a DDL statement is run ALTER LOGIN CREATE TABLE © Wiley Inc. 2006. All Rights Reserved.

16 Maintenance Plans Maintenance needs to be run regularly You can create jobs manually to do this, but that is tedious It is best to use the Maintenance Plan Wizard –This will create a Maintenance Plan to automate necessary maintenance © Wiley Inc. 2006. All Rights Reserved.

17 Copying Databases The easiest way to copy a database is the Copy Database Wizard There are several reasons to copy a database –Moving databases to an upgraded server –Create a standby server for emergencies –Copy a database from development to production © Wiley Inc. 2006. All Rights Reserved.


Download ppt "SQL Server 2005 Implementation and Maintenance Chapter 10: Maintaining and Automating SQL Server."

Similar presentations


Ads by Google