当前位置:首页>Linux>Linux备份还在全量?这个rsync增量方案帮你省90%空间+时间

Linux备份还在全量?这个rsync增量方案帮你省90%空间+时间

  • 2026-06-28 21:54:33
Linux备份还在全量?这个rsync增量方案帮你省90%空间+时间

作为Linux运维者,备份是日常工作中不可或缺的一环——无论是服务器配置文件、用户数据,还是项目代码,一旦丢失都可能造成不可挽回的损失。但很多人在备份时都会陷入一个困境:全量备份占用空间大、耗时久,每天执行一次不仅浪费磁盘资源,还会影响服务器性能;而手动筛选差异文件备份,又容易遗漏、出错。

今天就给大家分享一个Linux下最常用、最高效的增量备份方案——用 rsync 实现差异备份。它既能解决全量备份的痛点,又能保证备份的完整性和高效性,无论是新手还是资深运维,都能快速上手,看完就能直接套用在实际工作中。

一、先搞懂:全量备份 vs 增量备份

在开始实操前,我们先明确两个核心概念,避免混淆。简单来说,全量备份和增量备份的区别,就像“复制整个文件夹”和“只复制新增/修改的文件”。

备份类型
核心原理
优点
缺点
适用场景
全量备份
每次备份全部目标文件/目录,不管是否修改
恢复简单(直接复制即可)、数据完整,无依赖
占用磁盘空间大、耗时久,频繁执行影响服务器性能
每周1-2次基础备份、数据量较小的场景
增量备份
仅备份上次备份后,新增/修改/删除的文件
占用空间小、速度快,对服务器性能影响小
恢复相对复杂(需结合全量备份+所有增量备份)
每日备份、数据量大(如日志、用户数据)、频繁更新的场景

实用建议:生产环境中,推荐采用「全量备份+增量备份」结合的方式——每周日执行1次全量备份,周一至周六执行增量备份,既节省空间,又能保证数据可恢复。

二、rsync 核心讲解:为什么它是增量备份首选?

rsync(remote sync)是Linux系统自带的一款高效备份工具,核心优势是「差异同步」——它会对比源目录和目标目录的文件,只传输差异部分,而非整个文件,这也是它实现增量备份的核心原理。关键提醒:rsync 增量备份本质不是“差异备份文件”,而是“硬链接快照体系”,每一次增量备份都会生成一个可独立恢复的完整快照,通过硬链接复用全量备份的相同文件,从而节省磁盘空间。

与其他备份工具(如cp、scp)相比,rsync还有这些优势:

  • 跨平台支持:可在Linux、Windows、macOS之间同步
  • 支持本地/远程备份:既可以备份本地文件,也能备份远程服务器文件
  • 可配置性强:支持排除文件、压缩传输、权限保留等
  • 稳定性高:中断后可续传,避免备份失败

2.1 先确认rsync是否安装

大部分Linux系统(CentOS、Ubuntu)默认已安装rsync,可通过以下命令验证:

# 查看rsync版本rsync --version# 若未安装,执行以下命令安装# CentOS/RHELyum install -y rsync# Ubuntu/Debianapt update && apt install -y rsync

2.2 rsync 核心参数详解

rsync的参数很多,但增量备份常用的就几个,记住这些就能应对80%的场景,每个参数搭配实例说明,新手也能看懂。

核心参数
参数说明
实例用法
-a(归档模式)
最常用参数,等同于 -rlptgoD,保留文件权限、所有者、时间戳等,适合备份;注意:该参数不包含 ACL / xattr 权限,若需保留这两类权限,需额外添加 -A -X 参数。
rsync -a /source /backup
-v(详细模式)
显示备份过程中的详细信息(如传输的文件、大小),便于排查问题
rsync -av /source /backup
-z(压缩传输)
传输时压缩文件,减少网络带宽占用(远程备份必用,本地备份可选)
rsync -avz /source user@remote:/backup
--delete
同步时,删除目标目录中存在、但源目录中不存在的文件(保持目标与源一致)
rsync -av --delete /source /backup
--exclude=PATTERN
排除不需要备份的文件/目录(支持通配符)
rsync -av --exclude=*.log /source /backup
--link-dest=DIR
增量备份核心参数,基于指定的全量备份目录,只备份差异文件(硬链接)
rsync -av --link-dest=/full_backup /source /inc_backup
-P
等同于 --partial --progress,支持断点续传,显示传输进度
rsync -avP /source /backup

注意:--delete 参数慎用!如果源目录误删了文件,同步时会删除目标目录的对应文件,建议搭配 --delete-delay(延迟删除,便于回滚)和 --delete-excluded(同步排除规则)使用,降低误删风险;备份时建议先测试,或结合定时任务+日志确认。

三、实操:本地增量备份脚本编写(可直接复制使用)

下面我们编写一个生产级的本地增量备份脚本,实现「全量备份+增量备份」结合,包含日志记录、异常处理、自动清理过期备份,新手只需修改配置项即可使用。

3.1 脚本需求梳理

  • 备份目标:/data(需要备份的源目录,可修改)
  • 备份存储:/backup(备份文件存放目录,可修改)
  • 备份策略:每周日凌晨2点执行全量备份,其余时间执行增量备份
  • 日志记录:备份过程写入日志,便于排查问题
  • 过期清理:保留30天内的备份,自动删除过期文件

3.2 完整备份脚本

#!/bin/bash########################################################### Linux rsync 本地增量备份脚本(生产级)# 功能:全量备份(每周日)+ 增量备份(其余时间)、日志记录、过期清理# 核心参数:--link-dest 实现增量备份,硬链接节省空间# 核心原理:rsync 增量备份本质不是“差异备份文件”,而是“硬链接快照体系”########################################################### ===================== 配置项(新手必改)=====================SOURCE_DIR="/data"# 要备份的源目录(必填)BACKUP_DIR="/backup"# 备份文件存放目录(必填)RETENTION_DAYS=30           # 备份保留天数(默认30天)LOG_FILE="${BACKUP_DIR}/rsync_backup.log"# 日志文件路径# ===========================================================# 变量初始化DATE=$(date +%Y%m%d_%H%M%S)WEEKDAY=$(date +%w)  # 获取当前星期(0=周日,1=周一,...,6=周六)FULL_BACKUP_DIR="${BACKUP_DIR}/full_${DATE}"# 全量备份目录# 增量备份目录(基于最近一次全量备份,按时间排序确保一致性)LAST_FULL_BACKUP=$(find ${BACKUP_DIR} -maxdepth 1 -type d -name "full_*" | sort | tail -1)INC_BACKUP_DIR="${BACKUP_DIR}/inc_${DATE}"# 初始化目录与日志文件(避免日志写入失败)mkdir -p ${BACKUP_DIR}touch ${LOG_FILE}# 日志函数(输出时间+内容,写入日志文件)log() {echo"[$(date '+%Y-%m-%d %H:%M:%S')$1" | tee -a ${LOG_FILE}}log"==================== rsync 备份开始 ===================="# 1. 每周日执行全量备份if [ ${WEEKDAY} -eq 0 ]; thenlog"当前为周日,执行全量备份"# --delete-delay 延迟删除,降低误删风险;--delete-excluded 同步排除规则到目标目录    rsync -av --delete-delay --delete-excluded --exclude="tmp/" --exclude="logs/"${SOURCE_DIR}${FULL_BACKUP_DIR}/# 备份结果校验if [ $? -eq 0 ]; thenlog"✅ 全量备份成功,备份目录:${FULL_BACKUP_DIR}"elselog"❌ 全量备份失败,请检查源目录和权限"exit 1fi# 2. 其余时间执行增量备份(基于最近一次全量备份)else# 检查是否存在全量备份,无全量备份则执行全量备份if [ -z "${LAST_FULL_BACKUP}" ]; thenlog"未找到全量备份,自动执行全量备份"        rsync -av --delete-delay --delete-excluded --exclude="tmp/" --exclude="logs/"${SOURCE_DIR}${FULL_BACKUP_DIR}/if [ $? -eq 0 ]; thenlog"✅ 全量备份成功(自动触发),备份目录:${FULL_BACKUP_DIR}"elselog"❌ 全量备份失败,请检查源目录和权限"exit 1fielselog"执行增量备份,基于全量备份:${LAST_FULL_BACKUP}"# --link-dest 指向最近一次全量快照(绝对路径),确保硬链接正确        rsync -av --delete-delay --delete-excluded --link-dest=${LAST_FULL_BACKUP} --exclude="tmp/" --exclude="logs/"${SOURCE_DIR}${INC_BACKUP_DIR}/if [ $? -eq 0 ]; thenlog"✅ 增量备份成功,备份目录:${INC_BACKUP_DIR}"log"💡 提示:该增量备份目录为完整快照,可直接独立恢复,无需叠加全量备份"elselog"❌ 增量备份失败,请检查全量备份目录和权限"exit 1fififi# 3. 清理过期备份(安全写法,避免误删)log"清理${RETENTION_DAYS}天前的过期备份..."find ${BACKUP_DIR} -maxdepth 1 -type d -name "full_*" -mtime +${RETENTION_DAYS} -print0 | xargs -0 rm -rffind ${BACKUP_DIR} -maxdepth 1 -type d -name "inc_*" -mtime +${RETENTION_DAYS} -print0 | xargs -0 rm -rflog"✅ 过期备份清理完成"log"==================== rsync 备份结束 ===================="exit 0

3.3 脚本使用步骤

# 1. 创建脚本文件(路径可自定义)vim /usr/local/scripts/rsync_backup.sh# 2. 粘贴上面的脚本,修改【配置项】中的 SOURCE_DIR 和 BACKUP_DIR# 重点:确保源目录存在,备份目录有写入权限# 3. 给脚本添加可执行权限chmod +x /usr/local/scripts/rsync_backup.sh# 4. 手动测试执行(首次执行会自动触发全量备份)/usr/local/scripts/rsync_backup.sh# 5. 查看备份结果和日志ls /backup  # 查看备份目录cat /backup/rsync_backup.log  # 查看备份日志,确认是否成功

3.4 配置定时任务(自动执行备份)

脚本编写完成后,配置crontab定时任务,实现每日自动备份:

# 编辑定时任务crontab -e# 添加定时任务(每日凌晨2点执行)0 2 * * * /usr/local/scripts/rsync_backup.sh# 查看定时任务是否添加成功crontab -l

四、关键技巧:排除不需要备份的文件/目录

备份时,有些文件/目录是不需要备份的(如临时文件、日志文件、缓存目录),如果一起备份会浪费空间,rsync提供了多种排除方式,按需选择即可。

4.1 常用排除方式(3种)

单文件/目录排除(--exclude):适合排除少量文件/目录,支持通配符。注意:rsync exclude 不基于绝对路径匹配,无需写完整绝对路径,避免匹配失效。

# 排除单个文件 rsync -av --exclude=test.txt /source /backup # 排除单个目录(正确写法,无需绝对路径) rsync -av --exclude="logs/" /source /backup  # 排除指定后缀的文件(如.log、.tmp) rsync -av --exclude=*.log --exclude=*.tmp /source /backup

多文件/目录排除(--exclude-from):适合排除大量文件/目录,将需要排除的内容写入文件,批量排除。注意:排除路径无需写绝对路径。

1. 创建排除文件,写入需要排除的内容(无需绝对路径)vim /usr/local/scripts/exclude_list.txt# 写入以下内容(每行一个文件/目录,支持通配符)*.log *.tmp logs/ cache/ tmp/#2. 执行备份时引用排除文件rsync -av --exclude-from=/usr/local/scripts/exclude_list.txt /source /backup

排除隐藏文件(--exclude=.*):适合不需要备份隐藏文件(如.git、.bashrc)的场景。

rsync -av --exclude=.* /source /backup

实用技巧:排除目录时,建议写绝对路径(如 /data/logs),避免因相对路径导致排除失效;如果不确定排除是否生效,可先加上 -n 参数(模拟备份,不实际传输)测试。

五、增量备份恢复方法

增量备份的恢复需要结合「全量备份+所有增量备份」,步骤比全量备份稍复杂,但只要按顺序操作,就能快速恢复数据。⚠️ 重要警告:rsync 增量备份不需要逐级恢复,每个备份目录(full_* 或 inc_*)都是完整快照,可直接独立恢复,无需叠加全量备份。以下是两种常见的恢复场景。

5.1 场景1:恢复到最新状态(全量+所有增量)

假设我们的备份目录如下,需要恢复到最新的增量备份状态:

/backup/├── full_20260413_020000  # 全量备份(周日)├── inc_20260414_020000   # 周一增量备份├── inc_20260415_020000   # 周二增量备份└── rsync_backup.log

恢复步骤(无需叠加全量,直接恢复最新增量快照即可):

# 1. 创建恢复目录(避免覆盖源目录,建议先测试)mkdir -p /data_restore# 2. 直接恢复最新的增量备份(无需恢复全量,增量目录本身就是完整快照)rsync -av ${BACKUP_DIR}/inc_20260415_020000/ /data_restore/# 补充:若需恢复到全量备份状态,直接恢复全量目录即可# rsync -av ${BACKUP_DIR}/full_20260413_020000/ /data_restore/# 3. 恢复完成后,检查恢复目录的文件是否完整ls /data_restore

5.2 场景2:恢复单个文件(无需恢复全部)

如果只是误删了某个文件,不需要恢复整个目录,直接从最近的备份中提取即可:

# 示例:恢复 /data/test.txt 文件,从最新的增量备份中提取rsync -av ${BACKUP_DIR}/inc_20260415_020000/test.txt /data/# 若增量备份中没有该文件,从全量备份中提取rsync -av ${BACKUP_DIR}/full_20260413_020000/test.txt /data/

注意:恢复时,建议先将文件恢复到临时目录,确认无误后再覆盖源文件,避免误操作导致数据二次丢失。

六、常见问题与避坑指南

  1. 问题1:rsync备份失败,提示“permission denied”(权限不足)
     原因:执行脚本的用户(如root)没有源目录的读取权限,或备份目录的写入权限。解决:给源目录添加读取权限,备份目录添加写入权限,或用root用户执行脚本。
  2. 问题2:增量备份占用空间和全量一样大,没有实现差异备份
    原因:未使用 --link-dest 参数,或 --link-dest 指定的全量备份目录路径错误、未按时间顺序获取全量目录。解决:检查脚本中 --link-dest 的路径,确保使用绝对路径,且通过 find + sort 按时间排序获取最近一次全量备份目录(脚本已优化)。
  3. 问题3:--delete 参数导致目标目录文件被误删
    原因:源目录误删了文件,同步时rsync会删除目标目录的对应文件,尤其未搭配保护参数时风险更高。解决:非必要不使用 --delete 参数;若必须使用,建议搭配 --delete-delay(延迟删除,便于回滚)和 --delete-excluded(同步排除规则),同时先执行模拟备份(加 -n 参数),确认无误后再执行真实备份。
  4. 问题4:备份日志为空,或脚本执行无反应
    原因:脚本没有可执行权限、配置项中的目录路径错误,或日志目录未创建导致日志写入失败。解决:给脚本添加可执行权限(chmod +x 脚本路径),检查 SOURCE_DIR 和 BACKUP_DIR 是否存在;脚本已优化,会自动创建备份目录和日志文件,避免日志写入失败。

如果你觉得本文对你有帮助,欢迎点赞、推荐、转发,关注我,后续会分享更多Linux入门干货!

文 / 零距技术仓记录每一次真实的折腾 (#^.^#)🚀 想看到更多实用折腾技巧?👉 先关注💬 评论区说说你的经历或想看的内容👍 点赞表示支持🔁 顺手分享给也在折腾的人,让大家都少踩坑 😎

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 16:35:48 HTTP/2.0 GET : https://f.mffb.com.cn/a/487398.html
  2. 运行时间 : 0.116256s [ 吞吐率:8.60req/s ] 内存消耗:4,516.41kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=ab354ae31df9eb21ab5dcb1b6360ae44
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000610s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000730s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.007904s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000589s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000562s ]
  6. SELECT * FROM `set` [ RunTime:0.000206s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000558s ]
  8. SELECT * FROM `article` WHERE `id` = 487398 LIMIT 1 [ RunTime:0.003181s ]
  9. UPDATE `article` SET `lasttime` = 1783067748 WHERE `id` = 487398 [ RunTime:0.007109s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000271s ]
  11. SELECT * FROM `article` WHERE `id` < 487398 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000462s ]
  12. SELECT * FROM `article` WHERE `id` > 487398 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000360s ]
  13. SELECT * FROM `article` WHERE `id` < 487398 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.005038s ]
  14. SELECT * FROM `article` WHERE `id` < 487398 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.007869s ]
  15. SELECT * FROM `article` WHERE `id` < 487398 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.008376s ]
0.118777s