Datu bāzes pieauguma uzraudzība ir galvenais faktors servera resursu plānošanā. Izmantojiet šo skriptu un izveidojiet viegli saprotamu datu bāzes pieauguma pārskatu
Kāpēc jums jāuzrauga datu bāzes izaugsme
Ja esat SQL datu bāzes administrators un jums navSQL Server datu bāzes ietilpības plānošana ”savā galveno uzdevumu sarakstā, tad jūs varat būt pārliecināti, ka jūsu servera datu bāzes diezgan drīz piepildīs jūsu vietu diskā. SQL datu bāzu lieluma un pieauguma izsekošana ir viens no jaudas plānošanas galvenajiem uzdevumiem. Tas arī nodrošina, ka diskā ir pietiekami daudz vietas, lai jūsu datu bāzes augtu.
DIY, izmantojot SQL skriptu un Excel
Šajā rakstā mēs izmantosim SQL un Excel, lai attēlotu SQL datu bāzu lielumu kopā ar modeli. Tas ļaus mums plānot neizbēgamas vietas prasības, kā arī palīdzēs saprast laika skalu, kurā ir liels apjoms.
Šis process ir sadalīts četrās dažādās darbībās, lai jūs varētu sekot tam bez grūtībām.
1. darbība: izpildiet šo skriptu jaunā vaicājuma logā.
Izvadei būs datu bāzes nosaukumi kā rindu galvenes un mēnesis kā kolonnu galvenes. Izvades vērtības ir datubāzes lielums GB.
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
Rezultāts:
2. solis: Izveidojiet jaunu Excel gadījumu un nokopējiet iepriekšējā soļa iznākumu jaunajā Excel lapā.
3. solis: Tagad lapā atlasiet pirmās divas rindas un ievietojiet 2D līniju diagrammu.
Tas izveidos atlasītās datu bāzes tendenču diagrammu. Diagrammā X ass apzīmēs mēnešus, un Y Axis datubāzes lielumu GB.
4. solis: atlasiet visus datus, velkot simbolu “plus”, lai tos aptvertu.
Tas parādīs visu diagrammas datu bāzu tendenci.
Ja izlaidīsit 3. darbību un ievietosiet 2D līniju diagrammu, atlasot visu tabulu, jūs joprojām iegūsiet diagrammu, bet X ass mēneša vietā apzīmēs datu bāzes nosaukumus. Šī nav vajadzīgā izeja.
Tabulā Output var būt dažas NULL vērtības. Tas notiek tāpēc, ka datu bāzes dublējuma vēsturē, iespējams, attiecīgajā mēnesī nav datu bāzes ierakstu. Tas arī nozīmē, ka skripts atsaucas uz dublējuma lielumu dublējuma vēstures tabulā, lai izsekotu izaugsmes tendencei. Ja kāda no jūsu datu bāzēm nav iekļauta dublēšanas plānā, tabulā Output joprojām būs datubāzes nosaukums, bet visu mēnešu vērtības būs NULL
Labot lielizmēra datu bāzi
Ja jūs iepriekš neievērojat iepriekš minēto stratēģiju un jūsu datu bāze ir pārāk liela, tad tā var radīt dažādas problēmas. Šādā gadījumā labāk atrast SQL Server failu atkopšanas rīks efektīvi un efektīvi atrisināt problēmu.
Autora ievads:
Nils Varlijs ir datu atkopšanas eksperts DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp labot Outlook problēmu un Excel atkopšanas programmatūras produkti. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar





