Tips:一些记录,一些笔记

2024/05/11
SATURDAY
胖猫说「我不要吃菜,我要吃麦当劳」
而在世界的另一端,人类失去了一位「数学与量化交易」大师「詹姆斯·西蒙斯」,他是百年来,唯一一个被誉为「征服市场的人」

01
错误详情
该错误发生在Django连接MySQL数据库的时候,它的错误详情如下所示:
/Users/adamhuan/PycharmProjects/django_daily_media/venv/bin/python Users/adamhuan/PycharmProjects/django_daily_media/manage.py runserver 8000Watching for file changes with StatReloaderPerforming system checks...System check identified no issues (0 silenced).Exception in thread django-main-thread:Traceback (most recent call last):File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/threading.py", line 1009, in _bootstrap_innerself.run()File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/threading.py", line 946, in runself._target(*self._args, **self._kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/utils/autoreload.py", line 64, in wrapperfn(*args, **kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/core/management/commands/runserver.py", line 136, in inner_runself.check_migrations()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/core/management/base.py", line 581, in check_migrationsexecutor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/migrations/executor.py", line 18, in __init__self.loader = MigrationLoader(self.connection)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/migrations/loader.py", line 58, in __init__self.build_graph()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/migrations/loader.py", line 235, in build_graphself.applied_migrations = recorder.applied_migrations()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/migrations/recorder.py", line 89, in applied_migrationsif self.has_table():File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/migrations/recorder.py", line 63, in has_tablewith self.connection.cursor() as cursor:File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/utils/asyncio.py", line 26, in innerreturn func(*args, **kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/backends/base/base.py", line 316, in cursorreturn self._cursor()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/backends/base/base.py", line 292, in _cursorself.ensure_connection()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/utils/asyncio.py", line 26, in innerreturn func(*args, **kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/backends/base/base.py", line 275, in ensure_connectionself.connect()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/utils/asyncio.py", line 26, in innerreturn func(*args, **kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/backends/base/base.py", line 256, in connectself.connection = self.get_new_connection(conn_params)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/utils/asyncio.py", line 26, in innerreturn func(*args, **kwargs)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/django/db/backends/mysql/base.py", line 256, in get_new_connectionconnection = Database.connect(**conn_params)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/pymysql/connections.py", line 358, in __init__self.connect()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/pymysql/connections.py", line 664, in connectself._request_authentication()File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/pymysql/connections.py", line 976, in _request_authenticationauth_packet = _auth.caching_sha2_password_auth(self, auth_packet)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/pymysql/_auth.py", line 266, in caching_sha2_password_authdata = sha2_rsa_encrypt(conn.password, conn.salt, conn.server_public_key)File "/Users/adamhuan/PycharmProjects/django_daily_media/venv/lib/python3.10/site-packages/pymysql/_auth.py", line 143, in sha2_rsa_encryptraise RuntimeError(RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods
02
解决方法
安装软件包:「cryptography」
(venv) (base) adamhuan@Leviathan django_daily_media %(venv) (base) adamhuan@Leviathan django_daily_media % pip listPackage Version------------------- -------asgiref 3.8.1Django 5.0.6djangorestframework 3.15.1pip 24.0PyMySQL 1.1.0setuptools 69.2.0sqlparse 0.5.0typing_extensions 4.11.0wheel 0.43.0(venv) (base) adamhuan@Leviathan django_daily_media %(venv) (base) adamhuan@Leviathan django_daily_media % pip install cryptographyLooking in indexes: https://mirrors.aliyun.com/pypi/simple/Collecting cryptographyDownloading https://mirrors.aliyun.com/pypi/packages/cf/c2/8226676b3a4916a12d6c243b1934894e333ea2e97d0233f3260955ed2673/cryptography-42.0.7-cp39-abi3-macosx_10_12_universal2.whl (5.9 MB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.9/5.9 MB 1.0 MB/s eta 0:00:00Collecting cffi>=1.12 (from cryptography)Downloading https://mirrors.aliyun.com/pypi/packages/c4/01/f5116266fe80c04d4d1cc96c3d355606943f9fb604a810e0b02228a0ce19/cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl (176 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 176.8/176.8 kB 1.2 MB/s eta 0:00:00Collecting pycparser (from cffi>=1.12->cryptography)Downloading https://mirrors.aliyun.com/pypi/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl (117 kB)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 117.6/117.6 kB 1.1 MB/s eta 0:00:00Installing collected packages: pycparser, cffi, cryptographySuccessfully installed cffi-1.16.0 cryptography-42.0.7 pycparser-2.22(venv) (base) adamhuan@Leviathan django_daily_media %
然后,再次尝试启动Django项目,就没有问题了:
/Users/adamhuan/PycharmProjects/django_daily_media/venv/bin/python Users/adamhuan/PycharmProjects/django_daily_media/manage.py runserver 8000Performing system checks...Watching for file changes with StatReloaderSystem check identified no issues (0 silenced).May 11, 2024 - 15:49:28Django version 5.0.6, using settings 'django_daily_media.settings'Starting development server at http://127.0.0.1:8000/Quit the server with CONTROL-C.
END
温馨提示
如果你喜欢本文,请分享到朋友圈,想要获得更多信息,请关注我。
文章转载自Nephilim,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




