Database is missing indexes/primary keys warning - how to fix without occ?

I’m getting a number of missing indexes and primary key warnings on the Administration overview page.
They tell me to run some occ command to fix them, but I don’t have shell access to my hosting server.

Is there any other way to get those indexes fixed?
I do have access to my DB with phpMyAdmin, so I can run SQL scripts.

Also, does anyone know why I’m having these?
I’d expect the upgrade process to add any indexes/keys to the DB tables automatically. I had to do a number of manual upgrades (copy files, run setup when accessing the web app) and I probably didn’t run every point release.
I’m also on an older mySQL version I noticed, so perhaps that’s also a reason?

The developers have modified the database table layout and therefore additional indices are required to speed-up processes.

Due to the fact that the update process cannot evaluate how big your database is and that executing these kind of database related commands can last very long, they’re not executed automatically.

I think there are different ways to solve the problem.

  • ask your hoster to execute the required commands for you.
  • If you’re able to set-up cron jobs, use it to execute the occ commands for you.
  • Switch to a different hosting package to get console access on your server.
1 Like