centos6.7下更新sqlite3适配django2

更新:如果想避免本文的问题以及后续其他python安装问题,最好使用conda安装
参考文章:https://www.jianshu.com/p/3ca63eb17553
1.下载新版sqlite3

$ cd /usr/local
$ wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz
$ tar -zxvf sqlite-autoconf-3270200.tar.gz
$ cd sqlite-autoconf-3270200
$ ./configure --prefix=/usr/local/sqlite
$ make && make install

2.检查最新安装的sqlite3版本

$ /usr/local/sqlite/bin/sqlite3 --version
输出:3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7

3.更改旧的sqlite3,软链接将新的sqlite3设置到/usr/bin目录下

$ mv /usr/bin/sqlite3  /usr/bin/sqlite3_old
$ ln -s /usr/local/sqlite/bin/sqlite3   /usr/bin/sqlite3

4.查看当前全局sqlite3的版本,修改成功

$ sqlite3 --version
输出:3.27.2 2019-02-25 16:06:06 bd49a8271d650fa89e446b42e513b595a717b9212c91dd384aab871fc1d0f6d7

5.如果在更新sqlite3之前就安装了python,那么运行django会发生错误:sqlite3.NotSupportedError: URIs not supported ,原因是因为python3先于高版本sqlite3安装,所以需要重新安装python3,而且安装前需要配置setup.py:

#我下载的python3.7安装包解压在了下面的目录中,实际操作的话需要进入你下载解压的python目录
$ cd /usr/local/Python-3.7.0
$ vim setup.py

查找到sqlite_inc_paths,添加一行'/usr/local/sqlite3/include'(此目录是我的新版sqlite3的安装后的目录,还是那句话,需要你自己添加对应的正确新版sqlite安装目录)

sqlite_inc_paths = [ '/usr/include',
                             '/usr/local/sqlite3/include', #增加该部分内容
                             '/usr/include/sqlite',
                             '/usr/include/sqlite3',
                             '/usr/local/include',
                             '/usr/local/include/sqlite',
                              ......

编译安装

#重新安装到/usr/local/python3目录下
$ ./configure --prefix=/usr/local/python3
$ make && make install

重新卸载安装django

$ pip3 uninstall django
$ pip3 install django

新建测试项目djangotest(指令有点长,没办法)

$ cd /
$ python3 /usr/local/python3/lib/python3.7/site-packages/django/bin/django-admin.py startproject djangotest

进入项目,修改allow_hosts,然后迁移,然后运行(这里端口改成了5050,为了方便我在新浪云进行测试,因为新浪云虚拟机监听5050端口,实际操作可以不用修改)

$ cd /djangotest/djangotest
$ vim settings.py
修改为:ALLOWED_HOSTS = ['*']
$ cd /djangotest
$ python3 manage.py runserver 0.0.0.0:5050

成功运行


centos6.7下更新sqlite3适配django2_第1张图片
启动页面

你可能感兴趣的:(centos6.7下更新sqlite3适配django2)