star7th / showdoc

ShowDoc is a tool greatly applicable for an IT team to share documents online一个非常适合IT团队的在线API文档、技术文档工具
https://www.showdoc.com.cn
Other
12.18k stars 2.18k forks source link

如何整体调整图片的地址连接?服务器迁移后,全局修改数据库文件中的图片地址,修改完会报错:SQLSTATE[HY000]: General error: 11 database disk image is malformed #2145

Open Zeng-QJ opened 6 months ago

Zeng-QJ commented 6 months ago

部署的私服,内网访问,所以存的图片地址是内网地址。近期换了服务器,内网地址变了,导致之前项目中的图片都访问不到。尝试了一下用文本编辑器打开WWW\showdoc\Sqlite\showdoc.db.php,对里面的地址进行了全局替换,替换后重启网站就会报错:“SQLSTATE[HY000]: General error: 11 database disk image is malformed。错误位置:E:\showdoc\WWW\showdoc\server\ThinkPHP\Library\Think\Db\Driver.class.php 174” 图片 有没有什么方法可以处理这种服务器更换导致的地址问题?

star7th commented 6 months ago

showdoc使用sqlite数据库。数据库文件是安装目录下的Sqlite/showdoc.db.php。你可以网络搜索如何在命令行中使用 sqlite数据库.或者使用SQLiteStudio等可视化工具

如果使用文本编辑工具,会导致数据库文件永久损坏。

Zeng-QJ commented 6 months ago

我更新了upload_file和page两个表里面的地址,更新完之后全局检索数据库文件里面还是有没有替换掉的地址,没找到这些数据是存在哪些表里面。这个能指导一下吗?就是输入数据一般存在哪些表中?还是只能遍历各个表里面的所有字段。

star7th commented 6 months ago

我印象中就只是这两个表。如果还有,你可以说出具体情况。 另外遍历各个表也不难,没多大数据量。