Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

32

Transcript of Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Page 1: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.
Page 2: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Gestire e monitorare sistemi SQL Server 2005

Silvano CorianiDeveloper EvangelistMicrosoft

Page 3: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Agenda

Amministrazione e gestione

Policy operazionali e di sicurezza

Monitoring e troubleshooting

Strumenti di tuning

Automatizzare le attività amministrative

Aggiornamento

Page 4: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Aree a produttività migliorata

Gestire e amministrare

Gestione policy di sicurezza

Monitoring e Troubleshooting

Performance Tuning

Automazione delle attività amministrative

Page 5: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Quale vantaggio quando?Quanto costa utilizzare le nuove tecnologie?

DDL TriggerDDL TriggerAuditing e prevenzioneAuditing e prevenzione

SQL Server AgentSQL Server AgentNuove funzioni di Nuove funzioni di automazione / alertingautomazione / alerting

Microsoft Microsoft Operations Operations Manager (MOM)Manager (MOM)SQL Server Management SQL Server Management PackPack

Database Database Maintenance PlanMaintenance Plan

Database MailDatabase Mail

Benefici immediati

Interventi minimi

Aggiornamento architetturale

Migliorare la gestibilità, dalla progettazione alla amministrazione Monitoring centralizzato per avere tutte le informazioni a portata di

mano

SQL Server SQL Server Management Management StudioStudioError Viewer unificato/ Error Viewer unificato/ Report/ Monitoring/ Server Report/ Monitoring/ Server DashboardDashboard

Performance Performance MonitorMonitor

SQL Server SQL Server ProfilerProfiler

Database Engine Database Engine Tuning AdvisorTuning Advisor

SQLCMDSQLCMD Informazioni di Informazioni di

sistemasistemaViste di catalogo e DMVViste di catalogo e DMV

VSTS 2005VSTS 2005Code Analysis e ModelingCode Analysis e Modeling

Event NotificationEvent Notification Auditing e gestione eventiAuditing e gestione eventi

Page 6: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Ambiente integrato di gestione per tutti i serviziBasato sulla shell di Visual StudioIntegra le funzionalità di:

Enterprise ManagerQuery AnalyzerAnalysis Manager

Consente di gestire:Motore relazionaleAnalysis ServicesReporting ServicesSQL Server Mobile

Tool di scripting per:Transact-SQL/SQLCMDXMLA/MDX/DMX

Report grafici

Management Studio

Page 7: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Un tour di SQL Server Management Studio

Silvano CorianiDeveloper EvangelistMicrosoft

Page 8: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Dynamic Management ViewViste logiche sulle strutture dati interne di SQL

Server

Punto di osservazione privilegiato sullo stato del sistema

Server Componentidm_exec_*

Connessioni e codice utente eseguito

dm_os_* Memoria, locking e scheduling

dm_tran_* Transazioni e isolamento

dm_io_* I/O su rete e dischi

dm_db_* Database e oggetti contenuti

dm_repl_* Replica

dm_broker_* SQL Service Broker

dm_fts_* Full Text Search

dm_qn_* Query Notification

dm_clr_* Common Language Runtime

Page 9: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

DMV: architettura

SQL Server Relational SQL Server Relational EngineEngine

Strutture Strutture operative in operative in

memoriamemoria

Strutture Strutture operative in operative in

memoriamemoria

Dati Dati statistici statistici aggregatiaggregati

Dati Dati statistici statistici aggregatiaggregati

DMV e DMV e DMFDMF

DB RisorseDB Risorse (schema “sys”)

SP, Viste, SP, Viste, Tabelle, ecc.Tabelle, ecc.DB UtenteDB Utente

ApplicazionApplicazioni di i di

monitoringmonitoring

Alcune Alcune esistevano, esistevano,

ma non ma non erano erano

esposteesposte

Nuove ed esposte Nuove ed esposte SQL Server 2005SQL Server 2005

Page 10: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Utilizzo applicativo delle DMV

SQL Server 2000: DBCC SHOWCONTIG

Risultati non tabellari di default

Diifficili da utilizzare applicativamenteCreazione di temp table, ricostruzione dei data type

Utilizzo di stringhe dinamiche T-SQL per popolare le temp table

SQL Server 2005: sys.dm_db_index_physical_stats(params)

Funzione tabellare che ritorna le informazioni

Semplice da utilizzare applicativamenteSELECT INTO per estrarre un result set

No T-SQL dinamico

Page 11: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Utilizzo amministrativo delle DMV

DMV legate agli indicisys.dm_db_index_physical_stats

Dimensione e frammentazione di tabelle e indici

sys.dm_db_index_operational_statsInternals per attività su dati e indici

sys.dm_db_index_usage_statsStatistiche su utilizzo indici

sys.dm_db_index_partition_statsInformazioni su dimensioni di ogni partizione

Page 12: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Protezione del serverSQL Server Surface Area Configuration

Configurazione di servizi e connessioni

Settaggi dei servizi

Gestione connessioni remote

SQL Server Agent

Reporting Services

Integration Services

SQL Server Browser

Configurazione delle funzionalità

sp_configure

Query sul catalogo

Database Mail

xp_cmdshell

Integrazione CLR

Page 13: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

SQL Server Surface Area Configuration

Silvano CorianiDeveloper EvangelistMicrosoft

Page 14: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Auditing e gestione cambiamenti

DDL TriggerPer comandi specifici: DROP_TABLE

Per gruppi di comandi: DDL_PROCEDURE_EVENTS

CREATE PROCEDURE ALTER PROCEDURE

DROP PROCEDURE

Notifica di eventi e eventi WMI:Notifica eventi specifici: DATA_FILE_AUTO_GROW

Gruppi di eventi: TRC_STORED_PROCEDURES

SP_RECOMPILE SP_CACHEMISS

SP_CACHEREMOVE SP_CACHEINSERT

Page 15: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

DDL Trigger

Silvano CorianiDeveloper EvangelistMicrosoft

Page 16: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

MonitoringLog: Approccio unificato

Supporto di logging per diversi servizi

SQL Server Database Engine

SQL Server Agent

Windows Event Viewer Application Log

Database Mail Log

Su tutti i logs:

Ricerche

Filtri

Esportabilità

Page 17: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Supporto a SQL Server Database Engine e Analysis Services

Semplificazione nell’utilizzo (Eventi, Data Column e Filtri in una unica finestra)

Eventi speciali: Service Broker, Notification Service, ecc…

Nuove informazioni: Showplan XML e Deadlock Graph – possono essere salvati su file

Supporta modifiche delle impostazioni durante la cattura

SQL Server 2000 e 2005

Non più solo SYSADMIN

SQL Server Profiler

Page 18: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Integrazione con System MonitorPerformance Counter LogSet up del profiler

Set up di in log di Performance MonitorAl termine della cattura di eventi posso importare i counter di performance registrati nel logFunzionamento basato sui tempi di cattura – verificare data e ora dei vari client di logPossibilità di analizzare gli eventi all’interno del data traceLavora con SQL Server 2000 e SQL Server 2005

Page 19: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

SQL Server Profiler

Silvano CorianiDeveloper EvangelistMicrosoft

Page 20: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Attraverso il SQL Server Management Pack è possibile tenere sotto controllo la disponibilitò dei servizi

Console centralizzata

Gestione di deployment significativi di SQL Server

Gestione proattiva dei potenziali problemi

Analisi dei dettagli dei problemi

Esecuzione di task correttivi

Trend sui performance counter

Reportistica

Capacity planning

A breve l’uscita di un Management Pack nativo per SQL Server 2005

Microsoft Operations ManagerStrumenti di monitoring Enterprise

Page 21: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Suggerimenti sul PartitioningTuning basato sui carichi di lavoroOpzioni di indexing evoluteXML Input/Output Modalità “Drop ONLY”Esecuzione parametrizzata via linea di comandoImportazione di sessioni predefinite (XML)Opzioni sul workload

*.trc, *.sql o *.xmlPuò essere una tabella di SQL Server

Database Engine Tuning Advisor

Page 22: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Database Tuning Advisor

Silvano CorianiDeveloper EvangelistMicrosoft

Page 23: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

SQL Server AgentDa monitoraggio proattivo a reattivo

Alert generati da:Errori in SQL Server

Soglie di performance counter

Eventi WMI

SQL Agent può utilizzare Database Mail

Proxy AccountOgni proxy account è associato con delle credenziali SQL Server

Ad un proxy account è possibile associare un database user, database role o server role

I proxy account possono essere associati ai vari subsystem

Page 24: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Basati su SQL Server Integration Services

Interfaccia intuitiva basata su Wizard

Possibilità di creare piani cross database

I piani definiti per tutti i database verranno utilizzati anche per oggetti creati successivamente al piano stesso

Database Maintenance Plan

Page 25: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Utilizza SMTP – non più dipendente da Microsoft Outlook!

Chiamata ad un processo esterno

Supporto al Cluster

Supporto 64-bit

Nessuna dipendenza dal SQLCLR

Funzionamento sincrono o asincrono

Utilizzo di SQL Server Service Broker per la gestione delle code

Logging

Database Mail

Page 26: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Database Maintenance Plan e Database Mail

Silvano CorianiDeveloper EvangelistMicrosoft

Page 27: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

SQLCMDAutomazione e scripting a riga di comando

Sostituisce OSQL /ISQLSupporto a connessioni multiple su diversi serverUtilizzo di parametri

Variabili definite negli scriptPassati all’esecuzionePassati in variabili d’ambiente

Miglior controllo in caso di erroriScript di inizializzazioneConnessione amministrativa dedicata

Page 28: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Utilizzo di SQLCMD

Silvano CorianiDeveloper EvangelistMicrosoft

Page 29: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Verifica dello schema e suggerimento di best practices

Upgrade Advisor su microsoft.com

SQL Server 2005 Upgrade HandbookSQL Server 2005 Editions http://www.microsoft.com/sql/2005/productinfo/sql2005features.mspx

Upgrade AdvisorGet Ready!

Page 30: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Perchè aggiornare?Database Engine

Service BrokerHTTP AccessDatabase Tuning Advisor Enhanced Read ahead & scanIndexes with Included ColumnsMultiple Active Result Sets Persisted Computed ColumnsTry/Catch in T-SQL statementsCommon Table ExpressionsServer EventsSnapshot Isolation Level PartitioningSynonymsDynamic Management Views

.NET FrameworkCommon Language Runtime

IntegrationCLR-based Types, Functions, &

TriggersSQL Server .NET Data Provider

Data TypesCLR-based Data TypesVARCHAR(MAX), VARBINARY(MAX)XML Datatype

Database Failure and RedundancyFail-over Clustering (up to 8 node)Database MirroringDatabase SnapshotsEnhanced Multi-instance Support

XMLNew XML data typeXML IndexesXQUERY SupportXML Schema (XSD) supportFOR XML PATHXML Data Manipulation Language

SQLXML 4.0

Database MaintenanceBackup and Restore

EnhancementsChecksum Integrity ChecksDedicated Administrator

ConnectionDynamic Configuration AWEHighly-available UpgradeOnline Index OperationsOnline Restore

Management ToolsMDX & XML/A Query EditorMaintenance Plan DesignerSource Control SupportProfiler access to non-saSQLCMD Command Line ToolDatabase Mail

Performance Tuning Profiling Analysis ServicesExportable Showplan &

Deadlocks Profiler EnhancementsNew Trace Events

Full-text SearchBackup/Restore includes FT

catalogsMulti-instance service

SQL Client .NET Data ProviderServer Cursor SupportMultiple Active Result Sets

SecurityCatalog and meta-data securityPassword policy enforcementFine Grain Administration

RightsSeparation of Users and SchemaSurface Area Configuration

Notification ServicesEmbed NS in existing

applicationUser-defined match logicAnalysis Services Event

Provider

ReplicationSeamless DDL replicationMerge Web SyncOracle PublicationPeer to Peer Transactional

replicationMerge replication perf and

scalabilityNew monitor and improved UI

Analysis Services and Data MiningAnalysis Management Objects Windows Integrated Backup and

RestoreWeb Service/XML for AnalysisIntegration Services and DM

IntegrationEight new Data Mining

algorithmsAuto Packaging and DeploymentMigration Wizard

Integration ServicesNew high performance

architectureVisual design and debugging

environmentExtensible with custom code and

scriptsXML task and data sourceSAP connectivityIntegrated data cleansing & text

miningSlowly changing dimension

wizardImproved flow controlIntegration with other BI

productsReporting Services

Report BuilderAnalysis Services Query

DesignerEnhanced Expression EditorMulti-valued Parameters Date PickerSharepoint Web PartsFloating HeadersCustom Report ItemsXML Data Provider

Page 31: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

Quale vantaggio quando?Quanto costa utilizzare le nuove tecnologie?

DDL TriggerDDL TriggerAuditing e prevenzioneAuditing e prevenzione

SQL Server AgentSQL Server AgentNuove funzioni di Nuove funzioni di automazione / alertingautomazione / alerting

Microsoft Microsoft Operations Operations Manager (MOM)Manager (MOM)SQL Server Management SQL Server Management PackPack

Database Database Maintenance PlanMaintenance Plan

Database MailDatabase Mail

Benefici immediati

Interventi minimi

Aggiornamento architetturale

Migliorare la gestibilità, dalla progettazione alla amministrazione Monitoring centralizzato per avere tutte le informazioni a portata di

mano

SQL Server SQL Server Management Management StudioStudioError Viewer unificato/ Error Viewer unificato/ Report/ Monitoring/ Server Report/ Monitoring/ Server DashboardDashboard

Performance Performance MonitorMonitor

SQL Server SQL Server ProfilerProfiler

Database Engine Database Engine Tuning AdvisorTuning Advisor

SQLCMDSQLCMD Informazioni di Informazioni di

sistemasistemaViste di catalogo e DMVViste di catalogo e DMV

VSTS 2005VSTS 2005Code Analysis e ModelingCode Analysis e Modeling

Event NotificationEvent Notification Auditing e gestione eventiAuditing e gestione eventi

Page 32: Gestire e monitorare sistemi SQL Server 2005 Silvano Coriani Developer Evangelist Microsoft.

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.