I recently came across a new problem on one of the Joomla websites I manage.
Whereas the frontend (what a visitor see) of the Joomla site was as fast as ever, the Joomla backend administrator interface was suddenly paintakingly slow.
With slow I mean that e.g. login to the site which normally takes a few seconds now took several minutes, and might even fail alltogether.
Google Search
My first stop was to do a quick Google search to see if there was an obvious solution. Without success here I therefore decided to have a quick look at the installation itself.
Login to cPanel
My second stop was to login to the webhosting cPanel of the site in question, and see if there was anything unusual.
Within the cPanel I had a quick look at the database.
The reason for doing so, was that I a few times in the past have experienced that problems with Joomla sites could be due to a database curruption of some kind.
I instantly noticed that the database size was a staggering 950Mb in size. Typically a Joomla site like the one in question would only have a database between 5Mb - 10Mb depending on the amount of content.
phpMyAdmin
I therefore decided to investigate a bit further and entered phpMyAdmin to look at the tables within the database.
When looking at the database tables, I simply ordered these based on the size of the database tables, and found straight away that it was the "xxxx_session" table that was the culprit.
This table alone counted for about 98% of the total database size.
This table is storing temporary session information, and should be emptied automatically at regular intervals.
Obviously, this had not been emptied automatically, so I was bold enough to simply press the "empty" button on that table to clear out the whole table.
To completely empty this table might of course have a negative effect, but the problem itself for me outweighed this.
As soon as this table was emptied the admin interface was back to it old self again, working flawlessly and lightning fast again.
So, now I just have to monitor the site and the database table in question over the next few days to see if this table build itself up again. If so, then I have some more troubleshooting to do.