Heroku NotSupportedError: MYSQL

I am having a hard time with this error, I am using a virtual invironment and I have MySQL 8+ installed but I keep getting the error below when I try to start Heroku using git push heroku master…

django.db.utils.NotSupportedError: MySQL 5.7 or later is required (found 5.6.50).

I am stuck and will really appreciate any help…
Full Error Below:
Traceback (most recent call last):
File “/app/manage.py”, line 22, in
main()
File “/app/manage.py”, line 18, in main
execute_from_command_line(sys.argv)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/init.py”, line 446, in execute_from_command_line
utility.execute()
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/init.py”, line 440, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py”, line 402, in run_from_argv
self.execute(*args, **cmd_options)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py”, line 448, in execute
output = self.handle(*args, **options)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py”, line 96, in wrapped
res = handle_func(*args, **kwargs)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/commands/migrate.py”, line 97, in handle
self.check(databases=[database])
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py”, line 475, in check
all_issues = checks.run_checks(
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/checks/registry.py”, line 88, in run_checks
new_errors = check(app_configs=app_configs, databases=databases)
File “/app/.heroku/python/lib/python3.9/site-packages/django/core/checks/model_checks.py”, line 36, in check_all_models
errors.extend(model.check(**kwargs))
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/models/base.py”, line 1552, in check
*cls._check_indexes(databases),
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/models/base.py”, line 1971, in _check_indexes
connection.features.supports_expression_indexes
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/functional.py”, line 57, in get
res = instance.dict[self.name] = self.func(instance)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/mysql/features.py”, line 371, in supports_expression_indexes
not self.connection.mysql_is_mariadb
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/functional.py”, line 57, in get
res = instance.dict[self.name] = self.func(instance)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/mysql/base.py”, line 439, in mysql_is_mariadb
return “mariadb” in self.mysql_server_info.lower()
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/functional.py”, line 57, in get
res = instance.dict[self.name] = self.func(instance)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/mysql/base.py”, line 425, in mysql_server_info
return self.mysql_server_data[“version”]
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/functional.py”, line 57, in get
res = instance.dict[self.name] = self.func(instance)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/mysql/base.py”, line 399, in mysql_server_data
with self.temporary_connection() as cursor:
File “/app/.heroku/python/lib/python3.9/contextlib.py”, line 119, in enter
return next(self.gen)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 694, in temporary_connection
with self.cursor() as cursor:
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/asyncio.py”, line 26, in inner
return func(*args, **kwargs)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 323, in cursor
return self._cursor()
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 299, in _cursor
self.ensure_connection()
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/asyncio.py”, line 26, in inner
return func(*args, **kwargs)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 282, in ensure_connection
self.connect()
File “/app/.heroku/python/lib/python3.9/site-packages/django/utils/asyncio.py”, line 26, in inner
return func(*args, **kwargs)
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 265, in connect
self.init_connection_state()
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/mysql/base.py”, line 257, in init_connection_state
super().init_connection_state()
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 232, in init_connection_state
self.check_database_version_supported()
File “/app/.heroku/python/lib/python3.9/site-packages/django/db/backends/base/base.py”, line 207, in check_database_version_supported
raise NotSupportedError(
django.db.utils.NotSupportedError: MySQL 5.7 or later is required (found 5.6.50).

Hi I have a similar problem have you perhaps found a solution?

I am also facing similar issue. Is it new?
Also switching to postgres has created another issue with converting bigint into uuid for cart.id

if your using ClearDB as your add-on Database on HEROKU change it… to something like

JawsDB

1 Like

I am also facing the same problem. Did anyone manage to find the solution?

I fixed the problem and I can’t remember exactly what it was, but it was very simple and may have been as simple as not using ClearDB and using something else.

Switching to JawsDB worked for me, thanks @codeAxen !

Make sure to update your DATABASE_URL (redo lesson 8 - Provisioning a MySQL database).