[docker] mysql deshabilitar ssl

mysql deshabilitar ssl

Hace poco inicié mysql con docker, pero my.cnfno sé dónde poner el archivo de configuración, utilicé la última versión de
mysql conectada con django

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "manage.py", line 25, in <module>
    main()
  File "manage.py", line 21, in main
    execute_from_command_line(sys.argv)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\base.py", line 89, in wrapped
    res = handle_func(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\commands\migrate.py", line 75, in handle
    self.check(databases=[database])
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\management\base.py", line 423, in check
    databases=databases,
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\checks\registry.py", line 76, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\core\checks\database.py", line 13, in check_database_backends
    issues.extend(conn.validation.check(**kwargs))
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\mysql\validation.py", line 9, in check
    issues.extend(self._check_sql_mode(**kwargs))
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\mysql\validation.py", line 13, in _check_sql_mode
    if not (self.connection.sql_mode & {
    
    'STRICT_TRANS_TABLES', 'STRICT_ALL_TABLES'}):
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\functional.py", line 48, in __get__
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\mysql\base.py", line 405, in sql_mode
    sql_mode = self.mysql_server_data['sql_mode']
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\functional.py", line 48, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\mysql\base.py", line 366, in mysql_server_data
    with self.temporary_connection() as cursor:
  File "E:\python3.7\lib\contextlib.py", line 112, in __enter__
    return next(self.gen)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 603, in temporary_connection
    with self.cursor() as cursor:
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\asyncio.py", line 33, in inner
    return func(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 259, in cursor
    return self._cursor()
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 235, in _cursor
    self.ensure_connection()
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\asyncio.py", line 33, in inner
    return func(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 219, in ensure_connection
    self.connect()
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 219, in ensure_connection
    self.connect()
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\asyncio.py", line 33, in inner
    return func(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\base\base.py", line 200, in connect
    self.connection = self.get_new_connection(conn_params)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\utils\asyncio.py", line 33, in inner
    return func(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\django\db\backends\mysql\base.py", line 234, in get_new_connection
    connection = Database.connect(**conn_params)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\MySQLdb\__init__.py", line 84, in Connect
    return Connection(*args, **kwargs)
  File "E:\code\stock-analys-web\stock-analys-web\venv\lib\site-packages\MySQLdb\connections.py", line 179, in __init__
    super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (2026, 'SSL connection error: unknown error number')

Después de Baidu, debe agregar un parámetro skip_ssl
para configurar en el directorio de configuración y asignarlo a /etc/mysql/conf.d. Debe crear my.cnf en el directorio de configuración, de modo que pueda especificar ejecutar mysql con la configuración modificada. Aquí necesitas deshabilitar ssl

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M

# Remove leading # to revert to previous value for default_authentication_plugin,
# this will increase compatibility with older clients. For background, see:
# https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
# default-authentication-plugin=mysql_native_password
skip-host-cache
skip-name-resolve
datadir=/var/lib/mysql
socket=/var/run/mysqld/mysqld.sock
secure-file-priv=/var/lib/mysql-files
user=mysql
# 需要禁用ssl
skip_ssl

pid-file=/var/run/mysqld/mysqld.pid
[client]
socket=/var/run/mysqld/mysqld.sock

!includedir /etc/mysql/conf.d/

configuración docker-compose mysql

version: '3'
services:
  mysql:
    image: mysql
    restart: always
    container_name: mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      TZ: Asia/Shanghai
    ports:
      - 3306:3306
    volumes:
      - /root/docker-compose/mysql/data:/var/lib/mysql
      - /root/docker-compose/mysql/config:/etc/mysql/conf.d
    command:
      --max_connections=1000
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --default-authentication-plugin=mysql_native_password

Guess you like

Origin blog.csdn.net/myt2000/article/details/129161040