  
      @cached_property
      def has_zoneinfo_database(self):
          cursor = self.connection.cursor()
          cursor.execute("SELECT 1 FROM mysql.time_zone LIMIT 1")
          return cursor.fetchone() is not None
  
 
</s> remove                                          "definitions installed?")
 </s> add                                          "definitions and pytz installed?")
        # MySQL accepts full time zones names (eg. Africa/Nairobi) but rejects
        # abbreviations (eg. EAT). When pytz isn't installed and the current
        # time zone is LocalTimezone (the only sensible value in this
        # context), the current time zone name will be an abbreviation. As a
        # consequence, MySQL cannot perform time zone conversions reliably.
        if pytz is None:
            return False

        # Test if the time zone definitions are installed.
  
      @cached_property
      def has_zoneinfo_database(self):
        # MySQL accepts full time zones names (eg. Africa/Nairobi) but rejects
        # abbreviations (eg. EAT). When pytz isn't installed and the current
        # time zone is LocalTimezone (the only sensible value in this
        # context), the current time zone name will be an abbreviation. As a
        # consequence, MySQL cannot perform time zone conversions reliably.
        if pytz is None:
            return False

        # Test if the time zone definitions are installed.
          cursor = self.connection.cursor()
          cursor.execute("SELECT 1 FROM mysql.time_zone LIMIT 1")
          return cursor.fetchone() is not None
  
keep keep add keep keep keep keep
 Fixed test failures on MySQL.

Some tests failed when the time zone definitions were loaded in MySQL
and pytz wasn't installed. This setup isn't supported. 
django/db/backends/mysql/base.py