【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”
mysql正常安装,能够创建数据库。django设置里关于数据库的设置如下:
'ENGINE': 'django.db.backends.mysql',
'NAME': os.path.join(BASE_DIR, 'mysql'),
'USER': 'root',
'PASSWORD': '',
'HOST': '127.0.0.1',
'PORT': '3306',
但在执行python manage.py makemigrations时报错:
segmentation fault
请教各位大神,这是什么情况?
解决了,是因为mysql8.0版本后的加密方式改了,但django还是按照老版本的加密方式解密,所有无法正确识别密码。只要按照https://blog.csdn.net/dimming_123/article/details/80842672里的方法把加密方式改回老版本的就行了。
NAME那个字段填上你的数据库名字
https://docs.djangoproject.com/en/2.1/ref/settings/
'ENGINE': 'django.db.backends.mysql',
'NAME': os.path.join(BASE_DIR, 'poll_web'),
'USER': 'root',
'PASSWORD': '',
'HOST': '127.0.0.1',
'PORT': '3306',
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| poll_web |
| sys |
+--------------------+
我新建了一个数据库叫poll_web,改了对应的地方还是报的同样的错。
引用来自“多首”的评论
'ENGINE': 'django.db.backends.mysql',
'NAME': os.path.join(BASE_DIR, 'poll_web'),
'USER': 'root',
'PASSWORD': '',
'HOST': '127.0.0.1',
'PORT': '3306',
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| poll_web |
| sys |
+--------------------+
我新建了一个数据库叫poll_web,改了对应的地方还是报的同样的错。
意思是NAME那里只需要写"poll_web", 不需要os.path. NAME代表的是数据库名字,而不是路径