ImproperlyConfigured(“需要SQLite 3.8.3或更高版本(已找到%s)。”%Database.sqlite_version)

时间:2020-03-24 07:48:59

标签: python django sqlite

ImproperlyConfigured(“需要SQLite 3.8.3或更高版本(已找到%s)。”%Database.sqlite_version)django.core.exceptions.ImproperlyConfigured:SQLite 3.8.3或更高版本

我在django项目中遇到了这个问题,sqlite3和django的版本不匹配。这是在centos7 env上发生的,我也想要一个在容器env中可用的便捷解决方案。

4 个答案:

答案 0 :(得分:2)

我通过使用以下命令升级我的sqlite3版本来解决此问题:

cd ~ && wget https://www.sqlite.org/2020/sqlite-autoconf-3320100.tar.gz && tar xvfz sqlite-autoconf-3320100.tar.gz && cd sqlite-autoconf-3320100 && ./configure && make && make install

我正在使用ElasticBeanstalk进行设置,因此我在.ebextensions文件夹中添加了一个.config文件,并将其放入其中:

commands:
  01_upgrade_sqlite:
    command: "cd ~ && wget https://www.sqlite.org/2020/sqlite-autoconf-3320100.tar.gz && tar xvfz sqlite-autoconf-3320100.tar.gz && cd sqlite-autoconf-3320100 && ./configure && make && make install"

答案 1 :(得分:0)

就我而言,使用 kioddant 指令升级 sqlite 仅起到了部分作用。 SQLite 已经安装,但是python 仍然指的是旧的sqlite 版本。

解决此问题的附加步骤是设置环境变量 LD_LIBRARY_PATH="/usr/local/lib"

将其添加到 .ebextensions/*.config

option_settings:
  "aws:elasticbeanstalk:application:environment":
    LD_LIBRARY_PATH: "/usr/local/lib"

答案 2 :(得分:-1)

您有一个过时的SQLite版本,您可以尝试以下方法:

python -m pip install -U sqlite

答案 3 :(得分:-1)

我现在找到了一个可用的解决方案:将Django的版本从'Django == 3.0.4'更改为'Django == 2.1.8'。

pip install django == 2.1.8 -i https://mirrors.aliyun.com/pypi/simple/