I have a MOSS publishing site. Content is quite small. I noticed that content database size is now 5GB without any significant content changes made. Using a script to show the tables' sizes, I noticed that the EventCache table size alone is over 3.5 GB. Why is this? what is the reason for this? What to do about it to reduce the size?
did you checked the following things: 1. Did you migrated your content DB from a previous version (SPS 2003)? - In this case, it might be sometimes the timerjobs to clear the eventcache table on its expiries date does not perform well and rows older than the defined number of days still remaining in the table.
Hope this may help you,
greets, Steve Chen, Support Engineer SharePoint EMEA GTSC
Try changing how many days to keep your change log and see if that table gets smaller.
Also, is your SPTimer service running correctly with the correct domain account?
Do you have a lot of users with a lot of alerts setup?
I recently had the same problem due to database corruption. According to this site, there is a timer job that should be deleting all old events, and you should make sure this "Immediate Alert" timer job is running.
You can check to see if old events are actually being deleted by running this SQL against your database:
Then, check to make sure there are no events with dates over a week or two.
If you do have such events, pick the largest ID from the query above, and then run (let's assume the ID was 8500):
In my case, I received an error indicating that the database was corrupt (and this was the reason I had so many rows in my database).
To fix the SharePoint database corruption, you can run the following (Important: this may cause some data loss):
(My Content database was called "WS_CONTENT", yours may be different).
Then, run the "Select" statement above to make sure there are not too many rows, and if so, delete them.