If you experience an "Exception: Failed to set database collation" error during the installation of Mobility Suite 5.3.1 in the /var/log/nukona/appcenter_setup.log file, then either of the following commands will need to be run from the MySQL prompt on the MySQL database:
ALTER DATABASE yourdatabase DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
The above command would be used to modify an existing MySQL database to use with Mobility Suite 5.3.1. The below command would need to be used if you are creating a new database for use with Mobility Suite 5.3.1:
CREATE DATABASE yourdatabase CHARACTER SET utf8 COLLATE utf8_bin;
These steps will need to be run on/for both the appstore and mdmcore databases for installation to proceed.
The full traceback of the expected error to be seen in the /var/log/nukona/appcenter_setup.log file on the Mobility Suite is as follows:
timestamp=2123-12-25 23:23:23.123 +0000,logname=load-settings,level=ERROR,msg=errors: Traceback (most recent call last):
File "configure_core.py", line 175, in <module>
database_processor.process()
File "/usr/local/mdmcore/bootstrap/processors/database_processor.py", line 93, in process
raise Exception('Failed to set database collation')
Exception: Failed to set database collation
timestamp=2123-12-25 23:23:23.123 +0000,logname=load-settings,level=ERROR,msg=module mdmcore had an exception: Unexpected returncode: 1
timestamp=2123-12-25 23:23:23.123 +0000,logname=load-settings,level=ERROR,Traceback (most recent call last):
File "/opt/nukona/python/lib/python2.7/site-packages/load_settings/api.py", line 414, in run_load_settings
if not self.processors[section.name].process(section.settings, self.args, all_settings):
File "/opt/nukona/python/lib/python2.7/site-packages/load_settings/processors/mdmcore.py", line 727, in process
cwd=os.path.join(other_args['mdmcore'], 'bootstrap'))
File "/opt/nukona/python/lib/python2.7/site-packages/load_settings/facts/subp.py", line 38, in __init__
self.run()
File "/opt/nukona/python/lib/python2.7/site-packages/load_settings/facts/subp.py", line 75, in run
raise self.FactError('Unexpected returncode: %s' % self.returncode)
FactError: Unexpected returncode: 1
For more information on creating a MySQL database for use with Mobility Suite refer to the connect article entitled, "How to create a MySQL database for use with Mobility Suite."