როგორ მივიღოთ თქვენი გამოყენების სტატისტიკა SQL Server მონაცემთა ბაზა

გააზიარე ახლა:

როდესაც მუშაობთ ძალიან დიდ SQL Server გარემო, ძალიან ხშირია, რომ ორგანიზაციაში არავინ იცის, ვინ იყენებს კონკრეტულ მონაცემთა ბაზას. ეს სცენარი ძალიან ხშირია, თუ არსებობს მრავალი ძველი სისტემა. მიჰყევით ამ სტატიას იმის დასადგენად, რამდენად ეფექტურია თქვენი SQL Server გამოიყენება მონაცემთა ბაზები.

საშუალებას 1:

ამ მეთოდით ჩვენ ვაპირებთ წავიკითხოთ sp_who2-ის გამომავალი და ჩავწეროთ ცხრილში. პირველი ნაბიჯი არის ცხრილის შექმნა ამ სკრიპტის გამოყენებით.

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()
    );

დაგეგმეთ და შეასრულეთ ეს სკრიპტი როგორც a SQL Server სამუშაო. ჩვენ შეგვიძლია ნებისმიერ დროს გადავხედოთ ჟურნალის ცხრილს, რათა დავადგინოთ, გამოიყენება თუ არა ჩვენი სამიზნე მონაცემთა ბაზა.

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;

საშუალებას 2:

ზემოაღნიშნული მეთოდისგან განსხვავებით, თუ თქვენ არ გაინტერესებთ ძალიან ბევრი დეტალი და უბრალოდ გინდოდათ იცოდეთ, გამოიყენება თუ არა მონაცემთა ბაზა, მაშინ ეს სკრიპტი საუკეთესოდ შეესაბამება. თუ იყენებთ SQL Server 2014 წელზე ძველი ვერსიით, ეს არ იმუშავებს. ამ სკრიპტის შედეგი აჩვენებს 3 ველს. პირველი ველი იძლევა ინფორმაციას მონაცემთა ბაზის სახელის შესახებ. ეს ჩვენთვის საკვანძო ველია, რადგან ეს დაგვეხმარება იმის დადგენაში, გამოიყენება თუ არა ჩვენი სამიზნე მონაცემთა ბაზა. მეორე ველი დაგვეხმარება მონაცემთა ბაზასთან კავშირების კლასიფიკაციაში, როგორც მომხმარებლის კავშირები vs. SQL Server შიდა კავშირები. ბოლო სვეტში ჩამოთვლილია მონაცემთა ბაზასთან კავშირების რაოდენობა.

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;

საშუალებას 3:

სანამ მონაცემთა ჟურნალის ცხრილში გადავიტანთ, მეთოდი 1, ჩვენ ვერ გავაკეთებთ ფილტრს მონაცემთა ბაზის სახელზე. თუმცა ეს შესაძლებელია მეთოდებში 2 და მეთოდებში 3.

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;

საშუალებას 4:

SQL პროფილერიეს მეთოდი ძალიან მძლავრია მონაცემთა ბაზის გამოყენების იდენტიფიცირებისთვის, მაგრამ ის ძალზე რესურსი ინტენსიურია. დიახ, ჩვენ ვსაუბრობთ პროფილზე. აირჩიეთ შაბლონი Profiler-დან ან გამოიყენეთ მორგებული შაბლონი და თვალყური ადევნეთ მონაცემთა ბაზის კავშირებს.

ამოიღეთ მონაცემთა ბაზა

ამოიღეთ მონაცემთა ბაზაზემოთ ჩამოთვლილი მეთოდებიდან თქვენ შეძლებთ დაადგინოთ თქვენი მონაცემთა ბაზა კვლავ გამოიყენება თუ არა. თუ მიხვალთ დასკვნამდე, რომ ის აღარ გამოიყენება, საუკეთესო პრაქტიკაა, აცნობოთ შესაბამის გუნდებს, რომ ის წაიშლება სერვერიდან. მშვენიერ დღეს, აიღეთ ამ გამოუყენებელი მონაცემთა ბაზის სრული სარეზერვო ასლი და გადააგდეთ სერვერიდან. სიფრთხილეა საჭირო რომ არ მოხდეს კორუმპირებული SQL Server db ამ პროცესის განმავლობაში.

ავტორი შესავალი:

ნილ ვარლი არის მონაცემთა აღდგენის ექსპერტი DataNumen, Inc., რომელიც მსოფლიო ლიდერია მონაცემთა აღდგენის ტექნოლოგიებში, მათ შორის Outlook PST მონაცემთა შეცდომის შეკეთება და Excel-ის აღდგენის პროგრამული პროდუქტები. დამატებითი ინფორმაციისთვის ეწვიეთ www.datanumen. ერთად

გააზიარე ახლა:

კომენტარები დახურულია.