关于在Linux(Centos7)部署Net踩的坑;Centos7使用Sqlite连接异常

背景:

使用Admin.NET二开项目发布到Centos7.  

  1. 发布 压缩得到publish.zip
  2. 准备服务器环境

在我安装了Sqlite的环境下 使用Sql Sugar 创建数据时 出现了以下错误

 

 豆包Ai提示为

 

都是假的。  大骗子!!!

=======================================================================================================

问题原因:linux环境Sqlite若创建db文件会有问题,若是连接读取已存在的db应该是没问题的;linux的bug

 

  二更 解决方案

 

 

这个是解决方案:

手动重装下 sqlite

  1. wget 下载
    wget https://www.sqlite.org/2022/sqlite-autoconf-3390400.tar.gz
  2. 解压包

    tar -zxvf sqlite-autoconf-3390400.tar.gz -C /opt/
  3. 进入文件包 

    cd /opt/sqlite-autoconf-3390400 
  4. 检测安装路径
    ./configure --prefix=/usr/local/sqlite3
  5. 编译&安装
    make && make install
    安装完后可以看见如下提示
    sqlite3的安装路径:/usr/local/sqlite3/lib。
  6. 配置环境变量
    vim /etc/profile
    #最后一行增加上就行
    export LD_LIBRARY_PATH=/usr/local/sqlite3/lib
    #增加之后保存

    # 使配置文件生效
    source /etc/profile
  7. 查看是否安装成功
    ls -l /usr/local/sqlite3/lib/*sqlite*
    ls -l /usr/local/sqlite3/include/*sqlite*
  8. 替换系统中旧的sqlite

    # 把旧的sqlite3改个名字
    mv /usr/bin/sqlite3  /usr/bin/sqlite3_old
    # 设置软链接
    ln -s /usr/local/sqlite3/bin/sqlite3   /usr/bin/sqlite3
    echo "/usr/local/sqlite3/lib" > /etc/ld.so.conf.d/sqlite3.conf
    # 动态链接库管理命令
    ldconfig
  9. 查看sqlite版本
    sqlite3 --version

    # 如果能正常显示版本号,此时已经安装成功

  10. 在运行程序的根目录创建软链接,替换原来的 so 文件

    ln -s /usr/local/sqlite3/lib/libsqlite3.so /root/app/publish/libe_sqlite3.so

    其中 /root/app/publish/是我的发布目录,需要替换成自己的路径

     

  11. 现在程序就可以正常启动了 

 

 

posted @ 2025-02-14 17:14  .NetCat  阅读(42)  评论(0)    收藏  举报