django 连接到 mysql 和 mongodb
Posted
技术标签:
【中文标题】django 连接到 mysql 和 mongodb【英文标题】:django connect to mysql and mongodb 【发布时间】:2021-08-12 14:16:57 【问题描述】:我有 2 个数据库 mysql 和 mongo。在 mysql 上人们保存所有数据,在 mongo 上只保存图像。我是这样定义的
DATABASES =
'default':
'ENGINE': 'django.db.backends.mysql',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '1*****',
'PORT': '1*****',
'TEST':
'NAME': '*****',
# 'CHARSET': 'utf8',
,
'mongodb':
'ENGINE': 'djongo',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '*****',
'PORT': '*****',
'TEST':
'NAME': '*****',
# 'CHARSET': 'utf8',
,
现在我想在 mongodb 上运行 inspectdb,我发现了这个错误
manage.py inspectdb --database mongodb
django.db.utils.ConnectionDoesNotExist: The connection mongodb doesn't exist
主机密码端口没问题
【问题讨论】:
【参考方案1】:您在与'TEST'
等相同 级别写入mongodb
,这意味着您只定义了一个 数据库,而mongodb
是一个那个字典的键。
因此,您应该像default
数据库一样在相同 级别指定mongodb
数据库:
DATABASES =
'default':
'ENGINE': 'django.db.backends.mysql',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '1*****',
'PORT': '1*****',
'TEST':
'NAME': '*****',
# 'CHARSET': 'utf8',
,
'mongodb':
'ENGINE': 'djongo',
'NAME': '*****',
'USER': '*****',
'PASSWORD': '*****',
'HOST': '*****',
'PORT': '*****',
'TEST':
'NAME': '*****',
# 'CHARSET': 'utf8',
,
【讨论】:
以上是关于django 连接到 mysql 和 mongodb的主要内容,如果未能解决你的问题,请参考以下文章
Django docker 容器无法连接到 mysql 容器,出现错误“无法连接到 'db' (111) 上的 MySQL 服务器”)
无法使用便携式 Xampp 通过 Django 连接到 MySQL
如何使用 Windows 将我的 Django 项目连接到 MySql?