-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfigure.sql
73 lines (62 loc) · 2.46 KB
/
configure.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
DBCC useroptions
DECLARE @vieOnly BIT = 1;
DECLARE @updateConfig BIT = 0;
DECLARE @updateCostThresholdForParallelism BIT = 0;
-- This will remove all execution plans.
DECLARE @costThresholdForParallelism INT = 50;
-- If you get an error, run the lines above first
-- Minimum should be between 4 and 8
DECLARE @updateMaxdop BIT = 0;
DECLARE @maxdop INT = 4;
DECLARE @updateBackupChecksumDefault BIT = 0;
DECLARE @backupChecksumDefault BIT = 0;
DECLARE @updateBackupCompressionDefault BIT = 0;
DECLARE @backupCompressionDefault BIT = 0;
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
IF ISNULL(@vieOnly, 0) = 1
BEGIN
EXEC sp_configure 'cost threshold for parallelism';
EXEC sp_configure 'max degree of parallelism';
EXEC sp_configure 'backup checksum default';
EXEC sp_configure 'backup compression default';
EXEC sp_configure 'max server memory (MB)'
EXEC sp_configure 'optimize for ad hoc workloads'
SELECT FORMAT(physical_memory_kb/1024, N'N0') + 'mb' AS MachinePhysicalMemory FROM sys.dm_os_sys_info
SELECT FORMAT(cntr_value/1024, N'N0') + 'mb' AS 'MaxMemory' FROM sys.dm_os_performance_counters WHERE counter_name LIKE '%Target Server%';
SELECT FORMAT(cntr_value/1024, N'N0') + 'mb' AS 'CurrentUsedMemory' FROM sys.dm_os_performance_counters WHERE counter_name LIKE '%Total Server%';
SELECT *
FROM sys.database_scoped_configurations
WHERE name IN
(
'IDENTITY_CACHE',
'MAXDOP',
'PARAMETER_SNIFFING',
'TSQL_SCALAR_UDF_INLINING',
'LAST_QUERY_PLAN_STATS',
'ROW_MODE_MEMORY_GRANT_FEEDBACK',
'BATCH_MODE_ADAPTIVE_JOINS'
);
-- ALTER DATABASE SCOPED CONFIGURATION SET <parameter> = ON;
END
IF ISNULL(@updateConfig, 0) = 1
BEGIN
IF ISNULL(@updateCostThresholdForParallelism, 0) = 1 BEGIN
EXEC sp_configure 'cost threshold for parallelism', @costThresholdForParallelism;
SELECT 'Updatedcost threshold for parallelism.'
END
IF ISNULL(@updateMaxdop, 0) = 1 BEGIN
EXEC sp_configure 'max degree of parallelism', @maxdop;
SELECT 'Updated max degree of parallelism.'
END
IF ISNULL(@updateBackupChecksumDefault, 0) = 1 BEGIN
EXEC sp_configure 'backup checksum default', @backupChecksumDefault;
SELECT 'Updated backup checksum default.'
END
IF ISNULL(@updateBackupCompressionDefault, 0) = 1 BEGIN
EXEC sp_configure 'backup compression default', @backupCompressionDefault;
SELECT 'Updated backup compression default.'
END
END
EXEC sp_configure 'show advanced options', 0;
RECONFIGURE