• Centos7 虚拟环境安装Django 出现SQLite版本问题


    解决方法1:给django降级

    卸载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

    (demo1) [root@hsz opt]# wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz

    (demo1) [root@hsz opt]# tar -zxvf sqlite-autoconf-3270200.tar.gz

    # 编译安装

    (demo1) [root@hsz opt]# cd sqlite-autoconf-3270200/

    (demo1) [root@hsz sqlite-autoconf-3270200]# ./configure --prefix=/usr/local

    (demo1) [root@hsz sqlite-autoconf-3270200]# make && make install

    # 查找最新版与旧版及更新操作

    ## 查看有哪几个 sqlite3

    (demo1) [root@hsz sqlite-autoconf-3270200]# find /usr/ -name sqlite3

    /usr/bin/sqlite3

    /usr/lib64/python2.7/sqlite3

    /usr/local/bin/sqlite3

    /usr/local/python3/lib/python3.6/site-packages/django/db/backends/sqlite3

    /usr/local/python3/lib/python3.6/sqlite3

    ## 查看旧版本Centos7自带的sqlite3版本

    (demo1) [root@hsz sqlite-autoconf-3270200]# /usr/bin/sqlite3 -version

    3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668

    ## 最新安装的sqlite3版本

    (demo1) [root@hsz sqlite-autoconf-3270200]# /usr/local/bin/sqlite3 -version

    3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7

    # 备份旧的sqlite3

    (demo1) [root@hsz sqlite-autoconf-3270200]# mv /usr/bin/sqlite3  /usr/bin/sqlite3_old

    # 软链接将新的sqlite3设置到/usr/bin目录下

    (demo1) [root@hsz sqlite-autoconf-3270200]# ln -s /usr/local/bin/sqlite3   /usr/bin/sqlite3

    # 查看当前全局sqlite3的版本

    [root@hsz ~]# sqlite3 --version

    3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7

    #将路径传递给共享库

    # 设置开机自启动执行,可以将下面的export语句写入 ~/.bashrc 文件中,如果如果你想立即生效,可以执行source ~/.bashrc 将在每次启动终端时执行

    [root@djangoServer ~]# export LD_LIBRARY_PATH="/usr/local/lib"

    # 查看python环境中sqlite3 是否已经更新

    [root@hsz ~]# python3

    Python 3.6.6 (default, Sep 12 2019, 10:27:00)

    [GCC 4.8.5 20150623 (Red Hat 4.8.5-36)] on linux

    Type "help", "copyright", "credits" or "license" for more information.

    >>> import sqlite3

    >>> sqlite3.sqlite_version

    '3.27.2'

    >>>

    如果这种情况出现在虚拟环境中,没有更新的话,重启下虚拟环境,然后运行source ~/.bashrc后再重现进入虚拟环境即可

  • 相关阅读:
    PHP 处理接口保证数据安全性
    zeromq使用模式实验总结
    文件描述符设置
    配置openssh实现sftp远程文件上传
    系统信号(signal)与其他(定时器,退出清理等)
    Python Subprocess Popen 管道阻塞问题分析解决
    fastcgi协议之一:定义
    命名空间与自动加载机制
    PSR规范
    细说php的异常和错误处理机制
  • 原文地址:https://www.cnblogs.com/JIM-FAN/p/14679938.html
Copyright © 2020-2023  润新知