首页 > 在CentOS 7.5上升级SQLite3过程实录

在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

 

更多相关:

  •     定位到根目录 cd/ 安装wget  yum install wget 下载nodejs(可以去下载 | Node.js 中文网中国官网查看最新版的下载地址) wget https://nodejs.org/download/release/v12.13.1/node-v12.13.1-linux-x...

  •   vim /etc/profile 然后在最后加入下面的代码: export  JAVA_HOME=/usr/local/java/jdk export  PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:$JAVA_HOME/...

  • 关于内核模块编译的过程中,往往我们仅仅需要其中一个小的模块,但是却因为内核源码的庞杂而止步与模块依赖的筛选过程中。 为了更加便捷得对内核各个模块进行管理,这里提供一个小脚本来进行指定模块相关得模块留存,不相关的模块代码自动清除。 单独对内核指定模块进行编译,主要使用如下命令: 在相对目录为:../rpmbuild/BUILD/ker...

  • 在执行脚本上加入如下配置即可#!/bin/bashJAVA_HOME=/usr/java/jdk1.8.0_152export PATH=$PATH:$JAVA_HOME/bin 转载于:https://www.cnblogs.com/jimw/p/11126437.html...

  •   这是由于没有保存文档导致 说明: [Finished in 19.4s with exit code 1]-表示执行时间 [shell_cmd: python3 -u "/Volumes/B/我的工作文档/case/superman_wap/进单/MSjindan.py"] -表示执行的shell命令 [dir: /Volum...