Kaip gauti savo naudojimo statistiką SQL Server Duomenų bazės

Bendrinti dabar:

Kai dirbama labai didelėje SQL Server aplinkoje, labai dažnai niekas organizacijoje nežino, kas naudojasi tam tikra duomenų baze. Šis scenarijus yra labai dažnas, jei yra kelios senos sistemos. Vykdykite šį straipsnį, kad sužinotumėte, koks jūsų efektyvumas SQL Server naudojamos duomenų bazės.

Metodas 1:

Taikydami šį metodą, perskaitysime sp_who2 išvestį ir įrašysime ją į lentelę. Pirmasis žingsnis yra sukurti lentelę naudojant šį scenarijų.

CREATE TABLE T1 (
    session_id INT
    ,status_message VARCHAR(1000) NULL
    ,login_name SYSNAME NULL
    ,Name_of_Host SYSNAME NULL
    ,Blocked_By SYSNAME NULL
    ,Database_Name SYSNAME NULL
    ,Script_description VARCHAR(1000) NULL
    ,CPU_Time INT NULL
    ,Disk_Input_Output INT NULL
    ,Last_Batch VARCHAR(1000) NULL
    ,Name_of_Program VARCHAR(1000) NULL
    ,Session_ID_2 INT
    ,ID_of_Request INT NULL
    ,Log_Date DATETIME DEFAULT GETDATE()
    );

Suplanuokite ir vykdykite šį scenarijų kaip a SQL Server Darbas. Galime bet kada peržiūrėti žurnalo lentelę, kad nustatytų, ar mūsų tarGauti duomenų bazė yra naudojama.

INSERT INTO T1 (
    session_id
    ,status_message
    ,login_name
    ,Name_of_Host
    ,Blocked_By
    ,Database_Name
    ,Script_description
    ,CPU_Time
    ,Disk_Input_Output
    ,Last_Batch
    ,Name_of_Program
    ,Session_ID_2
    ,ID_of_Request
    )
EXECUTE sp_who2 active;

Metodas 2:

Skirtingai nuo aukščiau pateikto metodo, jei nesate suinteresuoti per daug detalių ir tiesiog norite sužinoti, ar duomenų bazė naudojama, ar ne, šis scenarijus yra tinkamiausias. Jei naudojate SQL Server su senesne nei 2014 m. versija, tai neveiks. Šio scenarijaus išvestis rodo 3 laukus. Pirmuosiuose laukuose pateikiama informacija apie duomenų bazės pavadinimą. Tai mums pagrindinė sritis, nes tai padės mums nustatyti, ar mūsų tarGauti duomenų bazė yra naudojama. Antrasis laukas padės mums klasifikuoti ryšius su duomenų baze kaip vartotojo ryšius ir SQL Server vidines jungtis. Paskutiniame stulpelyje pateikiamas prisijungimų prie duomenų bazės skaičius.

SELECT DB_NAME(sys.dm_exec_sessions.database_id) AS [Database Name]
    ,CASE 
        WHEN sys.dm_exec_sessions.is_user_process = 1
            THEN 'YES'
        WHEN sys.dm_exec_sessions.is_user_process = 0
            THEN 'NO'
        END AS [Is it User connection?]
    ,COUNT(sys.dm_exec_sessions.session_id) AS [Connections Count]
FROM sys.dm_exec_sessions
GROUP BY DB_NAME(sys.dm_exec_sessions.database_id)
    ,sys.dm_exec_sessions.is_user_process
ORDER BY 1
    ,2;

Metodas 3:

Prieš įkeldami duomenis į žurnalo lentelę pagal 1 metodą negalime atlikti duomenų bazės pavadinimo filtro. Tačiau tai įmanoma naudojant 2 ir 3 metodus.

SELECT t1.objtype AS [Object]
    ,t1.refcounts AS [ReferredCount]
    ,t1.usecounts AS [Usage]
    ,t1.size_in_bytes / 1024 AS [KB Size]
    ,db_name(t3.dbid) AS [DatabaseName]
FROM sys.dm_exec_cached_plans t1
OUTER APPLY sys.dm_exec_text_query_plan(plan_handle, 0, - 1) t2
OUTER APPLY sys.dm_exec_sql_text(plan_handle) AS t3
WHERE db_name(t3.dbid) = 'ERP10_SandBox'
ORDER BY t1.usecounts DESC;

Metodas 4:

SQL profiliuotojasŠis metodas yra labai galingas nustatant duomenų bazės naudojimą, tačiau jam reikia daug išteklių. Taip, mes kalbame apie profiliuotoją. Pasirinkite šabloną iš Profiler arba naudokite pasirinktinį šabloną ir stebėkite duomenų bazės ryšius.

Pašalinkite duomenų bazę

Pašalinti duomenų bazęIš aukščiau išvardytų metodų galėsite nustatyti, ar jūsų duomenų bazė vis dar naudojama, ar ne. Jei padarysite išvadą, kad jis daugiau nenaudojamas, geriausia praktika yra informuoti atitinkamas komandas, kad ji bus pašalinta iš serverio. Gerą dieną pasidarykite VISĄ šios nepanaudotos duomenų bazės atsarginę kopiją ir išmeskite ją iš serverio. Reikia pasirūpinti, kad nebūtų sugadintas SQL Server db šio proceso metu.

Autoriaus įvadas:

Neilas Varley yra duomenų atkūrimo ekspertas DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant pataisyti Outlook pst duomenų klaidą ir Excel atkūrimo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com

Bendrinti dabar:

Komentarai yra uždaryti.