by Ken Task.
change_structure_exception and might be key.
The environment checks check version and global config/setup but don't think it checks to see if the DB user under which the check is run has the ability to 'alter' (change structure?).
Rather than use a DB user just for Moodle, use the superuser account for the DB server ... see if that makes a difference or not.
This suggestion is a guess!
'spirit of sharing', Ken