Django 版本与 Sqlite3 版本异常

网友投稿 1199 2022-05-30

(proenv) [yuchuan@TXMaster edupro]$ python manage.py startapp minapp

异常代码:

django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).

解决方法1:给django降级

Django 版本与 Sqlite3 版本异常

卸载django:   pip uninstall django 安装低版本:   pip install django==2.1.8

解决方法2:升级SQLite

1.查看系统的sqlte3的版本

sqlite3 --version

Centos系统自带的sqlite3版本偏低,在上面的错误提示中要求需要SQLite 3.8.3 or later,那么就需要去升级 SQlite 的版本了。

2.Centos7安装最新的sqlite3并设置更新python库版本

#更新SQLite 3 #获取源代码(在主目录中运行) [root@djangoServer ~]# cd ~ [root@djangoServer ~]# wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz [root@djangoServer ~]# tar -zxvf sqlite-autoconf-3270200.tar.gz   #构建并安装 [root@djangoServer ~]# cd sqlite-autoconf-3270200 [root@djangoServer sqlite-autoconf-3270200]# ./configure --prefix=/usr/local [root@djangoServer sqlite-autoconf-3270200]# make && make install [root@djangoServer sqlite-autoconf-3270200]# find /usr/ -name sqlite3 /usr/bin/sqlite3 /usr/lib64/python2.7/sqlite3 /usr/local/bin/sqlite3 /usr/local/python3/lib/python3.7/site-packages/django/db/backends/sqlite3 /usr/local/python3/lib/python3.7/sqlite3 [root@djangoServer sqlite-autoconf-3270200]#    #不必要的文件,目录删除 [root@djangoServer sqlite-autoconf-3270200]# cd ~ [root@djangoServer ~]# ls anaconda-ks.cfg  sqlite-autoconf-3270200  sqlite-autoconf-3270200.tar.gz [root@djangoServer ~]#  [root@djangoServer ~]# rm -rf sqlite-autoconf-3270200.tar.gz [root@djangoServer ~]# rm -rf sqlite-autoconf-3270200   #检查版本 ## 最新安装的sqlite3版本 [root@djangoServer ~]# /usr/local/bin/sqlite3 --version 3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7 [root@djangoServer ~]#    ## Centos7自带的sqlite3版本 [root@djangoServer ~]# /usr/bin/sqlite3 --version 3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668 [root@djangoServer ~]#    ## 可以看到sqlite3的版本还是旧版本,那么需要更新一下。 [root@djangoServer ~]# sqlite3 --version 3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668 [root@djangoServer ~]#    ## 更改旧的sqlite3 [root@djangoServer ~]# mv /usr/bin/sqlite3  /usr/bin/sqlite3_old   ## 软链接将新的sqlite3设置到/usr/bin目录下 [root@djangoServer ~]# ln -s /usr/local/bin/sqlite3   /usr/bin/sqlite3   ## 查看当前全局sqlite3的版本 [root@djangoServer ~]# sqlite3 --version 3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7 [root@djangoServer ~]#    #将路径传递给共享库 # 设置开机自启动执行,可以将下面的export语句写入 ~/.bashrc 文件中,如果如果你想立即生效,可以执行source 〜/.bashrc 将在每次启动终端时执行 [root@djangoServer ~]# export LD_LIBRARY_PATH="/usr/local/lib"   #检查Python的SQLite3版本 [root@djangoServer ~]# python3 Python 3.7.1 (default, May  3 2019, 09:55:04)  Type 'copyright', 'credits' or 'license' for more information IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.   In [1]: import sqlite3                                                        In [2]: sqlite3.sqlite_version                                              Out[2]: '3.27.2'   In [3]: exit                                                                [root@djangoServer ~]#

软件开发 TCP/IP IoT 云计算 机器学习

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:贵阳金利沅与华为风雨同舟,成就“最佳拍档”
下一篇:java杂记(二)
相关文章