It is a bit strange that you hardly use 2GB of your RAM. And you just have a swap of 1 GB which is fully used. Regarding the size of your database tables, for best performance, you should give large enough caches to the database.
Also worth checking is iotop in case processes slow down the system due to disk access. If it is the database, then this can be optimized with the cache settings especially with so much unused RAM in your case.