Paid Forum Posts

Get excellent content for your forum or earn money as a paid forum poster.

Free Forum Admin Book

Learn how to start your community and make it a success. FREE download.
  1. Admin Forum - for blog and forum owners

    Do you run a blog? A forum? Read useful forum and blogging articles, find out the secret of creating a TOP community. Registration is FREE!
  2. Advertising, domain names and more ..

    Each of your posts/threads earns you points. Use these to redeem advertising plans on this forum or get REAL domain names and cpanel hosting accounts to use for your sites.

  3. Do you have a brand new forum?

    If you do, then you need members and posts to kick start it. Join our Forum Starters program and get members and posts for your brand new forums

  4. Make Money Online

    Are you a good forum / blog theme designer? An experienced content provider? Post the jobs you can provide, set your price and have clients hire and pay you. NO commission free job marketplace.

Forum Admin: how to keep your forum database clean and fast

Discussion in 'Forum Advice and Articles' started by dojo, Mar 6, 2012.

  1. dojo Administrator

    Message Count:
    2,961
    Money:
    7,172
    Running a forum will force you to learn A LOT of technical aspects, from installation, setup to backups, design and even database tweaks. When you are just starting out your community, you'll have a very small and nimble database, but this can really start taking space and put a strain on the server. Let's see how we can keep our database work fast and be as small as possible.

    1. Don't fill your forums with too many plugins

    Yep, I know you have just found 50 amazing plugins and they are all so cool. Never forget that 1. your members are there TO POST and 2. EVERYTHING you install, will most likely use your database too. So do choose few excellent plugins to help your forum and stay away from others that are not really that important.

    2. Attachments as files, CSS as files - not in the database

    For some forums (vBulletin comes to mind) you can set the CSS to be an external file and also the attachments to be set as files and not handled via the database. If you ask me, keep the attachments to a minimum, but, if you do need them, make sure they're not hogging your poor database.

    3. Give members FINITE private message numbers. Small, if possible.

    This is where I seem to be the mean ogre. So, my members don't have unlimited messages? I even give them ONLY 50? Phew, that's nasty. 'Rewind' 2 years ago. It's summer and my webmaster forums are giving a lot of database errors. MyBB seems to crash under too much strain, though the forums were 40K posts only, so nothing too fancy.

    I then enter phpmyadmin to see what's the deal and almost fall off my chair. 'Sweet mother of Jesus, the private message table is HUGE'. It was almost as big as the forum posts. And we're talking 40K forum posts, please let's not forget this.

    I go back to my own account and see 300+ private messages. Yes, I'm a lazy bum myself, don't worry. Next move? Announced the entire community to start pruning their old private messages and gave them all 1 week to delete the junk. After 1 week I set the private message numbers from 'unlimited' or an insane number anyway to 50.

    The idea of a forum is to discuss IN THE COMMUNITY, not private chats. So 50 is a decent number so that people can still forge deals, but not double up my database.

    4. Delete ZERO post members.

    At the time my forums had around 7K members. Phew, who's cool? Me. I have such a huge community. And then, when I started looking at their post counts I was shocked: many didn't bother to post. And some of them were in my forums for 2-3 years.

    Repeat after me: 'each forum account appears in the database'. This means it adds up information and increases the database space. The bigger the database, the bigger the chances for it to start showing errors and cause a high CPU consumption. And when that happens, your nice web host will invite you to buy a dedicated, even if you have a 400 visits/day forum.

    So I selected all accounts that registered, NEVER posted and never logged in back in 30 days (the time can vary, you're the boss here). Then I clicked PRUNE and there we were: 1K members.

    You'll tell me it's not a good idea to delete accounts. Let's look it this way: if you join a forum you're doing it to post (my forums have the information available to guests, so you don't need an account to read the stuff). If you can't be bothered in 3 years to post ONE SINGLE message, then please allow me to clean up the space. Sure, if you go back, you can just create the account (since it was deleted, you can use your actual username and email address, nothing blocks them). It takes 2 minutes.

    After doing these 2 tricks my database was 20% of what it used to be prior to this. As you can imagine the errors STOPPED completely and we were actually able to use that forum again.

    5. Prune those logs

    Admin logs, moderator logs, spam logs etc. Many forum features will create 'logs' so that you can take a look at any time. While I don't tell anyone to delete everything, read your logs and delete the ones that are 30 days old for instance. If you're the sole admin/mod (as I am), you shouldn't need logs anyway, I'd presume you remember what you've done.

    Run constant log pruning from your forum admin or, if you have the 'guts' go to your phpmyadmin and EMPTY the tables you need to clean. ALWAYS BACKUP THE DATABASE, before you go guerrilla on it :)

    CONCLUSION: you can have a forum that's big and active and runs on a small database or you can hog it with useless junk. Try to keep it simple, make sure everything works OK and that you optimize your data as much as possible. Run pruning for members / logs, see what data can be used as files and don't bother keeping 2 year zero post members.

    Do not touch your database if you haven't done a backup and run optimize/repair queries on a regular basis. Keeps the database 'clean' and your forums running nicely.

    PS: feel free to add more ideas :)
  2. Smokey Just joined

    Message Count:
    50
    Money:
    101
    Great tips for any forum admin. Great way to keep things nice and tidy as well. Makes for faster load times since less queries will be loaded with less strain on the DB if there's less stuff to process (attachments, etc).
  3. jasseradm Just joined

    Message Count:
    62
    Money:
    124
    Another important area of optimization is the amount of memory that your database requires. Depending on the server you run your forum on, you can have very different amount of memory available and optimizing for performance means looking at the memory the database uses and tuning that based on the amount of memory available. If you are using too much memory, your database will be operating from disk for many of the queries and this can really make for a sluggish site. So, as the number of subscribers and posts increases, you want to continually adjust your database memory utilization.

    I won't go into how exactly you do that but it is something to consider and there are numerous web sites to look at for performing these optimizations.
  4. xpl0iter Level 1

    Message Count:
    140
    Money:
    21
    Very informative article!
    This should help all the beginner admins and the experienced ones who didn't know this!
  5. EllaHalligan Just joined

    Message Count:
    11
    Money:
    22
    I was kind of wondering about the whole PM thing when I set up my vBulletin. I know people like to have them, but I was thinking of limiting them to about 25 or so. I really do want to keep the conversations on the boards, not in the PMs. Plus, as a "Mommy" board, the interactions on the board are generally the main thing anyway. (A lot of PM room tends to lead to cattiness and backstabbing when you get too many women in one place.)
  6. Geoffrey Senior Member Lv. 1

    Message Count:
    2,376
    Money:
    4,828
    Great tips, I'll be sure to utilize these.

    The only thing I'm not fond of is deleting members. I've never liked it and I'm not sure I can bring myself to do it, but I suppose if the server load and load times were bad enough, I could do it if I had to. *shiver*
  7. dojo Administrator

    Message Count:
    2,961
    Money:
    7,172
    Well, we talk about 'members' who have created accounts 3 years ago. That was my case (or similar). I really don't see any of them wanting to come back and post, since it's been 30-40 months since they joined and never posted ANYTHING. You don't need to do this in the first year probably, I haven't deleted inactives here either. As long as the database is still small and we don't have 4-6k members, I don't need to prune anything. Maybe, once we hit, I don't know few thousands members, I'll start cleaning some of the oldest unused accounts. But it's nothing you need to worry right now. Still, in the future, before you look for a dedicated to move the site onto, you can do this little trick and, by cleaning up 1-2K unused accounts you can see a huge improvement in the database.
  8. Geoffrey Senior Member Lv. 1

    Message Count:
    2,376
    Money:
    4,828
    Ah okay, I suppose after 3 or so years it would make sense to get rid of completely unused accounts.
    dojo likes this.

Share This Page