解决django 2026 ‘SSL connection error : unknow error number’

#1.在django 数据库配置中 增加
DATABASES = {  # 数据库配置
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        "NAME": "xxxxx",
        'USER': 'xxxxx',
        'PASSWORD': 'xxxxxx',
        'PORT': 'xxxxx',
        'HOST': 'x.x.x.x',
        'CONN_MAX_AGE': 60 * 1,
        'OPTIONS': {'init_command': 'SET default_storage_engine=INNODB;',
                    'ssl_mode': 'DISABLED', # 取消ssl认证}
    }
}

打开报错的base.py 文件,将报错的两句注释掉

#if version < (1, 3, 13): # raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)

再次启动时报错  AttributeError: 'str' object has no attribute 'decode'

找到报错的 operations.py 文件,将报错部分的decode修改成
query = query.encode(errors='replace') if isinstance(query,str) else query.decode(errors='replace')

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个警告提示了在检查数据库连接的一致迁移历史时遇到了 SSL 连接错误。这可能是由于数据库连接配置中的 SSL 设置不正确导致的。 要解决此问题,你可以尝试以下步骤: 1. 确保数据库连接配置正确:在你的 `settings.py` 文件中,检查 `DATABASES` 配置中的 SSL 相关参数是否正确设置。例如,如果你使用的是 MySQL 数据库,可以尝试将 `'OPTIONS'` 部分添加到 `'default'` 数据库配置中,并设置 `'ssl': {'sslmode': 'disable'}`。这将禁用 SSL 连接。 示例: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'your_database_name', 'USER': 'your_username', 'PASSWORD': 'your_password', 'HOST': 'your_host', 'PORT': 'your_port', 'OPTIONS': { 'ssl': {'sslmode': 'disable'}, }, } } ``` 根据你使用的数据库类型,可能会有其他 SSL 相关参数需要设置,请查阅相应数据库的文档进行配置。 2. 检查数据库服务器的 SSL 配置:确保你的数据库服务器已正确配置 SSL 选项,并且你所使用的 SSL 证书或密钥文件可用且有效。 3. 更新 Django 版本或相关依赖库:有时,升级 Django 版本或相关依赖库可以解决 SSL 连接问题。尝试更新 Django 版本或升级相关依赖库,以确保使用的版本支持 SSL 连接或修复了相关问题。 如果以上步骤都没有解决问题,请提供更多细节或错误日志,以便我能够更好地帮助你解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值