Bug #112681 mysql5.7 and mysql8.0.32 executed at the same time,report a charset error
Submitted: 11 Oct 2023 7:10 Modified: 11 Nov 2023 9:40
Reporter: bear chen Email Updates:
Status: No Feedback Impact on me:
None 
Category:Connector / Python Severity:S3 (Non-critical)
Version:8.0.32 OS:Any
Assigned to: MySQL Verification Team CPU Architecture:Any

[11 Oct 2023 7:10] bear chen
Description:
mysql5.7 and mysql8.0.32 executed at the same time,report a charset error

How to repeat:
Python3 mysql-connector-python==8.0.33

When mysql5.7 and mysql8.0.32 are executed at the same time, a charset error will be reported.

Maybe 5.7 charset is utf8, and 8.0.32 charset is utf8mb3?

    conn = mysql.connector.connect(**conf.get_var('db_a'))
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\pooling.py", line 294, in connect
    return MySQLConnection(*args, **kwargs)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\connection.py", line 164, in __init__
    self.connect(**kwargs)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\abstracts.py", line 1181, in connect
    self._open_connection()
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\connection.py", line 581, in _open_connection
    self.set_converter_class(self._converter_class)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\abstracts.py", line 1364, in set_converter_class
    self.converter = convclass(charset_name, self._use_unicode)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\conversion.py", line 168, in __init__
    MySQLConverterBase.__init__(self, charset, use_unicode, str_fallback)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\conversion.py", line 72, in __init__
    self.set_charset(charset)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\conversion.py", line 89, in set_charset
    self.charset_id = CharacterSet.get_charset_info(self.charset)[0]
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\constants.py", line 822, in get_charset_info
    info = cls.get_default_collation(charset)
  File "C:\Users\hotpu\AppData\Local\Programs\Python\Python37\lib\site-packages\mysql\connector\constants.py", line 790, in get_default_collation
    raise ProgrammingError(f"Character set '{charset}' unsupported")
mysql.connector.errors.ProgrammingError: Character set 'utf8' unsupported
[11 Oct 2023 9:40] MySQL Verification Team
Hi Mr. chen,

If you are using 8.0 server, you should use C/Python 8.0 as well.

If that does not help, then, you should change your program.

It is true that 8.0 does not support utf8, so your definition of DML and DDL statements should be using character sets that 8.0 supports. 

It is all explained in our Reference Manual.
[12 Nov 2023 1:00] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".