কীভাবে পর্যবেক্ষণ করবেন SQL Server টিএসকিউএল এবং এক্সেল ব্যবহার করে ডেটাবেস গ্রোথ

এখন শেয়ার:

সার্ভারের রিসোর্স পরিকল্পনার জন্য ডাটাবেস বৃদ্ধির উপর নজর রাখা একটি মূল বিষয়। এই স্ক্রিপ্টটি ব্যবহার করুন এবং সহজেই ডাটাবেস বৃদ্ধির প্রতিবেদনটি বোঝার জন্য তৈরি করুন

আপনার ডাটাবেস বৃদ্ধির উপর নজর রাখার দরকার কেন

আপনি যদি একটি এসকিউএল ডেটাবেস প্রশাসক হন এবং আপনার যদি না থাকে তবে “SQL Server আপনার মূল টাস্ক তালিকায় ডাটাবেস ক্ষমতা পরিকল্পনা ", তবে আপনি নিশ্চিত হতে পারেন যে আপনার সার্ভারে থাকা ডাটাবেসগুলি আপনার ডিস্কের স্থানটি খুব শীঘ্রই পূরণ করবে। এসকিউএল ডাটাবেসের আকার এবং বৃদ্ধি ট্র্যাক করা সক্ষমতা পরিকল্পনার অন্যতম প্রধান কাজ। এটি আপনার ডেটাবেসগুলি বাড়ার জন্য ডিস্কে পর্যাপ্ত জায়গা রয়েছে তাও নিশ্চিত করে।

এসকিউএল স্ক্রিপ্ট এবং এক্সেলের মাধ্যমে DIY

এই নিবন্ধে, আমরা প্যাটার্ন সহ এসকিউএল ডাটাবেসের আকার ক্যাপচার করতে এসকিউএল এবং এক্সেল ব্যবহার করব। এটি আমাদের নিকটবর্তী স্থান প্রয়োজনীয়তার জন্য পরিকল্পনা করতে সক্ষম করবে এবং আমাদের সময়রেখা বুঝতে সাহায্য করবে যে সময়ে ভারী পরিমাণ রয়েছে।

এই প্রক্রিয়াটি চারটি বিভিন্ন ধাপে বিভক্ত হয়েছে যাতে আপনি কোনও ঝামেলা ছাড়াই অনুসরণ করতে সক্ষম হন।

পদক্ষেপ 1: একটি নতুন ক্যোয়ারী উইন্ডোতে এই স্ক্রিপ্টটি কার্যকর করুন।

আউটপুটে সারি শিরোনাম হিসাবে ডাটাবেসের নাম এবং কলাম শিরোনাম হিসাবে মাস থাকবে। আউটপুটে প্রদর্শিত মানগুলি জিবিতে ডাটাবেসের আকার।

declare @v_count as integer, @do_count as integer, @v_month as varchar(20),@sql as varchar(5000)

create table [t_databases]
(
Database_Name varchar(200),
January       float(3),
February      float(3),
March  float(3),
April  float(3),
May    float(3),
June   float(3),
July   float(3),
August float(3),
September     float(3),
October       float(3),
November      float(3),
December      float(3),
)
create table t_databases_gateway
(
Database_Name varchar(200),
Database_Size float(3)
)
set @v_count = (select COUNT(*) from t_databases ) 
if @v_count = 0 
begin
insert into t_databases(Database_Name)
select name from sysdatabases 
 end
if @v_count <> 0 
 begin 
--this script captures the size of all databases. You can add a where clause to capture the size of specific database name 
 INSERT t_databases (Database_Name) 
 SELECT DISTINCT Name FROM sysdatabases cr LEFT JOIN t_databases c ON cr.Name = c.Database_Name WHERE c.Database_Name IS NULL 
 end 
 --select * from master.dbo.t_databases 
 --drop table t_databases 
 set @do_count = 1 
 while (@do_count <=12) 
 begin 
 set @v_month = DATENAME(m, str(@do_count) + '/1/2016') –change the year to 2017 or other year as per your requirement 
 truncate table master.dbo.t_databases_gateway 
 insert into master.dbo.t_databases_gateway select distinct
(msdb.dbo.backupset.[database_name]),max(msdb.dbo.backupset.[Backup_Size]/1073741824)
from msdb.dbo.backupset inner join master.dbo.t_databases on msdb.dbo.backupset.[database_name] = master.dbo.t_databases.[Database_Name] where
datepart(m,msdb.dbo.backupset.[backup_finish_date]) =  @do_count and datepart(yyyy,msdb.dbo.backupset.[backup_finish_date] ) = 2015 group by msdb.dbo.backupset.[database_name]
set @sql = 'update master.dbo.t_databases set ' + @v_month + ' = (select Database_Size from master.dbo.t_databases_gateway where master.dbo.t_databases.Database_Name = master.dbo.t_databases_gateway.Database_Name)'
exec (@sql)
set @do_count = @do_count + 1
end
select * from t_databases
drop table t_databases_gateway
drop table t_databases

আউটপুট:আউটপুট ডাটাবেস আকার

পদক্ষেপ 2: এক্সেলের একটি নতুন উদাহরণ তৈরি করুন এবং পূর্ববর্তী পদক্ষেপ থেকে আউটপুটটিকে আপনার নতুন এক্সেল শীটে কপি করুন।

এক্সেল শিটে আউটপুট অনুলিপি করুন

পদক্ষেপ 3: এখন শীটটিতে প্রথম দুটি সারি নির্বাচন করুন এবং একটি 2 ডি লাইন চার্ট sertোকান।

এটি নির্বাচিত ডাটাবেসের জন্য ট্রেন্ড চার্ট তৈরি করবে। চার্টে, এক্স অ্যাকিসিস মাসগুলিকে চিহ্নিত করবে এবং ওয়াই অ্যাকিসিস জিবিতে ডাটাবেস আকারটি চিহ্নিত করবে।শীটে প্রথম দুটি সারি নির্বাচন করুন এবং একটি 2D লাইন চার্ট sertোকান

পদক্ষেপ 4: এটি পরিবেষ্টনের জন্য 'প্লাস' চিহ্নটি টেনে পুরো ডেটাটি নির্বাচন করুন।

এটি চার্টে সমস্ত ডাটাবেসের প্রবণতা প্রদর্শন করবে।সম্পূর্ণ ডেটা নির্বাচন করুন

চার্টে সমস্ত ডাটাবেসের ট্রেন্ড প্রদর্শন করুন

আপনি যদি পদক্ষেপ 3 এড়িয়ে যান এবং পুরো টেবিলটি নির্বাচন করে একটি 2 ডি লাইন চার্ট সন্নিবেশ করান, আপনি এখনও একটি চার্ট পাবেন তবে এক্স অক্ষটি মাসের পরিবর্তে ডাটাবেসের নামগুলি বোঝায়, এটি প্রয়োজনীয় আউটপুট নয়।পদক্ষেপ 3 এড়িয়ে যান এবং পুরো সারণিটি নির্বাচন করে একটি 2 ডি লাইন চার্ট .োকান

আউটপুট টেবিলের কিছু নুল মান থাকতে পারে। এটি ঘটেছিল কারণ ডেটাবেস ব্যাকআপ ইতিহাসের সেই বিশেষ মাসের জন্য ডাটাবেসের কোনও রেকর্ড নাও থাকতে পারে। এটিও বোঝায় যে স্ক্রিপ্টটি বৃদ্ধির প্রবণতা ট্র্যাক করতে ব্যাকআপ ইতিহাসের টেবিলের ব্যাকআপ আকারকে বোঝায়। যদি আপনার কোনও ডাটাবেস ব্যাকআপ পরিকল্পনায় অন্তর্ভুক্ত না করা হয় তবে আউটপুট সারণিটি এখনও ডাটাবেসের নাম ধারণ করে তবে সমস্ত মাসের মানগুলি NULL হবে

ওভারসাইজড ডাটাবেস ঠিক করুন

যদি আপনি অতীতে উপরের কৌশলটি অনুসরণ না করেন এবং আপনার ডাটাবেসটি বড় আকারের হয় তবে তা বিভিন্ন সমস্যার কারণ হতে পারে। এই জাতীয় ক্ষেত্রে, আপনি এটির চেয়ে আরও ভাল লাগবে SQL Server ফাইল পুনরুদ্ধার সরঞ্জাম কার্যকরভাবে এবং দক্ষতার সাথে সমস্যার সমাধান করতে।

লেখকের ভূমিকা:

নীল ভারলি এর মধ্যে একটি তথ্য পুনরুদ্ধার বিশেষজ্ঞ is DataNumen, ইনক। যা তথ্য পুনরুদ্ধারের প্রযুক্তিগুলির সহ বিশ্বের শীর্ষস্থানীয় মেরামত আউটলুক সমস্যা এবং এক্সেল পুনরুদ্ধার সফ্টওয়্যার পণ্য। আরো তথ্যের জন্য, যান WWW.datanumen.com

এখন শেয়ার:

মন্তব্যসমূহ বন্ধ করা হয়.