Hvordan autosjekk SQL Server Konfigurasjoner og fiks avvik

Du kan gjennomføre en rask revisjon av SQL Serversin konfigurasjon på alle servere i selskapet ditt. Skriptet vil være nyttig for å automatisk fikse konfigurasjoner som ikke er kompatible

Lag tre tabeller:

SQL Server 2014Vi skal lage 3 bord. I den første tabellen vil vi spare SQL Server Konfigurasjonsnavn og anbefalt verdi. Denne tabellen vil fungere som kildetabell for sammenligning. Hvis du bruker SQL 2014, ikke gå glipp av å ta vare på konfigurasjonselementet nemlig "backup checksum default". Som standard er verdien satt til null, men den anbefalte verdien er 1, og du kan enkelt sette den ved å bruke EXEC sp_configure-kommandoen. Hvis dette er satt til 1, når som helst SQL Server leser sider for sikkerhetskopien, vil den også verifisere eventuelle eksisterende sidekontrollsummer.

I den andre tabellen vil vi lagre servernavn fra vårt SQL-miljø. Den siste tabellen vil bli brukt som loggtabellen og denne vil lagre konfigurasjonsdata fra eksterne servere og sammenligne med kildetabellen vår, dvs. den første tabellen.

Automatisk fiks

SQL Configuration ManagerGjennom en markør vil skriptet lese hvert servernavn fra den andre tabellen og opprette en koblet server for hver server. Ved hjelp av den koblede serveren leses konfigurasjonsdataene fra hver server og lastes inn i loggtabellen, dvs. den tredje tabellen. Konfigurasjonen og dens verdi fra hver rad i loggtabellen sammenlignes med kildetabellen. Hvis verdien ikke er kompatibel, fikses konfigurasjonen automatisk med anbefalt verdi gjennom sqlcmd. I dette skriptet er autofixet kun satt for maksimalt serverminne. Den samme regelen kan brukes for andre konfigurasjoner.

Men i tilfelle ødelagt SQL Server db du vil ikke kunne revidere automatisk SQL Server konfigurasjoner. I et slikt tilfelle kan du bruke SQL server gjenopprettingsverktøy som f.eks Datanumen SQL recovery verktøyet.

CREATE TABLE TBL0 ( cname VARCHAR(200) ,cvalue BIGINT ) INSERT INTO TBL0 SELECT NAME ,cast(value AS BIGINT) FRA sys.configurations CREATE TABLE TBL1 (cservername VARCHAR(200)) --Sett inn i TBL1-verdier (SR) LAG TABELL TBL1 ( csvrname VARCHAR(2) ,cname VARCHAR(200) ,cvalue BIGINT ,cminvalue BIGINT ,cmaxvalue BIGINT ,cvalinuse BIGINT ,cstatus VARCHAR(200) ) DECLARE @cmd NVARCHARE DECLARE @cmd NVARCHARE(200CLARE) @ vuser VARCHAR(2000) DECLARE @vpwd VARCHAR(200) SET @vsvrname = 'SRVR100' SET @vuser = 'linkedserveruser' SET @vpwd = 'linkedserveruserpassword' SET @cmd = 'EXEC sp_addlinkedserver @server='''' + '''' SKRIV UT @cmd EXEC (@cmd) SET @cmd = 'EXEC sp_addlinkedsrvlogin ''' + @vsvrname + ''', ''false'', NULL, ''' + @vuser + ''', ' '' + @vpwd + '''' PRINT @cmd EXEC (@cmd) INSERT INTO TBL100 ( csvrname ,cname ,cvalue ,cminvalue ,cmaxvalue ,cvalinuse ) SELECT @@servername AS 'Servername' ,NAME ,cast(value AS BIGINT ) ,cast(minimum AS BIGINT) ,cast(maksimum AS BIGINT) ,cast(value_in_use AS BIGINT) FRA [CPH-MSSQL1-T].master.sys.configurations VELG * FRA TBL2 DECLARE @cur07svrname VARCHAR(2) DECLARE @cur1name VARCHAR(200) DECLARE @cur1value BIGINT DECLARE CUR500 CURSOR FOR SELECT csvrname ,cname ,cvalue FRA TBL1 OPEN CUR1 FETCH NEXT FROM CUR2 INTO @cur1svrname ,@cur1name ,@cur1value MENS BEGINT DECLARE DECLARE DECLEAR 1s ER @svalue BIGINT SET @svalue = ( VELG cvalue FRA TBL1 WHERE cname = @cur0name ) IF @cur500value <> @svalue BEGIN DECLARE @cmd0 VARCHAR(1) SET @cmd1 = 'SQLCMD -S ' + @cur2svrname + ' -E - Q "EXEC sp_configure ''maks serverminne (MB)'',' + cast(@svalue AS VARCHAR(1000)) + '"' -- Skriv ut @cmd2 EXEC xp_cmdshell @cmd1 OPPDATERING TBL100 SET cstatus = 'VAR IKKE KOMPLIGENT. NÅ FIKSET' HVOR csvrname = @cur2svrname OG cname = @cur2name SLUTT HETT NESTE FRA CUR2 INTO @cur1svrname ,@cur1name ,@cur1value SLUTT LUKK CUR1 AVALOKERE CUR1

Forfatterintroduksjon:

Neil Varley er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert reparere Outlook pst-e-postkorrupsjon og excel-programvareprodukter for gjenoppretting. For mer informasjon besøk www.datanumen. Med

Ett svar på "Hvordan autosjekk SQL Server Konfigurasjoner og fiks avvik"

  1. Hei alle sammen, det er mitt første besøk på denne nettsiden, og avsnittet er virkelig fruktbart til fordel for meg, fortsett postmed denne typen innhold.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket *