My requirement is to get the database size information collected daily, I did not find any option to get database growth over a period of time.

Someone please advise what the correct method for this could be.

  • 1
    There's also the built-in Performance Data Collector in SQL Server 2008 R2 which allows you to collect certain key indicators (including size) of databases and your servers into a performance management database
    – marc_s
    Commented Nov 1, 2014 at 11:48
  • @marc_s Thanks alot I was not aware of this at all !!
    – Heisenberg
    Commented Nov 1, 2014 at 15:51

2 Answers 2


Refer the link which details as creating a table, stored procedure and a SQL Agent job to execute that sp and save details in that table everyday


  1. You can start with this Link : https://stackoverflow.com/questions/176379/determine-sql-server-database-size

  2. From this link you will get the CURRENT databases sizes.

  3. For getting the DB's sizes per Date or Datetime, you should schedule (create a job) that run the query and insert his results into a table (new table which you should to create for this ).

  4. After all these steps you will get a table that holds per date the databases sizes .

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.