Problema ao atualizar a versão Sqlite3 no CentOS para Python
Eu tenho CentOS 6no meu sistema e estou tentando atualizar o SQLite para Python. Eu instalei da fonte e executei a sqlite --versionversão de retorno 3.33.0conforme o esperado.
No entanto, quando tento verificar a versão do SQLite python usando import sqlite3; sqlite3.sqlite_version;, ainda consigo a versão anterior do SQLite 3.6.20.
Software Locations:
Python 3.6.9 - /usr/bin/python3
Sqlite3 - /usr/bin/sqlite3
Já tentei a solução aqui , não funciona de LD_LIBRARY_PATHjeito nenhum, depois de atualizar e verificar a versão do python SQLite ainda dá '3.6.20', e aqui , quando tento sudo LD_RUN_PATH=, dá o erro No such file or directory, mas quando executo sem o sudo LD_RUN_PATH=, ele compila com sucesso, mas ainda me dá o SQLite '3.6.20' (Python compilado sem desinstalação).
Nota: eu tenho várias versões de python3.
O que posso fazer para resolver isso?
Respostas
Quando fiz isso (especificamente tentando encontrar uma maneira de atualizar sqlite3 para um programa python em execução; não funcionou ...), compilei o sqlite e obtive libsqlite3.so.0.8.6 e substituí o sqlite3 do sistema inteiro por este. Para mim no debian, isso estava em / usr / lib / x86_64-linux-gnu. Eu vi (embora agora não consiga encontrar onde) que essa forma pode causar problemas ao atualizar no futuro. Ele atualizou o sqlite3 do python para mim.
Você pode importar versões específicas:
__requires__= 'sqlite3==3.6.20'
import pkg_resources
pkg_resources.require("sqlite3==3.6.20")
import sqlite
Observe que isso só funciona na primeira importação. Se sqlite for importado antes de pkg_resources, ele terá a versão mais recente.