【发布时间】:2019-08-25 18:57:21
【问题描述】:
在使用 Python 3.7.2 的虚拟环境中,我尝试运行 django 的 python manage.py startap myapp 并收到此错误:
raise ImproperlyConfigured('SQLite 3.8.3 or later is required (found %s).' % Database.sqlite_version)
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.8.2).
我正在运行 Ubuntu Trusty 14.04 服务器。
如何将我的 sqlite 版本升级或更新到 >=3.8.3?
我跑了
$ apt list --installed | grep sqlite
libaprutil1-dbd-sqlite3/trusty,now 1.5.3-1 amd64 [installed,automatic]
libdbd-sqlite3/trusty,now 0.9.0-2ubuntu2 amd64 [installed]
libsqlite3-0/trusty-updates,trusty-security,now 3.8.2-1ubuntu2.2 amd64 [installed]
libsqlite3-dev/trusty-updates,trusty-security,now 3.8.2-1ubuntu2.2 amd64 [installed]
python-pysqlite2/trusty,now 2.6.3-3 amd64 [installed]
python-pysqlite2-dbg/trusty,now 2.6.3-3 amd64 [installed]
sqlite3/trusty-updates,trusty-security,now 3.8.2-1ubuntu2.2 amd64 [installed]
和
sudo apt install --only-upgrade libsqlite3-0
Reading package lists... Done
Building dependency tree
Reading state information... Done
libsqlite3-0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 14 not upgraded.
编辑:
settings.py 是库存标准:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
【问题讨论】:
-
这并不容易,因为 Ubuntu 14.04 带有 SQLite 3.8.2 并且没有更新包。见askubuntu.com/questions/580355/…
-
可以显示你的settings.py数据库配置
-
自己从源代码编译,看看 Python 是否在
/usr/local/中选择了更新版本而不是系统版本?