MySQL实操:从建表规范到索引优化、慢查询排查与备份恢复
做后端这些年MySQL 几乎是我绕不开的组件。从最简单的个人博客到带用户体系、订单流程、对账报表的业务系统MySQL 总能像地基一样稳稳立住。可能你写过不少 SELECT 了但真要自己设计一张表、排查一条慢 SQL、处理一次死锁它的细节会比你想象中多得多。这篇分享不是文档式的功能罗列而是我从实际项目里踩坑、复盘、优化后沉淀下来的一套完整 MySQL 实操经验覆盖需求分析、建表规范、索引设计、参数调优、故障排查以及最容易被忽视的备份恢复。如果你正在从零搭一个后端服务或者已经在一线维护着 MySQL 实例这篇文章都值得慢慢看。1. 先想清楚业务再建表从需求到库表结构的落地顺序1.1 别急着建表先梳理实体关系与读写负载我见过最多的问题是需求还没讲清楚就开始“咔咔”建表等数据量上来以后才发现表结构根本撑不住查询。建表的正确顺序一定是先从业务模型出发。拿到需求之后先问三个问题核心实体是什么实体之间的关系是什么未来主要的查询和写入路径是怎样的拿最常见的订单系统举例核心实体至少包括用户、订单、支付流水、商品快照。它们之间的关系可能是用户一对多订单、订单一对多支付流水。紧接着要梳理高频查询用户端大概率会“按用户查最近订单”管理端大概率会“按订单号查详情”“按状态筛批量订单”。这些查询条件基本决定了你要在哪些字段上建索引。再往后要评估读写比例和数据量级。MySQL 天生适合 OLTP也就是在线事务处理特点是短小精悍的增删改查。如果需求里带着大量复杂的聚合统计、报表分析那就不能指望 MySQL 单库硬扛而是要把数据分流到单独的分析库或数据仓库。很多新的团队不太在意这件事把所有查询都压在一个 MySQL 主库上结果就是高峰期 CPU 飘红、慢查询刷屏。做库表设计之前先达成这个共识能帮你省掉无数个加班的夜晚。1.2 统一规范表名、字段、主键与注释业务模型梳理完就可以定规范了。规范和编码风格一样没有绝对的对错但必须统一。拿我维护过的一个某跨平台订单系统来说我们当时约定了几条硬性规则表名单数形式全小写加下划线比如order_info、user_account不用OrderInfo也别用t_order这种没意义的前缀。每个表必须有主键统一BIGINT UNSIGNED AUTO_INCREMENT如果后续有分库分表或分布式需求可以用雪花算法生成BIGINT主键应用层写入。字段名全小写下划线禁止大小写混用。时间字段统一用DATETIME创建时间默认CURRENT_TIMESTAMP更新时间设置ON UPDATE CURRENT_TIMESTAMP。除特殊逻辑外所有字段显式NOT NULL并给合适的默认值。NULL会影响索引选择、COUNT()统计结果也容易让业务代码判断逻辑变得混乱。每张表、每个字段都要写COMMENT。上线半年后你一定会感谢自己能看懂当时的注释。这里多说一句主键。InnoDB 的表是索引组织表主键就是聚簇索引数据行直接挂在主键的叶子节点上。使用自增主键可以保证新记录按顺序插入减少页分裂。如果用了 UUID 这类随机字符串做主键插入的 B 树节点会频繁分裂产生大量碎片写入性能和存储占用都会明显变差。能用数值类型做主键就不要用字符串。1.3 存储引擎选型为什么默认 InnoDB 很少改很多从早期 MySQL 版本过来的老开发者对 MyISAM 多少还有点情怀毕竟它曾是默认引擎读得快占用也低。但放到今天MyISAM 的问题太明显不支持事务、只有表锁、崩溃后表容易损坏。你永远不想在用户下单写到一半的时候突然发现订单金额对不上了。InnoDB 是 MySQL 8.0 的默认引擎具备事务 ACID 能力、行级锁、崩溃恢复、MVCC 多版本并发控制还支持外键约束。绝大多数业务场景InnoDB 就是正确选择。现实中唯一可能考虑其他引擎的是那种纯只读、不关心事务、数据也不怎么变的归档场景可能会用到 Archive 引擎或者干脆把数据移到分析型存储。生产环境老老实实 InnoDB别折腾。2. 建表与核心机制字符集、索引、事务细节2.1 字符集与排序规则utf8mb4 是唯一推荐如果你还在用 MySQL 里的utf8字符集我劝你尽早改掉。MySQL 的utf8其实最多只能存 3 字节根本存不下 emoji 表情也存不下很多 CJK 扩展区的生僻字。真正的完整 UTF-8 实现是utf8mb4最多 4 字节。MySQL 8.0 默认已经用utf8mb4默认排序规则是utf8mb4_0900_ai_ci。如果是 MySQL 5.7 环境常用的排序规则是utf8mb4_unicode_ci。建库建表时统一设置比如CREATE DATABASE order_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;这里要特别注意一个坑库、表、列三级字符集是可以单独设置的一旦不一致JOIN关联时可能会因为字符集不一致导致索引失效。连接层也要配套应用在建立连接后最好显式执行SET NAMES utf8mb4不然服务端和客户端各说各话存储进去的数据就可能乱码。2.2 索引设计回表、覆盖索引与最左前缀索引是 MySQL 性能的核心也是新手最容易出问题的地方。先理解 InnoDB 的索引结构主键是聚簇索引数据行直接存在主键索引的叶子节点上其他索引叫二级索引二级索引的叶子节点存的是主键值。查询走二级索引时先找到主键再回表把整行数据取出来这个过程就是回表。看一个实际设计。某跨平台订单系统的order_info表核心结构可以简化成这样CREATE TABLE order_info ( id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, order_no VARCHAR(32) NOT NULL COMMENT 业务订单号, user_id BIGINT UNSIGNED NOT NULL COMMENT 用户ID, status TINYINT NOT NULL DEFAULT 0 COMMENT 订单状态, amount DECIMAL(10,2) NOT NULL DEFAULT 0.00 COMMENT 订单金额, created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间, updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新时间, PRIMARY KEY (id), UNIQUE KEY uk_order_no (order_no), KEY idx_user_created (user_id, created_at) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_0900_ai_ci COMMENT订单表;查询“某个用户最近的订单列表”SQL 通常是SELECT id, order_no, amount, created_at FROM order_info WHERE user_id 100 ORDER BY created_at DESC;如果只有user_id单列索引MySQL 可以定位到该用户的全部记录但还要在内存里做一次ORDER BY created_at的排序也就是 EXPLAIN 里常见的Using filesort。建立(user_id, created_at)联合索引之后叶子节点已经按用户和创建时间排好序排序就能直接走索引省掉一次额外排序。联合索引遵循最左前缀原则查询条件里必须包含联合索引最左边的字段索引才可能生效。比如(user_id, created_at)索引可以支持WHERE user_id ?也可以支持WHERE user_id ? ORDER BY created_at但不支持只拿created_at作为条件。设计联合索引时把区分度高的字段放前面把范围查询字段放后面。还有一个小优化点尽量让查询列都被索引覆盖。上面的查询中id, order_no, amount, created_at都在idx_user_created索引树里查询不需要回表这种情况就是覆盖索引EXPLAIN 的 Extra 列会显示Using index。注意哪怕覆盖索引带来收益也不意味着索引越多越好。每多一个索引写入时就要多维护一棵 B 树写入性能会明显下降。索引只给真正的核心查询建。索引失效的几个常见场景我也列一下全是实操里反复踩过的在索引列上做函数运算比如WHERE DATE(created_at) 2025-01-01索引基本废了。正确做法是写成范围条件created_at ? AND created_at ?这种区间。隐式类型转换。字段是VARCHAR条件写数字或者反过来MySQL 会做类型转换导致索引失效。前导模糊匹配比如LIKE %关键词%。这种查询常规索引帮不上忙要么用全文索引要么交给搜索组件处理要么接受全表扫描并控制数据量。2.3 事务隔离级别与锁机制从 MVCC 到死锁MySQL 默认的隔离级别是REPEATABLE READ可重复读。它的底层实现依赖 MVCC也就是多版本并发控制。事务开始时会生成一个一致性快照之后的所有普通 SELECT 都从这个快照读其他事务的未提交修改不会被看到已提交但晚于快照时间的修改也不会影响这次读取。这就是为什么同一事务里多次 SELECT 结果一致。读到这里可能有人疑惑可重复读不是没有解决幻读吗InnoDB 在REPEATABLE READ下除了 MVCC 快照读还引入了间隙锁和next-key锁对当前读操作做了额外限制能防止新的满足条件的记录插入从而避免幻读。但代价是间隙锁会降低并发度。很多高并发互联网业务更愿意退到READ COMMITTED隔离级别并且把binlog_format设为row换取更少的锁竞争。这个取舍要看业务容忍度没有标准答案。锁机制方面InnoDB 支持行级锁包括共享锁S和排他锁X还有意向锁。真正处理线上死锁的时候问题往往出在事务更新顺序不一致。比如事务 A 先更新order_info某一行再更新user_account事务 B 先更新user_account再更新order_info中同一行。两个事务同时提交就可能互相持有对方等待的资源形成死锁。排查和规避死锁我会在第四节详细展开。先给一个原则任何同时更新多行数据的操作都尽量按相同顺序访问记录业务事务要短提交要快代码里也要捕获死锁错误并做重试。3. 从部署到性能调优的实操全流程3.1 环境部署与关键配置项部署 MySQL 本身不难Linux 上用包管理器装好跑一遍安全初始化脚本就行。真正要紧的是初始配置文件。我一般会在my.cnf或单独的mysqld.cnf里重点看下面几项[mysqld] server-id 1 port 3306 socket /var/run/mysqld/mysqld.sock datadir /var/lib/mysql character-set-server utf8mb4 collation-server utf8mb4_0900_ai_ci slow_query_log 1 slow_query_log_file /var/log/mysql/slow.log long_query_time 1 innodb_buffer_pool_size 4G max_connections 200这几个配置里innodb_buffer_pool_size是最影响性能的一项。它是 InnoDB 在内存中的缓冲池数据和索引都会在这里缓存。一般建议设为物理内存的 60% 到 75%。比如机器内存 8G设 4G 到 6G 都是合理范围。设太低磁盘 IO 会成为瓶颈设太高操作系统本身和其他进程就没内存可用可能触发交换反而更慢。max_connections是个容易走极端的参数。有人喜欢直接调到 1000看起来很猛但实际上每个连接都会占用线程栈和内存资源连接数越多上下文切换和内存压力越大。更合理的做法是控制在合理范围然后从应用层做好连接池复用。如果连接数真的打满先检查是不是存在连接泄漏而不是一味加参数。slow_query_log建议从服务第一天就打开long_query_time设置 1 秒。很多团队是在线上出现事故之后才想起开慢查询结果早期的慢 SQL 全都没留下记录。慢日志本身有一点性能开销但相比它带来的排查收益这点损耗完全值得。3.2 慢查询日志与 EXPLAIN 的使用细节慢查询日志开启之后怎么用是关键。最直接的命令是mysqldumpslow -s at -t 10 /var/log/mysql/slow.log它会按执行时间排序把耗时最长的前 10 条慢 SQL 汇总出来。如果要分析更细的趋势可以用常见的慢查询分析工具比如 percona-toolkit 里的pt-query-digest它能按指纹聚合把同类 SQL 归并输出平均耗时、总耗时、扫描行数这些指标比拿肉眼看日志高效很多。定位到慢 SQL 之后用EXPLAIN看执行计划。我通常关注这几列type从好到差大致是const eq_ref ref range index ALL。看到ALL意味着全表扫描基本就是在宣告当前这条 SQL 需要优化。key实际走到的索引名。如果possible_keys里有索引key却是空的说明优化器没选到合适的索引。rows预估扫描行数。这个数字能直观反映查询走了多远。Extra看到Using filesort或Using temporary说明排序或分组绕不开临时文件通常需要调整索引或改写 SQL。看到Using index则是好事说明覆盖索引生效了。举个例子某个运营后台的查询原来是这样SELECT * FROM order_info WHERE user_id 100 ORDER BY created_at DESC;当时order_info表只有主键和order_no唯一索引于是执行计划里type ALLExtra里有Using filesort。加完(user_id, created_at)联合索引之后type变成refrows从全表降到个位数Using filesort也消失了。一次索引调整查询从秒级响应变成毫秒级可以说是投入产出比最高的一次优化。3.3 参数调优的现实取舍网上流传着很多“万能优化参数”比如调大sort_buffer_size、join_buffer_size。但我建议不要照搬。这两个参数是每个连接会话独立分配的不是全局共享的。假设sort_buffer_size设成 64M同时有 100 个活跃连接光这一项就可能吃掉 6G 内存操作系统直接报警。参数调优一定要结合业务实际来看。先问自己当前瓶颈是 CPU、磁盘 IO还是锁等待如果是磁盘 IO 高那优先加大innodb_buffer_pool_size让热点数据尽量留在内存。如果是慢查询多那就回到慢日志优化 SQL 和索引而不是调参数。如果SHOW ENGINE INNODB STATUS里看到大量锁等待优先治理代码里的事务逻辑。还有一个容易被忽略的项binlog。很多新手部署 MySQL 后没有开binlog等数据被误删、或者需要搭主从复制时才后悔。开启方式很简单在配置文件里设置log-binmysql-bin和server-id1同时设置binlog_formatrow。row格式记录每一行变更配合主从复制时一致性更好。binlog也是增量备份的基础这个习惯越早养成越好。4. 线上故障排查与数据安全实录4.1 慢查询拖垮主库的排查案例有一次线上告警数据库所在机器 CPU 使用率持续 100%业务接口大面积超时。当时我第一反应就是看慢查询日志果然有一条统计类 SQL是从几个订单表关联查询近三个月的汇总数据单次执行就要 30 多秒被某个定时任务每小时疯狂跑。处理分三步走。第一步紧急止血杀掉正在执行的慢查询避免 CPU 被拖死。第二步临时优化给关联字段加上必要索引把 SQL 里拆不掉的全表扫描压下去。第三步根治这类统计根本不合适直接打生产主库后续把统计任务切到只读从库执行同时让运营改看预生成好的汇总表。这个案例里最大的教训不是 SQL 本身写得有多差而是架构上让不合适的查询跑到了不合适的地方。核心业务主库就应该只扛短小精悍的 OLTP 流量复杂的聚合、报表、分析都往从库或分析型系统引流。4.2 锁等待和死锁怎么定位遇到Deadlock found when trying to get lock; try restarting transaction这种报错先别慌它表示有事务被回滚了应用层要做好重试。想看死锁详情执行SHOW ENGINE INNODB STATUS\G输出里会有一段LATEST DETECTED DEADLOCK记录了争夺锁的两条事务分别执行了什么 SQL、持有和等待哪些锁。这段日志平时不会太显眼但死锁发生的瞬间它是最好的现场证据。如果只是锁等待超时报错通常是Lock wait timeout exceeded。这时可以查information_schema.innodb_trx看看当前都有哪些长事务还没提交。很多时候长事务来自代码里忘记提交的事务或者业务逻辑里悄悄开了个事务然后去调外部接口导致事务一直挂着不释放行锁。治理办法是事务里不要做远程调用、不要等用户输入所有可能耗时的操作都放到事务外面。我之前处理过一个线上死锁两个后台服务在更新订单和用户账户时表访问顺序正好相反。A 服务先更新订单再更新账户B 服务先更新账户再更新订单。并发高的时候死锁一个接一个。最后统一了所有服务的更新顺序问题立即消失。如果你在设计接口时能约定一批资源更新顺序死锁概率会大幅降低。4.3 备份恢复与主从复制别等灾难来临时才开始很多团队觉得“数据量也不大备份以后再搞”结果真的遇到误删数据时只能对着数据库发呆。备份这件事必须从第一天就做。最常用的逻辑备份方式是mysqldump。推荐这样用mysqldump -u root -p \ --single-transaction \ --routines \ --triggers \ --master-data2 \ order_db order_db_backup.sql--single-transaction很关键它利用 InnoDB 的 MVCC 机制在不锁表的情况下拿到一份一致性快照对线上业务影响很小。--master-data2会在备份文件里记录当前 binlog 文件名和位置后续做增量恢复时用得上。恢复数据时执行mysql -u root -p order_db order_db_backup.sql注意只备份不算完还必须定期做恢复演练。没验证过的备份就不算有效备份。真实场景下我遇到过备份文件导出来但磁盘空间不够写不下、恢复时字符集不匹配导致乱码、备份脚本权限不对执行失败等一堆问题。只有在演练中踩过这些坑灾难来临时才能稳住。有条件的话尽快把主从复制搭起来。从库既可以承担一部分只读流量也是热备份手段。但要注意主从复制不是万能药大事务和 DDL 操作很容易造成主从延迟。如果从库只承担少量低优先级查询还好一旦有重查询压过来从库延迟会很明显业务读到过期数据。4.4 常见问题速查表我把平时最常遇到的 MySQL 问题整理成一个表方便快速对照。现象可能原因快速解决思路查询全表扫描缺合适索引或索引失效EXPLAIN分析补联合索引或改写 SQLCPU 持续高慢查询、大聚合、无索引慢日志定位紧急时先杀慢会话锁等待超时大事务、并发更新同一行拆事务查innodb_trx排查未提交事务死锁报错多事务更新顺序不一致固定访问顺序应用层重试连接数打满连接池泄漏或峰值过高检查应用连接池控制max_connections主从延迟大大事务或 DDL 执行拆分事务DDL 错峰执行数据被误删人为操作失误用备份文件加 binlog 增量恢复这张表不能覆盖所有场景但方向对了排查就不会无头苍蝇一样乱转。5. 工具链与一次项目上线的复盘5.1 我常用的排查工具与推荐组合MySQL 的排查工具链不需要太复杂但要成体系。我最常使用的组合是命令行客户端配合 EXPLAIN 做执行计划分析慢日志配合pt-query-digest做聚合统计性能数据借助 MySQL 自带的sys库来查。比如想知道哪个 SQL 整体延迟最高直接查sys.statement_analysisSELECT query, total_latency, rows_examined FROM sys.statement_analysis ORDER BY total_latency DESC LIMIT 10;这个视图会按累计延迟汇总特别适合在系统正常时顺手看一眼“潜伏”的问题 SQL。另外SHOW PROCESSLIST是应急时一定要会的命令能看到当前所有正在执行的连接、耗时和状态。遇到 CPU 飘高用SHOW PROCESSLIST找到长时间Sending data或Copying to tmp table的会话先评估再处理不要手滑直接杀掉核心业务会话。5.2 一次模拟项目的上线复盘与我的体会复盘一个模拟项目 X这是某跨平台系统的核心业务模块包含用户档案、订单和资金流水三块。上线前我们做的主要工作大概是统一字符集为utf8mb4设计了基础建表规范给高频查询加了合理的联合索引开启慢查询日志配置了每日全量备份和 binlog。当时以为已经做得很到位结果上线第二周还是出了问题。某天凌晨一个后台列表页的接口突然变慢查询延迟从 200ms 掉到 8 秒。打开慢日志一看SQL 是按用户名模糊搜索订单列表。业务方要求搜索框支持任意位置匹配于是 SQL 写成了LIKE %关键词%。这个查询天然无法走常规索引订单表几百万行之后性能自然撑不住。最后我们结合业务评估给搜索加了一个独立的全文索引并将高频搜索条件做了分词缓存接口才回到正常水平。同期的另一个问题就是死锁。某运营任务需要把一批订单的状态统一更新同时给每个用户增加积分两个操作分别位于不同的服务。服务之间更新表的顺序不一致并发一高死锁报错频繁出现。最终通过统一资源访问顺序和增加重试机制解决。这两次小事故让我意识到单点技术再熟练如果不在架构层面保持对查询入口、事务边界和数据流量的敏感数据库迟早会出幺蛾子。如果让我给刚接手 MySQL 的人一个最直接的建议那就是把数据模型想清楚备份从第一天就开始做慢查询日志始终保持开启。MySQL 不是玄学绝大多数问题都会在日志和执行计划里留下线索。你愿意去看它就不会辜负你。

相关新闻

OpenShell完全指南:Windows开始菜单底层控制与高效定制

OpenShell完全指南:Windows开始菜单底层控制与高效定制

1. 项目概述:这不是一个“美化工具”,而是一套Windows界面控制权的回归方案“OpenShell完全指南:恢复经典Windows开始菜单与高效自定义技巧”——这个标题里藏着三个被绝大多数用户忽略的关键信号:**“完全”不是指功能多&#xf…

2026/10/11 8:53:43 阅读更多 →
工厂追溯1分钟搞定?关键在数据链路里的中间表设计

工厂追溯1分钟搞定?关键在数据链路里的中间表设计

做了这么多年工厂数字化,我越来越发现一个真相:追溯系统能不能“1分钟搞定”,根本不取决于扫码枪贵不贵,也不取决于软件大不大,而取决于数据链路里有没有那几张关键的中间表。先说个真实场景。某制造企业,做…

2026/10/10 7:02:10 阅读更多 →
sudo提权全解析:从sudo -l到root shell的实战路径

sudo提权全解析:从sudo -l到root shell的实战路径

折腾CTF靶场这几年,我最喜欢的环节不是初始拿shell那一刻,而是从普通用户一路摸到root的过程。很多时候,你手里就一个低权限的用户,粗糙的命令都跑不了,但只要能读到sudo -l的输出,整个局面就可能彻底反转。…

2026/10/11 8:39:54 阅读更多 →

最新新闻

识别虚假技术资源:Bishop深度学习2024真伪验证指南

识别虚假技术资源:Bishop深度学习2024真伪验证指南

简介:这是一本由机器学习权威Christopher M. Bishop与Hugh Bishop合著的深度学习前沿教材,面向高校研究生、AI研究人员及具备数学与编程基础的进阶学习者,系统构建从神经网络基础到Transformer、图神经网络等现代架构的理论框架。资源为单文件…

2026/10/11 10:57:28 阅读更多 →
如何将impeccable拆解为可执行的质量标准与检查清单

如何将impeccable拆解为可执行的质量标准与检查清单

1. 一个词撬动的思维革命:为什么"impeccable"值得深挖第一次看到"impeccable"这个词被单独拎出来当作项目标题,我的直觉是:这要么是个文字游戏,要么背后藏着某种极致追求。后来跟几个做产品和设计的朋友聊了一…

2026/10/11 10:57:28 阅读更多 →
CAPL脚本入门:掌握on start、on message与output三大核心函数

CAPL脚本入门:掌握on start、on message与output三大核心函数

1. 为什么第一个CAPL脚本值得认真对待很多人第一次接触CAPL,心态都是“先跑起来再说”。这个思路没错,但问题在于,如果第一个脚本只是照抄示例、点下编译、看到没有报错就结束,那基本等于没入门。后面一旦遇到真实项目里的报文周期…

2026/10/11 10:57:28 阅读更多 →
操作系统实验报告写作指南:进程调度、内存管理与并发同步实战

操作系统实验报告写作指南:进程调度、内存管理与并发同步实战

简介:这份资源是西安电子科技大学操作系统课程的上机实验报告,面向正在学习操作系统、需要完成进程与线程相关实验的高校学生及自学者。报告围绕Linux环境下C语言编程展开,完整覆盖进程建立、线程共享进程数据、信号通信、匿名管道与命名管道…

2026/10/11 10:57:28 阅读更多 →
无DOM测试与happy-dom:bloub如何验证导出缺陷的测试体系

无DOM测试与happy-dom:bloub如何验证导出缺陷的测试体系

前端图形学 【免费下载链接】bloub SVG recreation of the x.ai bot avatar. One shape morphing through 14 states, measured off the reference video frame by frame. 项目地址: https://gitcode.com/gh_mirrors/bl/bloub 点击查看 免费下载 bloub 是一个用 SV…

2026/10/11 10:57:28 阅读更多 →
小学组C++算法赛初赛备考指南:从真题拆解到避坑技巧

小学组C++算法赛初赛备考指南:从真题拆解到避坑技巧

简介:这份资源是2024年信息素养大赛C算法创意实践挑战赛小学组初赛的真题解析文档,面向小学阶段对编程有兴趣、已具备一定C基础的学习者,也适合指导教师作为教学参考。内容覆盖单选题与判断题两种题型,涉及变量定义、运算符、布尔…

2026/10/11 10:56:27 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →