• When you rebuild indexes, it generates a lot of transaction log records.

    How often are your transaction log backups running? If you don't run them often enough, the transaction logs accumulate and force the log file to grow. I usually recommend every 15 minutes, 24x7, as a starting point. If you still get substantial log grow, you may need to run transaction log backups more often while the re-indexing is running, like every 5 minutes.

    No matter how often you run transaction log backups, the size of the largest table or index in the database will determine the lower limit for the transaction log file, since a re-index is done as a single transaction.

    250 MB is probably too small for the transaction log file. I usually set it at about 25% of the size of the database as a starting point, so that would be about 4 GB. Once the transaction log file size is stabilized, do not shrink it, because that will cause performance problems.

    You may need a better solution to avoid unnecessary re-indexing, like the free Minion Reindex:

    Grant Fritchey Reviews Minion Reindex

    http://www.sqlservercentral.com/articles/Indexing/121519/