查看: 49|回覆: 0

centos 7.9 下升级自带 sqlite3

[複製鏈接]

0

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2011-4-2
發表於 2019-9-20 10:44:00 | 顯示全部樓層 |閲讀模式

问题

在 centos 7.9 上面运行 django 2.2 开发服务器时出现:

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

原因时系统自带 sqlite3 版本太低,解决方法是下载源码编译升级就可以了。

升级

安装依赖

yum install -y wget tar gzip gcc make expect
# 版本列表:https://www.sqlite.org/chronology.html
# 下载源码
wget --no-check-certificate https://www.sqlite.org/src/tarball/sqlite-3.39.3.tar.gz

# 编译
tar zxvf sqlite-3.39.3.tar.gz
cd sqlite-3.39.3

export CFLAGS="-DSQLITE_ENABLE_FTS3 \
    -DSQLITE_ENABLE_FTS3_PARENTHESIS \
    -DSQLITE_ENABLE_FTS4 \
    -DSQLITE_ENABLE_FTS5 \
    -DSQLITE_ENABLE_JSON1 \
    -DSQLITE_ENABLE_LOAD_EXTENSION \
    -DSQLITE_ENABLE_RTREE \
    -DSQLITE_ENABLE_STAT4 \
    -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT \
    -DSQLITE_SOUNDEX \
    -DSQLITE_TEMP_STORE=3 \
    -DSQLITE_USE_URI \
    -O2 \
    -fPIC"
export PREFIX="/usr/local"
#LIBS="-lm" ./configure --disable-tcl --enable-shared --enable-tempstore=always --prefix="$PREFIX"
LIBS="-lm" ./configure --enable-shared --enable-tempstore=always --prefix="$PREFIX"

make && make install

# 替换系统低版本 sqlite3
mv /usr/bin/sqlite3  /usr/bin/sqlite3_old
ln -s /usr/local/bin/sqlite3   /usr/bin/sqlite3
echo "/usr/local/lib" > /etc/ld.so.conf.d/sqlite3.conf
ldconfig
sqlite3 -version
  • 安装的 3.39.3,但是显示版本为:3.40.0 2022-09-12 16:07:24 ...,原因未知

再次启动运行 django 2.2 开发服务器就 ok 了。



来源:https://www.cnblogs.com/leffss/p/11555556.html
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部