Web design and hosting, database, cloud and social media solutions that deliver business results
  • Soluzioni aziendali
    • automazione dei processi robotici
    • Software
    • Servizi database
      • Aggiornamento del server e servizi DBA
      • Integrazione dei dati
      • Power BI
      • Servizi di Datawarehouse
    • Sito Web Design
      • Design del logo
      • Gateway di pagamento
      • Localizzazione e traduzione web
      • Ottimizzazione del sito web
      • Sicurezza del sito
      • Strumenti tecnici
    • Servizi per gli affari
      • Microsoft Azure
      • Servizi Google Cloud
      • Servizi Web Amazon
    • Microsoft Office
    • Servizi di consulenza e gestione dei social media
  • Accademia
    • Il nostro ambiente di prova
    • Imparare a usare i database
      • Le basi
      • Ottieni una query aperta
      • Piano di manutenzione di SQL Server 2008
      • Utilizzo dei dati di SQL Server
      • Utilizzo delle date di SQL Server
      • Utilizzo delle funzioni di SQL Server
      • Utilizzo di SQL Server Pivot-Unpivot
      • Strumenti
    • Imparare il web design
      • Costruire il sistema di gestione dei contenuti di Ousia
      • ASP-NET
      • CSS
      • Utilizzo di JavaScript
    • Usando i social media
      • Chiedere una recensione su Google
      • Dimensioni delle immagini dei social media
      • Modifica di un account Facebook da personale a aziendale
      • Scegliere dove concentrare lo sforzo sui social media
      • Utilizzo dei metadati per impostare le immagini dei social media
    • Imparare a usare il cloud e i servizi informatici
      • Errore dell'utilità di pianificazione 2147943645
      • Richiesta SSL e generazione di file PFX in OpenSSL Simple Steps
  • Chi Siamo
    • Carriere
      • Traduttore inglese-portoghese
      • Traduttore inglese-spagnolo
    • Portfolio
    • Squadra
      • Adrian Anandan
      • Alì Al Amine
      • Ayse Hur
      • Chester Copperpot
      • Gavin Clayton
      • Sai Gangu
      • Suneel Kumar
      • Surya Mukkamala
AR - عربىCS - češtinaDE - DeutschEN-GB - EnglishEN-US - EnglishES - EspañolFA - فارسیFR - FrançaisHI - हिंदीIT - italianoJA - 日本語PL - polskiPT - PortuguêsRU - русскийTR - TürkZH - 中国的

Un piano di manutenziione per Server SQL 2008

Piano di manutenzione dei Server SQL in grado di eseguire il backup e il ripristino di file di su più server e riogranizzare e ricostruire gli indici delle varie tabelle

Ottimizzazione dei database

Piano di manutenzione del database

Questa sezione è dedicata all'ottimizzazione dei database. In questo esempio, imposteremo il codice per eseguire le seguenti operazioni (vedere un diagramma approssimativo di come sono collegati i server):

  • Backup del database dal server live a una cartella di backup condivisa
  • Reindicizzare il database
  • Interrompere tutte le connessioni e ripristinare il database sul server di report.
  • I server collegati saranno presto in un articolo separato
  • Log Shipping sarà presto in un articolo separato

Quando si esegue questa operazione su più server, sarà necessario consentire all'account in esecuzione di SQL Server di accedere ai file di sistema dei server di destinazione.

Tutto il codice SQL viene eseguito da un database di utilità e lo schema è impostato su "maint"

Ci sono una miriade di altri articoli che abbiamo scritto di seguito che potrebbero interessarti.

Piano di manutenzione completo

Ora possiamo gestire tutti questi segmenti di codice separati con un'altra procedura che li chiamerà nell'ordine corretto, questo verrà inserito nel server live. Il codice viene eseguito come segue:

  • Calcola il tempo
  • Se è sera, reindicizzare il database
  • Esegui un backup del database (aggiungi dove ti serve)
  • Se è sera esegui il backup degli altri database (aggiungi dove ti serve)
  • Interrompi le connessioni e ripristina il database (aggiungi dove ti serve)

Questo codice è stato provato e testato ed è stato eseguito per periodi di mesi senza problemi.

Si noti che la riduzione dei file di registro e dei file di database dovrebbe essere ridotta al minimo, eseguendo un backup si svuota il registro (sebbene manterrà lo spazio utilizzato). Se è necessario quando dovrebbe essere eseguito al di fuori del normale orario di lavoro.

Codice SQL

Use [utilities]GOCREATE PROC [maint].MaintenancePlan AS BEGINDECLARE @BackupType VARCHAR(1)='E'IF DATEPART(HOUR,GETDATE()) BETWEEN 5 AND 21 BEGINSET @BackupType='D'END--EXEC ('USE TempDb; DBCC SHRINKFILE(templog, 0)');--This is only needed when space is at a premium!--Re-index LiveIF @BackupType='E' EXEC [maint].DatabaseReIndex 'dbname'--Create BackupBACKUP DATABASE TO DISK=N'{backuplocation}{dbname}.bak'WITH NOFORMAT, INIT, NAME =N'{dbname}', SKIP, NOREWIND, NOUNLOAD, STATS= 10;--EXEC ('USE ; DBCC SHRINKFILE(_log, 0)');--This is only needed when space is at a premium!--Backup Other Files at NightIF @BackupType='E' BEGIN  EXEC [maint].DatabaseReIndex 'dbname'  --Backup Others  BACKUP DATABASE [databasename] TO DISK=N'{backuplocation}{dbname2}.bak'  WITH FORMAT,INIT, NAME =N'{dbname2}',SKIP, NOREWIND, NOUNLOAD,  STATS= 10END--Restore Backups on other serverEXEC [server].[utilities].[maint].KillConnections 'dbname';EXEC [server].[utilities].[maint].RestoreDatabase_{dbname};--Restore Backups on other server for db_2 etcIF @BackupType='E' BEGIN  EXEC [server].[utilities].[maint].KillConnections 'dbname2';  EXEC [server].[utilities].[maint].RestoreDatabase_{dbname2};ENDENDGO

Database di backup

backup database screenshot

Per ottenere il codice per il backup del database, è più semplice eseguire lo script del codice da SSMS.

Segui la procedura che utilizzeresti normalmente, quindi seleziona "Azione script su nuova finestra di query".

Copia questo codice nel piano di manutenzione.

Reindicizzare il database

Successivamente possiamo aggiungere del codice per reindicizzare il nostro database, anche questa è una procedura memorizzata condivisa in cui devi solo selezionare il nome del sistema.

Per evitare la duplicazione del codice, puoi leggerlo sul link sottostante.

Altro: stored procedure per ricostruire o riorganizzare indici di database frammentati

Uccidi connessioni

Quando si esegue un ripristino sul database, è possibile avere solo una connessione ad esso (il processo che esegue il ripristino), quindi è possibile creare una procedura memorizzata per chiudere tutte le connessioni a parte il processo corrente. Abbiamo nuovamente creato un articolo separato per questo.

Altro: stored procedure per terminare tutte le connessioni al database selezionato

Ripristina database

Questo codice può anche essere creato tramite script da SQL Server Management Studio. Se aggiungi questo codice a una stored procedure, puoi chiamarlo da altri processi e persino da altri server molto facilmente. Abbiamo spostato questo in un articolo separato per coprire più opzioni.

Altro: Ripristina database da stored procedure

Backup del database di SQL Server 2008 7Zip

Backup del database di SQL Server 2008 7Zip
Codice SQL per abilitare xp_cmdshell e quindi eseguire un backup del database tramite la riga di comando 7Zip.

Utilizzo di un trigger di contesto per il controllo dei dati di SQL Server

Utilizzo di un trigger di contesto per il controllo dei dati di SQL Server
SQL Server 2008, controllo dei dati semplice: utilizzo di un trigger e di un contesto per tracciare gli aggiornamenti in una tabella SQL

Rimuovere un utente senza lasciare dati orfani in SQL Server

Rimuovere un utente senza lasciare dati orfani in SQL Server
Rimuovere completamente gli utenti da SQL Server senza lasciare dati orfani

Controllo e sincronizzazione dei dati in cross database utilizzando un trigger

Controllo e sincronizzazione dei dati in cross database utilizzando un trigger
Controllo e sincronizzazione di tabelle in diversi database, con diversa struttura dei dati tramite un trigger

Ricerca in funzioni e stored procedure di Server SQL

Ricerca in funzioni e stored procedure di Server SQL
Ricerca di testo in Stored Procedures e funzioni nei server SQL e si ottiene così i numeri di righe presenti in ogni riga.

Stored procedure per ricostruire indici di database frammentati

Stored procedure per ricostruire indici di database frammentati
Una stored procedure riutilizzabile che puoi chiamare per reindicizzare qualsiasi database inserendo il nome del database.

Uno script dinamico per ripristinare i database di SQL da una stored procedure

Uno script dinamico per ripristinare i database di SQL da una stored procedure
Creare una stored procedure centralizzata, generica e riutilizzabile utilizzando uno script di SQL dinamico in grado di ripristinare i database utilizzando una serie di parametri come parte di un piano di manutenzione più ampio

Avvisi e-mail di spazio su disco e dimensioni del database

Avvisi e-mail di spazio su disco e dimensioni del database
Creazione di una stored procedure che invierà lo spazio su disco e gli avvisi di database tramite posta elettronica

Stored procedure per terminare tutte le connessioni al database o al server selezionato

Stored procedure per terminare tutte le connessioni al database o al server selezionato
Stored procedure SQL per terminare tutte le connessioni al database o al server selezionato ad eccezione dello stored procedure eseguito.

Autore

Gavin Clayton
Gavin Clayton
Ho formato Claytabase nel 2010 come un modo per continuare il mio lavoro con SQL Server e ASP.NET. Ciò è culminato nel sistema di gestione dei contenuti di Ousia che viene preso dal concetto a uno dei CMS più rapidi presenti sul mercato.
 Google Translate
Google Translate

È stato utile?

Please note, this commenting system is still in final testing.
Copyright Claytabase Ltd 2022

Registrato in Inghilterra e in Galles 08985867

RSS Login ContattaciCookie PolicyMappa del sito

Social Media

facebook.com/Claytabaseinstagram.com/claytabase/twitter.com/Claytabaselinkedin.com/company/claytabase-ltd

Contattaci

+442392064871info@claytabase.comGround Floor, Building 1000, Lakeside North Harbour, Western Road, Portsmouth, Hampshire, United Kingdom, PO6 3EZ
https://www.claytabase.co.uk/System/Themes/Default/Partners.png
Le impostazioni di questo sito sono impostate per consentire tutti i cookie. Questi possono essere modificati sulla nostra pagina politica e le impostazioni dei cookie. Continuando a utilizzare questo sito l'utente accetta l'utilizzo dei cookie.
Ousia Logo
Ousia CMS Loader