Kuinka seurata SQL Server Tietokannan kasvu TSQL: n ja Excelin avulla

Tietokannan kasvun seuranta on avaintekijä palvelimen resurssien suunnittelussa. Käytä tätä komentosarjaa ja luo helposti ymmärrettävä tietokannan kasvuraportti

Miksi sinun on seurattava tietokannan kasvua

Jos olet SQL-tietokannan järjestelmänvalvoja ja jos sinulla ei ole "SQL Server tietokannan kapasiteetin suunnittelu” avaintehtäväluettelossasi, voit olla varma, että palvelimesi tietokannat täyttävät levytilasi melko pian. SQL-tietokantojen koon ja kasvun seuranta on yksi kapasiteetin suunnittelun tärkeimmistä tehtävistä. Tämä varmistaa myös, että levyllä on riittävästi tilaa tietokantojesi kasvua varten.

Tee itse SQL Scriptin ja Excelin kautta

Tässä artikkelissa käytämme SQL:ää ja Exceliä SQL-tietokantojen koon ja kuvion kaappaamiseen. Tämä antaa meille mahdollisuuden suunnitella välittömiä tilatarpeita ja auttaa meitä myös ymmärtämään aikajanaa, jonka aikana volyymi on suuri.

Tämä prosessi on jaettu neljään eri vaiheeseen, jotta voit seurata sitä ilman ongelmia.

Vaihe 1: Suorita tämä komentosarja uudessa kyselyikkunassa.

Tulosteessa on tietokantojen nimet riviotsikoina ja kuukausi sarakeotsikoina. Tulosteessa näkyvät arvot ovat tietokannan kokoa 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

Lähtö:Lähtötietokannan koko

Vaihe 2: Luo uusi Excel-esiintymä ja kopioi edellisen vaiheen tulos uuteen Excel-taulukkoon.

Kopioi tulos Excel-taulukkoon

Vaihe 3: Valitse nyt arkin kaksi ensimmäistä riviä ja lisää 2D-viivakaavio.

Tämä luo trendikaavion valitulle tietokannalle. Kaaviossa X-akseli tarkoittaa kuukausia ja Y-akseli tietokannan kokoa GB.Valitse arkin kaksi ensimmäistä riviä ja lisää 2D-viivakaavio

Vaihe 4: Valitse kaikki tiedot vetämällä plus-symbolia ympäröimään ne.

Tämä näyttää kaikkien kaavion tietokantojen trendin.Valitse Koko data

Näytä kaikkien kaavion tietokantojen trendi

Jos ohitat vaiheen 3 ja lisäät 2D-viivakaavion valitsemalla koko taulukon, saat silti kaavion, mutta X-akseli merkitsee tietokannan nimiä kuukauden sijaan. Tämä ei ole vaadittu tulos.Ohita vaihe 3 ja lisää 2D-viivakaavio valitsemalla koko taulukko

Tulostaulukossa saattaa olla joitain NULL-arvoja. Tämä tapahtuu, koska tietokannan varmuuskopiointihistoriassa ei ehkä ole tietueita tietokannasta kyseiseltä kuukaudelta. Se tarkoittaa myös, että komentosarja viittaa varmuuskopion kokoon varmuuskopiohistoriataulukossa kasvutrendin seuraamiseksi. Jos jokin tietokannoistasi ei sisälly varmuuskopiointisuunnitelmaan, Output-taulukossa on edelleen tietokannan nimi, mutta kaikkien kuukausien arvot ovat NULL.

Korjaa ylisuuri tietokanta

Jos et noudata yllä olevaa strategiaa aiemmin ja tietokantasi on liian suuri, se voi aiheuttaa erilaisia ​​​​ongelmia. Tässä tapauksessa sinun on parempi löytää a SQL Server tiedostojen palautustyökalu ratkaista ongelma tehokkaasti ja tehokkaasti.

Tekijän esittely:

Neil Varley on tietojen palauttamisen asiantuntija DataNumen, Inc., joka on maailman johtava tietojen palautustekniikoissa, mukaan lukien korjaa Outlook-ongelma ja Excel-palautusohjelmistotuotteet. Lisätietoja osoitteessa www.datanumen.com

Kommenttien lisääminen on estetty.