Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> software >> SQL Server >> .

Come trovare un indice non utilizzato in SQL Server

Le applicazioni di database rispondono lentamente alle query degli utenti se ci sono gli indici dei database utilizzati. Quando un database viene utilizzato per ottenere i risultati della query , l'indice viene aggiornato con le modifiche apportate ai dati della tabella del database . Gli indici inutilizzati prendere ulteriore tempo per aggiornare , provocando una risposta lenta per le applicazioni dell'utente . Software di Microsoft SQL Server consente di determinare quanto spesso si utilizzano gli indici per migliorare le prestazioni dell'applicazione . Istruzioni
1

Fare clic su " Start" di Windows e quindi fare clic su
2

Aggiungere le seguenti istruzioni SQL nella finestra aperta "Microsoft SQL Management Console . " :

- . Creare la struttura delle tabelle richieste

SELECT TOP 1

DatabaseName = DB_NAME ( ) per

, TableName = OBJECT_NAME ( s. [ object_id ] ) per

, IndexName = i.name

, user_updates

, system_updates

INTO # TempUnusedIndexes

DA sys.dm_db_index_usage_stats s

INNER JOIN sys.indexes i ON s . [ object_id ] = i. [ object_id ]

E s.index_id = i.index_id

DOVE s.database_id = DB_ID ( ) per

E OBJECTPROPERTY ( s. [ object_id ] , ' IsMsShipped ') = 0

E user_seeks = 0

E user_scans = 0

E user_lookups = 0 < br . . >

E s [ object_id ] = -999 - valore fittizio per ottenere la struttura della tabella

;

- loop attorno a tutti i database sul server
< . UTILIZZO p > EXEC sp_msforeachdb ' [ ? ] ; .

- tabella esiste già

INSERT INTO # TempUnusedIndexes

SELECT TOP 10

DatabaseName = DB_NAME ( ) per

, TableName = OBJECT_NAME ( s. [ object_id ] ) per

, IndexName = i.name

, user_updates

, system_updates

DA sys.dm_db_index_usage_stats s

INNER JOIN sys.indexes i ON s . [ object_id ] = i. [ object_id ]

E s.index_id = i.index_id

DOVE s.database_id = DB_ID ( ) per

E OBJECTPROPERTY ( s. [ object_id ] , '' IsMsShipped '' ) = 0

E user_seeks = 0

E user_scans = 0

E user_lookups = 0

; .

- selezionare i record

SELECT TOP 10 * FROM # TempUnusedIndexes ORDER BY [ user_updates ]

DECR

DROP TABLE # TempUnusedIndexes
3

Fare clic su " File" e quindi fare clic su "Salva" per salvare la procedura nel database SQL .

 

software © www.354353.com