SQL Server 2008 TipsByThe Technocrats
Configure a Fail-Safe Operator for Notifications
When things go wrong with notification, operators do not get notified and problems might not be corrected in a timely manner. Toprevent this, you might want to designate a fail-safe operator. The fail-safe operator is notified in the following situations:
SQL Server Agent cannot access system tables in the msdb database, which is where operator definitions and notificationlists are stored.All pager notifications to designated operators have failed, or the designated operators are off duty (as defined in thepager schedule).To configure a fail-safe operator:
1.
Right-click the SQL Server Agent entry in SQL Server Management Studio, and then select Properties.
2.
In the SQL Server Agent Properties dialog box, select the Alert System page.
3.
Select Enable Fail-Safe Operator to define a fail-safe operator.
4.
Use the Operator drop-down list to choose an operator to designate as the fail-safe operator. You can reassign the fail-safe dutyby selecting a different operator, or you can disable the feature by clearing Enable Fail-Safe Operator.
5.
Use the Notify Using check boxes to determine how the fail-safe operator is notified.
6.
Click OK.Using the fail-safe operator on pager notification failure might seem strange, but it is a good way to ensure that alerts are handledefficiently. E-mail and net send messages almost always reach their destination
—
but the people involved are not always watchingtheir mail or sitting at their computer to receive net send messages, so the fail-safe operator is a way to guarantee notification.
Configure Parallel Processing in SQL Server 2008
A lot of calculations are required to determine whether parallel processing should be used. Generally, SQL Server processes queriesin parallel in the following cases:
When the number of CPUs is greater than the number of active connections.When the estimated cost for the serial execution of a query is higher than the query plan threshold (The estimated costrefers to the elapsed time in seconds required to execute the query serially.)Certain types of statements cannot be processed in parallel unless they contain clauses, however. For example, UPDATE, INSERT,and DELETE are not normally processed in parallel even if the related query meets the criteria. But if the UPDATE or DELETEstatements contain a WHERE clause, or an INSERT statement contains a SELECT clause, WHERE and SELECT can be executed inparallel. Changes are applied serially to the database in these cases.To configure parallel processing, simply do the following:
1.
In the Server Properties dialog box, go to the Advanced page.
2.
By default, the Max Degree Of Parallelism setting has a value of 0, which means that the maximum number of processors usedfor parallel processing is controlled automatically. Essentially, SQL Server uses the actual number of available processors,depending on the workload. To limit the number of processors used for parallel processing to a set amount (up to the maximumsupported by SQL Server), change the Max Degree Of Parallelism setting to a value greater than 1. A value of 1 tells SQL Servernot to use parallel processing.
3.
Large, complex queries usually can benefit from parallel execution. However, SQL Server performs parallel processing only whenthe estimated number of seconds required to run a serial plan for the same query is higher than the value set in the cost thresholdfor parallelism. Set the cost estimate threshold using the Cost Threshold For Parallelism box on the Advanced page of the ServerProperties dialog box. You can use any value from 0 through 32,767. On a single CPU, the cost threshold is ignored.
4.
Click OK. These changes are applied immediately. You do not need to restart the server.You can use the stored procedure sp_configure to configure parallel processing. The Transact-SQL commands are:
exec sp_configure "max degree of parallelism", <integer value>
exec sp_configure "cost threshold for parallelism", <integer value>