django找不到新的sqlite版本? (需要SQLite 3.8.3或更高版本(找到3.7.17))

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django找不到新的sqlite版本? (需要SQLite 3.8.3或更高版本(找到3.7.17))相关的知识,希望对你有一定的参考价值。

我已经克隆了一个django项目到Centos 7 vps并且我现在正试图运行它,但是在尝试migrate时我得到了这个错误:

$ python manage.py migrate
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).

当我检查sqlite的版本时,它是3.7.17,所以我从sqlite网站下载了最新版本并用旧版本替换它,现在当我对它进行版本时,它给出了:

$ sqlite3 --version
3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7

仍然当我尝试迁移项目时,我得到与之前完全相同的消息,这意味着找不到更新的版本。我是linux新手,非常感谢任何帮助。

答案

要检查哪个版本的SQLite Python正在使用:

$ python
Python 3.7.3 (default, Apr 12 2019, 16:23:13) 
>>> import sqlite3
>>> sqlite3.sqlite_version
'3.27.2'

对我来说,新版本的sqlite3在/ usr / local / bin中,所以我不得不重新编译Python,告诉它看看:

sudo LD_RUN_PATH=/usr/local/lib ./configure --enable-optimizations
sudo LD_RUN_PATH=/usr/local/lib make altinstall

我希望有所帮助。

另一答案

我在CentOS 7.6Python 3.7.3版本中遇到了同样的错误。我认为你正在使用Django 2.2.*一些版本。在最新的Django 2.2,他们改变了SQLIte版本,这是你的问题的原因。

这是关于release notesDjango 2.2SQLite

SQLite的最低支持版本从3.7.15增加到3.8.3。

因此,您可以使用此命令安装最新版本的Django 2.1

pip install Django==2.1.*

我认为这个问题已经解决了。

另一答案

我遇到了同样的问题,我在这方面苦苦挣扎了一段时间。对我来说,最好的解决方案是在settings.py文件中注释掉DATABASES部分。

由于我不想使用SQLite数据库,因此问题不再存在。稍后,您可以使用对您有效的db更新DATABASE信息。

以上是关于django找不到新的sqlite版本? (需要SQLite 3.8.3或更高版本(找到3.7.17))的主要内容,如果未能解决你的问题,请参考以下文章

安装 Django 2.0.2 找不到版本

pdo sqlite 找不到驱动程序... php 文件未处理

消息 - 找不到安装的python-django或python3-django版本

Elastic Beanstalk,Django 部署错误,找不到满足要求的版本 pkg-resources==0.0.0

AWS Elastic Beanstalk 需要 SQLite 3.8.3 或更高版本才能用于 Django 应用程序

Django - 安装 mysqlclient 错误:需要 mysqlclient 1.3.13 或更高版本;你有 0.9.3