本文主要是介绍在CentOS 7.5上升级SQLite3过程实录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
业务起因
我在CentOS 7.5上安装python3.7+Django 3.1.7并创建项目时,发现启动demo例子出错了,出错信息如下:
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
大致意思是,目前CentOS 7.5上发现的SQLite3的版本号是3.7.17,但是Django 3.1.17目前需要3.8.3以上的版本才行。
为此,我还特地查看了一下当前系统上的SQLite3的版本情况,的确是3.7.17,参见截图
看来只能升级本机上的SQLite3版本了,下面是升级方法。
升级SQLite3详情
基本思路是,从SQLite3的官网
https://www.sqlite.org/download.html
下载最新版本,这里当前我看到的最新版本是3.34.1
下面从源码安装
wget https://www.sqlite.org/2021/sqlite-autoconf-3340100.tar.gz
tar zxvf sqlite-autoconf-3340100.tar.gz
cd sqlite-autoconf-3340100
./configure
make
make install
默认安装位置在/usr/local/bin下面,通过下面的方法,观察安装的位置
find / -name sqlite3
发现原来的SQLite3在/bin/sqlite3, 将旧版本改名,将新安装的版本新建一个符号链接
mv /bin/sqlite3 /bin/sqlite3_old
ln -s /usr/local/bin/sqlite3 /bin/sqlite3
同时将路径传递给共享库,动态库的安装路径在/usr/local/lib下面,更新LD_LIBRARY_PATH变量
vim ~/.bashrc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
保存退出之后,执行刷新
source ~/.bashrc
这样做的目的是,为了让当前安装的SQLite3新版本能立即生效,而不需要重启系统才能生效。
检查升级后SQLite3的生效情况
有两个校验方法,必须都要验证一遍。
验证方法一,重新检查sqlite3的版本号
which sqlite3
sqlite3 --version
发现sqlite3已经升级到3.34.1上了
另一种验证方法
python3
>>> import sqlite3
>>> sqlite3.sqlite_version
>>> exit()
发现也同步改正过来了。
参考文献
[1].https://blog.csdn.net/weixin_44110998/article/details/103499213
这篇关于在CentOS 7.5上升级SQLite3过程实录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!