Solved

percent filegrowth settings

Posted on 2014-04-10
4
204 Views
Last Modified: 2014-04-16
can I ask what risks/issues are caused by using percent filegrowth settings? Please keep answer tech free management freindly if possible? Healthcheck scanners say this setting can lead to out of control filegrowth, why so?
0
Comment
Question by:pma111
4 Comments
 
LVL 35

Assisted Solution

by:YZlat
YZlat earned 125 total points
Comment Utility
it's not bad for small databases, but when database is rather large, even 10-15% growth can cause performance issues
0
 
LVL 10

Assisted Solution

by:PadawanDBA
PadawanDBA earned 125 total points
Comment Utility
I usually recommend actual size amounts (512 MB, 1024 MB, etc.).  The reason for this being that as the database grows larger it will grow by larger and larger amounts.  If you don't have some settings set on your database server (what's called instant file initialization), this can cause all activity in the database to stop until it is done growing the file(s).

My best advice is to make the size of the data files as large as they need to be to handle growth up to a point in time where you would migrate the database(s) to new hardware and allow for the filegrowth as a last resort.  I say last resort because I absolutely don't advise anyone to disable filegrowth because it will essentially offline your database if you hit the limit and it can't grow.

Edit:

Forgot to mention that when you decide how much you want your database to grow in the event that it needs to autogrow, you introduce physical fragmentation every time it auto grows, so you will want to make it grow by a large enough size that it doesn't happen often (or at least gives you time to address the issue)
0
 
LVL 22

Accepted Solution

by:
Steve Wales earned 125 total points
Comment Utility
The reason it can cause out of control file growth is because it's not growing by a percentage of the size of the file at the time it was created, but by the current size.

So you start with 100GB with 10% growth.  After the first grow, you're at 110GB.  Next time you're at 121 GB, then 132.1 GB etc.  Each growth gets a little larger.

If you set larger growth percentages, it's obviously worse:

100 GB at 50% - 150 GB - 225 GB - 332.5 GB etc.

As mentioned above, not so much of an issue on smaller databases, but on larger databases with larger growth percentages it can be an issue.

Autogrowth vs No autogrowth is also an argument I've seen discussed many times in both the SQL Server and Oracle technical forums.

I always monitor freespace in my databases carefully so that I can control growth on my terms in a manner and timeframe that suits me - so I try to avoid databases auto growing by themselves - but the feature is still turned on.
0
 
LVL 69

Assisted Solution

by:ScottPletcher
ScottPletcher earned 125 total points
Comment Utility
I suggest never using percentage growth.  I've found it to be slower than a fixed amount.

Change the size settings on the model db to a fixed amount of what a "typical" db in your environment would need.
0

Featured Post

Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

Join & Write a Comment

Suggested Solutions

Many companies are looking to get out of the datacenter business and to services like Microsoft Azure to provide Infrastructure as a Service (IaaS) solutions for legacy client server workloads, rather than continuing to make capital investments in h…
Never store passwords in plain text or just their hash: it seems a no-brainier, but there are still plenty of people doing that. I present the why and how on this subject, offering my own real life solution that you can implement right away, bringin…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now