Encryption on a shared server

I want to store some secure information in a mySQL database. However, I’m on a shared server. I’m happy that Dreamhost runs Apache under my username so I can apply user-only permissions on my scripts. I’m aware I can also keep my GPG key file as user-only. However, does anyone have a better idea than keeping a private key file on the server? If not, is there any reason I can’t just use symmetric encryption instead of hassling with public/private key encryption since both keys will be on the same server anyway?