当前位置:首页>Linux>Linux MySQL自动备份完整指南:全量+增量+清理+验证+恢复(生产避坑版)【推荐】

Linux MySQL自动备份完整指南:全量+增量+清理+验证+恢复(生产避坑版)【推荐】

  • 2026-04-15 23:02:13
Linux MySQL自动备份完整指南:全量+增量+清理+验证+恢复(生产避坑版)【推荐】

在前面的系列文章中,我们掌握了crontab、anacron、at等定时任务工具的用法,而定时任务最核心、最高频的生产场景,就是备份数据,今天这篇文章我们就来先讲讲MySQL数据库自动备份

备份不是万能的,但没有备份是万万不能的。多少公司因为误删数据、磁盘损坏、黑客攻击,最终因为没有有效备份导致业务停摆、数据永久丢失;也有很多运维新手,写了备份脚本就以为高枕无忧,等到要恢复时才发现备份文件损坏、内容缺失、脚本逻辑有漏洞,最终酿成生产事故。

这篇文章我们从生产环境真实避坑出发,结合专业DBA实操标准,手把手带你打磨一套严谨、可落地、低风险的MySQL自动备份方案:覆盖全量热备、基于binlog的简化版增量备份、过期备份自动清理、备份有效性自动验证,详解mysqldump核心参数与生产边界,同时标注方案适用场景、补充完整恢复流程,新手看完可直接在中小规模生产环境落地,大规模场景也能明确优化方向。

💡重要前提说明:本文mysqldump方案适用于中小规模MySQL数据库(单实例、数据量<100GB),具备轻量、易维护、兼容性强的优势;若为大规模高并发数据库(>100GB),推荐使用Percona XtraBackup、MySQL Enterprise Backup等物理备份工具,备份效率与数据一致性更优。


一、前置准备:备份前必须做好的2件事

所有备份脚本的落地,都需要先完成基础环境配置,这两步没做好,后续所有备份都可能存在隐患。

1. 开启MySQL binlog日志(增量备份必备)

增量备份的核心原理,是基于MySQL的binlog二进制日志——它会记录MySQL所有的数据库修改操作,全量备份相当于给数据库拍了一张“完整快照”,而增量备份就是归档快照之后的所有binlog日志,两者结合才能实现故障后的时间点精准恢复。binlog本身是持续写入的流式日志,增量备份本质是对这类日志的定时归档与管理,而非单次生成独立备份文件。

步骤1:检查binlog是否已开启

# 登录MySQLmysql -u root -p# 执行查询命令show variables like 'log_bin';
  • 输出ValueON:已开启,无需重复配置
  • 输出ValueOFF:未开启,需按以下步骤配置

步骤2:配置开启binlog

编辑MySQL配置文件(/etc/my.cnf 或 /etc/mysql/mysql.conf.d/mysqld.cnf,不同发行版路径略有差异),在[mysqld]模块下添加以下配置:

[mysqld]# 开启binlog日志,指定存储路径log_bin = /var/lib/mysql/mysql-bin# binlog格式,推荐ROW(行级模式,数据恢复最精准)binlog_format = ROW# 服务ID,主从环境需唯一,单节点可设1-255任意数字server_id = 1# binlog自动过期时间,避免日志占满磁盘expire_logs_days = 30

步骤3:重启MySQL生效并验证

# 重启MySQL(CentOS/RHEL)systemctl restart mysqld# 重启MySQL(Ubuntu/Debian)systemctl restart mysql# 再次登录MySQL验证mysql -u root -p -e "show variables like 'log_bin';"

⚠️ 避坑提示:binlog必须提前开启,否则无法实现增量备份;生产环境建议永久开启binlog,既是备份核心依据,也是数据误删恢复、故障审计的关键凭证。

2. 创建MySQL专用备份账号(最小权限原则)

生产环境不推荐直接使用root账号执行备份,建议创建专用备份账号,仅授予备份所需的最小权限,降低账号泄露带来的安全风险;权限配置需区分存储引擎,避免冗余授权。

-- 登录MySQL后执行,创建备份账号(替换为自定义强密码)CREATEUSER'backup_user'@'localhost' IDENTIFIED BY'你的强密码';-- 授予备份核心最小权限GRANTSELECT, RELOAD, REPLICATION CLIENT, SHOWVIEW, EVENT, TRIGGER, ROUTINE ON*.*TO'backup_user'@'localhost';-- 仅备份MyISAM引擎表时,额外授予LOCK TABLES权限;纯InnoDB环境无需此权限-- GRANT LOCK TABLES ON *.* TO 'backup_user'@'localhost';-- 刷新权限生效FLUSH PRIVILEGES;

权限精准说明:

  • SELECT
    :读取表数据,备份必备基础权限
  • RELOAD
    :执行flush logs刷新binlog,增量备份必备
  • REPLICATION CLIENT
    :获取binlog文件与位置信息,全量+增量联动必备
  • LOCK TABLES
    :仅MyISAM等非事务引擎备份需要,InnoDB引擎依赖MVCC,无需锁表
  • EVENT/TRIGGER/ROUTINE
    :备份事件、触发器、存储过程,避免备份内容缺失

二、mysqldump核心参数详解

mysqldump是MySQL官方自带的逻辑备份工具,无需额外安装、兼容性极强,是中小规模单节点MySQL备份的常用工具。下文拆解生产环境必备核心参数,明确作用、适用场景与风险边界,杜绝误导性表述。

1. 核心推荐参数(生产环境优先使用)

参数
核心作用
避坑提示
--single-transaction
InnoDB引擎开启一致性热备,基于MVCC实现无锁备份,不阻塞业务读写
仅对InnoDB引擎有效;备份期间执行DDL(ALTER/DROP TABLE)不会导致备份直接失败,但可能造成数据与表结构不一致,影响恢复可靠性,生产环境建议避开业务高峰与DDL操作
--master-data=2
备份文件中注释记录binlog文件名与位置,全量+增量备份联动必备
=1为非注释语句,适用于主从复制;=2为注释语句,仅用于备份恢复,推荐优先使用
--routines
备份存储过程与函数
易遗漏参数,未添加会导致存储过程/函数丢失,恢复后业务报错
--events
备份MySQL定时事件
与--routines同理,遗漏会导致定时任务配置丢失
--triggers
备份表触发器
默认开启,显式添加可避免配置异常导致遗漏

2. 进阶实用参数

参数
核心作用
适用场景
--all-databases
备份MySQL所有数据库
单实例整体备份,全量备份常用
--databases 库1 库2
备份指定业务库
仅需备份核心业务库,跳过系统库
--ignore-table=库名.表名
排除指定表不备份
排除日志表、缓存表等大表,减小备份体积
--quick
逐行读取数据,避免内存溢出
备份单表数据量较大的场景
--default-character-set=utf8mb4
指定备份字符集
避免中文/特殊字符乱码,生产环境建议指定

3. 高风险参数使用建议

  • --lock-all-tables
    :锁定全库所有表,会阻塞业务写入,仅MyISAM引擎整库备份时谨慎使用,InnoDB环境不推荐
  • --add-drop-database
    :备份文件包含DROP DATABASE语句,灾难恢复场景可快速重建库,但误操作会导致生产库被删除,生产环境谨慎开启,仅明确恢复策略时使用

三、实战1:MySQL全量备份脚本

全量备份是整个备份方案的基础,优化版脚本实现:InnoDB无锁热备、gzip压缩、日期命名、完整日志、异常处理、防重复执行,适配中小规模生产环境,可直接复制修改配置使用。

1. 完整全量备份脚本

#!/bin/bash########################################################### MySQL全量备份脚本(优化版)# 功能:InnoDB无锁热备、压缩、日志记录、异常处理、防重复# 适用:中小规模MySQL单实例每日全量备份################################################################################## 配置项(按需修改) ########################MYSQL_USER="backup_user"MYSQL_PASSWORD="你的强密码"MYSQL_HOST="localhost"MYSQL_PORT="3306"BACKUP_ROOT="/data/backup/mysql"FULL_BACKUP_DIR="${BACKUP_ROOT}/full"LOG_DIR="${BACKUP_ROOT}/logs"# 全量备份保留天数RETENTION_DAYS=30DATE=$(date +%Y%m%d_%H%M%S)BACKUP_FILE_NAME="mysql_full_backup_${DATE}.sql.gz"BACKUP_FILE_PATH="${FULL_BACKUP_DIR}/${BACKUP_FILE_NAME}"LOG_FILE="${LOG_DIR}/mysql_full_backup_${DATE}.log"# 防重复执行锁文件LOCK_FILE="/var/lock/mysql_full_backup.lock"#################################################################### 初始化目录init_dir() {    mkdir -p ${FULL_BACKUP_DIR}    mkdir -p ${LOG_DIR}}# 日志输出函数log() {echo"[$(date +'%Y-%m-%d %H:%M:%S')$1" >> ${LOG_FILE}echo"[$(date +'%Y-%m-%d %H:%M:%S')$1"}# 加排他锁,防止重复执行flock -xn ${LOCK_FILE} -c "init_dirlog '==================== MySQL全量备份开始 ===================='log '备份文件路径:${BACKUP_FILE_PATH}'# 检查mysqldump命令if ! command -v mysqldump &> /dev/null; then    log 'ERROR: mysqldump命令不存在,请安装MySQL客户端'    exit 1fi# 执行全量备份(InnoDB无锁热备)mysqldump \    --host=${MYSQL_HOST} \    --port=${MYSQL_PORT} \    --user=${MYSQL_USER} \    --password=${MYSQL_PASSWORD} \    --single-transaction \    --master-data=2 \    --routines \    --events \    --triggers \    --default-character-set=utf8mb4 \    --all-databases \    --quick | gzip > ${BACKUP_FILE_PATH}# 备份结果判断if [ $? -eq 0 ]; then    BACKUP_SIZE=$(du -h ${BACKUP_FILE_PATH} | awk '{print $1}')    log '✅ 全量备份成功,文件大小:${BACKUP_SIZE}'else    log '❌ 全量备份失败,删除无效备份文件'    rm -f ${BACKUP_FILE_PATH}    exit 1filog '==================== MySQL全量备份结束 ===================='"exit 0

2. 脚本使用与定时配置

# 1. 创建脚本文件vim /usr/local/scripts/mysql_full_backup.sh# 2. 粘贴脚本,修改配置项# 3. 添加执行权限chmod +x /usr/local/scripts/mysql_full_backup.sh# 4. 手动测试执行/usr/local/scripts/mysql_full_backup.sh# 5. 配置定时任务(每日凌晨3点低峰执行)crontab -e0 3 * * * /usr/local/scripts/mysql_full_backup.sh >> /var/log/cron/mysql_backup.log 2>&1

四、实战2:基于binlog的简化版增量备份

重要声明:本节为简化版binlog增量备份,适用于学习、测试或低并发低风险业务场景;核心逻辑为定时刷新binlog并归档历史日志,无精准position记录、无远程读取校验,高并发生产环境建议使用mysqlbinlog工具+position记录,或专业物理备份工具,避免数据一致性风险。

1. 简化版增量备份核心逻辑

  1. 全量备份后,binlog持续记录后续数据变更
  2. 定时刷新binlog,生成新日志文件,避免复制正在写入的日志
  3. 归档已完成写入的历史binlog,修复原脚本路径判断错误,杜绝重复备份

2. 优化版增量备份脚本

#!/bin/bash########################################################### MySQL简化版增量备份(binlog归档,低风险环境适用)# 功能:binlog日志归档、日志记录、防重复、无重复备份################################################################################## 配置项(按需修改) ########################MYSQL_USER="backup_user"MYSQL_PASSWORD="你的强密码"MYSQL_HOST="localhost"MYSQL_PORT="3306"BACKUP_ROOT="/data/backup/mysql"# 增量备份归档目录INCR_BACKUP_DIR="${BACKUP_ROOT}/incr"# 已备份binlog记录文件,杜绝重复备份BACKUPED_BINLOG="${INCR_BACKUP_DIR}/.backuped_binlog.list"LOG_DIR="${BACKUP_ROOT}/logs"BINLOG_DIR="/var/lib/mysql"BINLOG_INDEX="${BINLOG_DIR}/mysql-bin.index"RETENTION_DAYS=30DATE=$(date +%Y%m%d_%H%M%S)INCR_SUB_DIR="${INCR_BACKUP_DIR}/${DATE}"LOG_FILE="${LOG_DIR}/mysql_incr_backup_${DATE}.log"LOCK_FILE="/var/lock/mysql_incr_backup.lock"###################################################################init_dir() {    mkdir -p ${INCR_SUB_DIR}    mkdir -p ${LOG_DIR}    touch ${BACKUPED_BINLOG}}log() {echo"[$(date +'%Y-%m-%d %H:%M:%S')$1" >> ${LOG_FILE}echo"[$(date +'%Y-%m-%d %H:%M:%S')$1"}flock -xn ${LOCK_FILE} -c "init_dirlog '==================== 增量备份(binlog归档)开始 ===================='# 检查binlog索引if [ ! -f ${BINLOG_INDEX} ]; then    log 'ERROR: binlog未开启,无法增量备份'    exit 1fi# 刷新binlog,切分新日志log '刷新binlog日志,切分新文件'mysql --host=${MYSQL_HOST} --port=${MYSQL_PORT} --user=${MYSQL_USER} --password=${MYSQL_PASSWORD} -e "flush logs;"[ $? -ne 0 ] && log 'ERROR: binlog刷新失败' && exit 1# 获取已完成写入的binlog,排除正在写入的最新文件BINLOG_FILES=$(cat ${BINLOG_INDEX} | grep -v '^#' | sed '$d')BACKUP_COUNT=0# 遍历归档,仅备份未记录的binlog,杜绝重复for binlog in ${BINLOG_FILES}; do    binlog_name=$(basename ${binlog})    # 检查是否已备份    if ! grep -q "${binlog_name}${BACKUPED_BINLOG}; then        cp -a ${BINLOG_DIR}/${binlog_name}${INCR_SUB_DIR}/        if [ $? -eq 0 ]; then            log "✅ 归档binlog:${binlog_name}"            echo "${binlog_name}" >> ${BACKUPED_BINLOG}            BACKUP_COUNT=$((BACKUP_COUNT+1))        fi    fidoneif [ ${BACKUP_COUNT} -gt 0 ]; then    log "✅ 本次归档${BACKUP_COUNT}个binlog文件"else    log "ℹ️ 无新增binlog,无需归档"filog '==================== 增量备份结束 ===================='"exit 0

3. 定时配置(每小时整点执行)

# 添加定时任务crontab -e0 * * * * /usr/local/scripts/mysql_incr_backup.sh >> /var/log/cron/mysql_incr.log 2>&1

五、实战3:自动清理过期备份(安全优化版,防误删)

备份文件持续占用磁盘,需定时清理过期文件;优化清理脚本,限制目录深度、增加路径防护,杜绝变量异常导致的误删风险,同时记录清理日志。

1. 安全版自动清理脚本

#!/bin/bash########################################################### MySQL备份自动清理(安全版,防误删)# 功能:清理过期全量/增量/日志,限制目录深度,无风险##########################################################BACKUP_ROOT="/data/backup/mysql"FULL_RETENTION=30INCR_RETENTION=30LOG_RETENTION=7LOG_FILE="${BACKUP_ROOT}/logs/backup_clean_$(date +%Y%m%d).log"log() {echo"[$(date +'%Y-%m-%d %H:%M:%S')$1" >> ${LOG_FILE}echo"[$(date +'%Y-%m-%d %H:%M:%S')$1"}log'==================== 过期备份清理开始 ===================='# 清理过期全量备份log"清理${FULL_RETENTION}天前全量备份"find ${BACKUP_ROOT}/full -type f -name "mysql_full_backup_*.sql.gz" -mtime +${FULL_RETENTION} -print -delete >> ${LOG_FILE}# 清理过期增量备份,限制目录深度,防误删log"清理${INCR_RETENTION}天前增量备份"find ${BACKUP_ROOT}/incr -mindepth 1 -maxdepth 1 -type d -mtime +${INCR_RETENTION} -print -exec rm -rf {} \; >> ${LOG_FILE}# 清理过期日志log"清理${LOG_RETENTION}天前日志文件"find ${BACKUP_ROOT}/logs -type f -name "*.log" -mtime +${LOG_RETENTION} -print -delete >> ${LOG_FILE}log'✅ 过期备份清理完成'log'==================== 清理结束 ===================='exit 0

2. 定时配置(每日凌晨4点,全量备份后执行)

crontab -e0 4 * * * /usr/local/scripts/mysql_backup_clean.sh >> /var/log/cron/clean.log 2>&1

六、实战4:备份有效性自动验证

不能恢复的备份,等于没有备份。优化验证脚本,增加空值判断、规避root直接操作生产库风险,通过临时测试库验证备份可导入性,确保备份文件有效。

生产环境建议:使用独立MySQL实例/容器做备份验证,避免操作生产库;本节脚本为单机简化版,验证后自动清理临时库。

1. 优化版备份验证脚本

#!/bin/bash########################################################### MySQL备份有效性验证(优化版,防空值、低风险)# 功能:验证最新全量备份可导入性,自动清理临时库########################################################### 建议使用独立验证账号,避免root操作生产库MYSQL_USER="root"MYSQL_PASSWORD="你的root密码"MYSQL_HOST="localhost"MYSQL_PORT="3306"BACKUP_ROOT="/data/backup/mysql"# 获取最新全量备份,增加空值判断BACKUP_FILE=$(ls -t ${BACKUP_ROOT}/full/mysql_full_backup_*.sql.gz 2>/dev/null | head -1)TEST_DB="backup_verify_$(date +%Y%m%d%H%M%S)"LOG_FILE="${BACKUP_ROOT}/logs/backup_verify_$(date +%Y%m%d).log"log() {echo"[$(date +'%Y-%m-%d %H:%M:%S')$1" >> ${LOG_FILE}echo"[$(date +'%Y-%m-%d %H:%M:%S')$1"}log'==================== 备份验证开始 ===================='# 空值判断,无备份文件直接退出if [ -z "${BACKUP_FILE}" ] || [ ! -f "${BACKUP_FILE}" ]; thenlog'ERROR: 未找到有效全量备份文件,验证终止'exit 1filog"待验证备份:${BACKUP_FILE}"# 创建临时测试库log"创建临时验证库:${TEST_DB}"mysql --host=${MYSQL_HOST} --port=${MYSQL_PORT} --user=${MYSQL_USER} --password=${MYSQL_PASSWORD} -e "CREATE DATABASE ${TEST_DB} DEFAULT CHARACTER SET utf8mb4;"[ $? -ne 0 ] && log'ERROR: 临时库创建失败' && exit 1# 导入备份验证log'开始导入备份,验证文件有效性'gunzip -c ${BACKUP_FILE} | mysql --host=${MYSQL_HOST} --port=${MYSQL_PORT} --user=${MYSQL_USER} --password=${MYSQL_PASSWORD}${TEST_DB}if [ $? -eq 0 ]; thenlog'✅ 备份验证通过,文件可正常恢复'# 清理临时库    mysql --host=${MYSQL_HOST} --port=${MYSQL_PORT} --user=${MYSQL_USER} --password=${MYSQL_PASSWORD} -e "DROP DATABASE ${TEST_DB};"log"临时库${TEST_DB}已清理"elselog'❌ 备份验证失败,文件损坏或不可用,请立即排查'exit 1filog'==================== 备份验证结束 ===================='exit 0

2. 定时配置(每日凌晨4点30分执行)

crontab -e30 4 * * * /usr/local/scripts/mysql_backup_verify.sh >> /var/log/cron/verify.log 2>&1

七、核心补充:MySQL全量+增量备份恢复流程(必备)

备份的核心价值是恢复,本文补充完整恢复步骤,中小规模场景可直接套用,避免故障时无操作依据。

1. 全量备份单独恢复

# 1. 解压备份文件gunzip mysql_full_backup_xxx.sql.gz# 2. 导入MySQL恢复mysql -u root -p < mysql_full_backup_xxx.sql

2. 全量+增量联合恢复(时间点恢复)

# 步骤1:先恢复最新全量备份gunzip mysql_full_backup_xxx.sql.gzmysql -u root -p < mysql_full_backup_xxx.sql# 步骤2:查看全量备份中的binlog起始位置(--master-data=2记录)head -50 mysql_full_backup_xxx.sql | grep 'CHANGE MASTER'# 步骤3:按顺序恢复增量binlog日志mysqlbinlog /data/backup/mysql/incr/日期/mysql-bin.000xxx | mysql -u root -p# 多个binlog按文件名顺序依次执行

八、生产环境MySQL备份最佳实践

  1. 遵循3-2-1备份原则
    :保留3份数据副本、2种不同存储介质、1份异地备份,避免机房级故障导致备份全部丢失
  2. 备份策略适配业务
    :核心业务每日全量+每小时增量;非核心业务每周全量+每日增量;超大库改用物理备份
  3. 备份安全规范
    :备份文件用gzip压缩,敏感数据需用openssl/gpg加密(gzip仅为压缩,无加密能力);备份目录权限设为700,仅root可访问
  4. 定期恢复演练
    :每月至少做一次完整恢复演练,验证备份有效性,避免故障时无法恢复
  5. 全链路监控
    :监控备份执行状态、磁盘使用率、验证结果,异常及时推送告警

九、常见问题与避坑指南

1. 备份时业务卡顿?

InnoDB引擎确保添加--single-transaction参数,实现无锁热备;避开业务高峰与DDL操作;MyISAM引擎建议低峰期备份。

2. 备份文件过大?

用--ignore-table排除大日志表;开启gzip压缩;降低全量备份频率,增加增量备份比重。

3. 恢复后存储过程/触发器丢失?

备份时必须添加--routines --events --triggers参数,确保数据库对象完整备份。

4. 增量备份恢复失败?

全量备份必须加--master-data=2;binlog按文件名顺序恢复;确保binlog文件完整无损坏。

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

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

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-16 01:59:40 HTTP/2.0 GET : https://f.mffb.com.cn/a/485939.html
  2. 运行时间 : 0.199515s [ 吞吐率:5.01req/s ] 内存消耗:4,691.10kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=3ce8ed68a247b538110bae18285eef96
  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.000835s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001392s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000638s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.003199s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001145s ]
  6. SELECT * FROM `set` [ RunTime:0.007886s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001335s ]
  8. SELECT * FROM `article` WHERE `id` = 485939 LIMIT 1 [ RunTime:0.002412s ]
  9. UPDATE `article` SET `lasttime` = 1776275980 WHERE `id` = 485939 [ RunTime:0.011211s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.001004s ]
  11. SELECT * FROM `article` WHERE `id` < 485939 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.002170s ]
  12. SELECT * FROM `article` WHERE `id` > 485939 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000949s ]
  13. SELECT * FROM `article` WHERE `id` < 485939 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.004649s ]
  14. SELECT * FROM `article` WHERE `id` < 485939 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.003347s ]
  15. SELECT * FROM `article` WHERE `id` < 485939 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002356s ]
0.203293s