GreatSQL数据库原理实验:从环境搭建到SQL查询的完整实操指南
简介这份资源是郑州大学计算机与人工智能学院《数据库系统原理》课程的实验报告文档面向修读该课程的学生及需要了解数据库实验流程的学习者。报告围绕万里数据库GreatSQL展开涵盖DBMS系统认识、数据库逻辑与物理组件、环境配置与依赖安装、服务启停管理以及实验结果分析等内容并附有实验截图、图表编号与规范排版可作为实验操作与报告撰写的参考模板。资源包内共1个docx文件约3.69MB内容完整、结构清晰便于直接查阅与借鉴。目前已有507人学习下载适合希望系统掌握数据库实验步骤、理解配置原理与排错思路的读者参考使用。1. 从零搭一套 GreatSQL 实验环境这份数据库原理实验报告能帮你省下多少试错时间如果你正在上《数据库系统原理》这门课或者需要带学生做 DBMS 认知实验大概率会遇到一个很现实的问题教材上讲的基本表、视图、触发器、存储过程这些逻辑组件落到真实环境里到底长什么样光看 PPT 很难有体感。这份实验报告围绕万里数据库 GreatSQL 展开从虚拟机环境配置、二进制包安装、systemd 服务管理一路做到建库建表、索引创建、交互式 SQL 查询九个实验串成一条完整的动手链路。它适合两类人一是正在跟这门课、需要照着步骤复现实验并写报告的学生二是想快速了解国产数据库 GreatSQL 基本操作、但不想从官方手册第一页翻起的开发者。报告里记录的命令和参数选择都是实际跑通过的不是纸上谈兵。2. 环境准备与 GreatSQL 安装从 SELinux 关闭到 systemd 托管的完整链路2.1 为什么先关 SELinux 和防火墙很多新手拿到虚拟机第一件事就是装数据库结果卡在服务起不来、端口连不上翻来覆去查日志也看不出所以然。这份报告的做法是先把 SELinux 和防火墙处理掉再装数据库。这不是偷懒而是实验环境下的务实选择。SELinux 是强制访问控制机制它会限制进程能碰哪些文件、能开哪些端口。数据库进程需要读写数据目录、监听网络端口这些操作在 SELinux 的默认策略下经常被拦截。实验环境里我们不需要那么严格的安全隔离关掉它可以避免大量权限相关的玄学问题。防火墙同理GreatSQL 默认监听 3306 端口如果防火墙没放行客户端根本连不上。操作命令如下# 临时关闭 SELinux当前会话生效 setenforce0 # 永久关闭 SELinux修改配置文件重启后生效 sed -i /^SELINUX/cSELINUXdisabled /etc/selinux/config # 停止并禁用防火墙 systemctl disable firewalld systemctl stop firewalld这里有个细节值得注意setenforce0只对当前运行状态生效重启后就恢复了。真正要持久关闭必须改/etc/selinux/config文件把SELINUX那一行改成disabled。两条命令配合使用才算完整。防火墙的disable和stop也是同理一个管开机自启一个管当前状态。提示生产环境不要照搬这个做法。实验环境关 SELinux 和防火墙是为了减少干扰真实服务器上应该配置精细的 SELinux 策略和防火墙规则。2.2 依赖包安装与二进制包部署GreatSQL 提供的是二进制包不需要编译但依赖一些系统库。报告里列出的依赖包比较多我按功能分类说明一下yum install -y pkg-config perl libaio-devel numactl-devel numactl-libs \ net-tools openssl openssl-devel jemalloc jemalloc-devel \ perl-Data-Dumper perl-Digest-MD5 python2 perl-JSON perl-Test-Simplelibaio-devel异步 I/O 支持InnoDB 存储引擎依赖它做磁盘读写numactl-devel和numactl-libsNUMA 架构下的内存分配优化多核服务器上影响性能openssl和openssl-develSSL 连接和加密函数依赖jemalloc和jemalloc-devel内存分配器GreatSQL 用它替代默认的 malloc 提升性能perl相关包一些管理脚本和测试工具用 Perl 写的这些包缺一个都可能导致后续启动失败建议一次性装完。装完后下载二进制包并解压cd /usr/local wget https://product.greatdb.com/GreatSQL-8.0.32-25/GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64-minimal.tar.xz tar xf GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64-minimal.tar.xz解压后目录名很长后面配置文件和 service 文件里都要写完整路径建议先确认一下实际目录名。接下来创建 mysql 用户和用户组因为数据库进程不应该用 root 跑/sbin/groupadd mysql /sbin/useradd -g mysql mysql -d /dev/null -s /sbin/nologin-d /dev/null表示不分配家目录-s /sbin/nologin表示不允许登录 shell。这是服务账号的标准做法减少安全风险。然后创建数据目录并授权mkdir /var/lib/mysql/ chown -R mysql:mysql /var/lib/mysql/ /var/log /usr/local/GreatSQL-8.0.32-25-Linux-glibc2.17-x86_64-minimal2.3 systemd 服务配置与启动验证把 GreatSQL 注册成 systemd 服务后面就能用systemctl统一管理。创建服务文件vim /lib/systemd/system/greatsql.service文件内容需要指定 ExecStart、ExecStop、User、Group 等字段指向实际的二进制路径和数据目录。写完后重载 systemdsystemctl daemon-reload systemctl start greatsql启动后别急着操作先确认服务状态和进程systemctl status greatsql ps -ef | grep mysqld ss -lntp | grep mysqldsystemctl status看服务是否 activeps确认 mysqld 进程存在ss检查 3306 端口是否在监听。三个都正常说明数据库真的起来了。最后看一眼数据目录ls /var/lib/mysql应该能看到 ibdata1、ib_logfile 等 InnoDB 的系统文件以及 mysql、sys 等系统库目录。这一步是验证安装是否完整的关键如果数据目录是空的说明初始化没成功需要检查配置文件里的 datadir 路径是否正确。3. 建库建表与索引操作SQL 语句背后的数据类型和约束选择3.1 数据库创建与存储位置查看实验二的核心是创建数据库 DB然后建三张表STUDENTS、COURSES、SC。先看建库CREATE DATABASE DB; SHOW DATABASES; USE DB;SHOW DATABASES确认 DB 已创建USE DB切换到该库。建完后可以查看数据库的存储位置和文件信息SHOW VARIABLES LIKE datadir;这会返回数据目录的路径。每个数据库对应 datadir 下的一个子目录里面存放该库的表结构文件.frm 或 .ibd和表空间文件。理解这一点对后续排查磁盘空间问题很有帮助。3.2 基本表创建从草稿表到正式表报告里先建了三张简单表做测试然后删掉重建正式表。这个流程值得说一下先用简单结构验证语法和连接没问题再上正式结构避免一上来就写复杂 SQL 出错后不好定位。草稿表CREATE TABLE STUDENTS(id int primary key, name varchar(60)); CREATE TABLE COURSES(cid int primary key, cname varchar(60)); CREATE TABLE SC(id int, cid int, primary key(id,cid), grade int);正式表CREATE TABLE STUDENTS( Sno char(9) PRIMARY KEY, Sname char(10) NOT NULL, Sex char(2), Birthday DATE, Speciality char(20), Dno char(4) ); CREATE TABLE Courses( Cno char(5) PRIMARY KEY, Cname char(20) NOT NULL, Period int, Credit int ); CREATE TABLE SC( Sno char(9), Cno char(5), Grade int, PRIMARY KEY (Sno,Cno) );这里有几个参数选择值得展开。Sno用char(9)而不是varchar因为学号是定长的char 在存储和比较时效率略高。Sname加了NOT NULL约束确保学生姓名不能为空。SC表用(Sno, Cno)做复合主键保证同一个学生同一门课只有一条成绩记录。Grade用int类型虽然成绩可以是小数但实验场景下整数够用。注意char和varchar的选择不是绝对的。char 适合定长字段varchar 适合变长字段。如果字段长度变化大用 varchar 更省空间。3.3 数据填充与索引创建建完表后插入数据INSERT INTO STUDENTS VALUES (201705001, 张华, 男, 1999-12-16, 计算机, CS), (201705002, 张晓霞, 女, 1999-01-01, 软件工程, SE), (201706001, 李玉, 女, 1999-10-17, 数学, MA); INSERT INTO COURSES VALUES (CS101, 计算机科学导论, 2, 1), (CS102, 数据库系统, 4, 4), (CS103, 操作系统, 4, 3); INSERT INTO SC VALUES (201705001, CS101, 89), (201705002, CS102, 92), (201705003, CS101, 88);插入时注意日期格式GreatSQL 默认接受YYYY-MM-DD格式。如果写成1999_12_16会报错报告里后面实验三的插入语句就踩了这个坑需要留意。索引创建CREATE INDEX Student_Dept ON Students (Dno); CREATE UNIQUE INDEX Course_Cno ON Courses (Cno);Student_Dept是普通索引加速按系号查询。Course_Cno是唯一索引除了加速查询还保证课程号不重复。删除索引DROP INDEX Course_Cno ON Courses;索引不是越多越好。每个索引都会增加插入和更新时的开销因为数据库要同时维护索引结构。实验里建两个索引是为了演示语法实际项目中要根据查询模式来决定建哪些索引。4. 交互式 SQL 查询与更新从单表查询到多表关联的实操要点4.1 建表时的外键与约束设计实验三重新建了一套更完整的表结构包含 Departments、Teachers、Students、Courses、SC、Teaches 六张表。这套表结构比实验二复杂涉及外键关联。先看建表CREATE TABLE Departments( Dno char(4) PRIMARY KEY, Dname char(20), Dheadno char(7) ); CREATE TABLE Teachers( Tno char(7) PRIMARY KEY, Tname char(10) NOT NULL, Sex char(2) CHECK(Sex 男 OR Sex 女), Birthday DATE, Title char(10), Dno char(4) ); CREATE TABLE Students( Sno char(12) PRIMARY KEY, Sname char(20) NOT NULL, Birthday DATE, Speciality char(20), Dno char(4), Sex char(4) ); CREATE TABLE Courses( Cno char(5) PRIMARY KEY, Cname char(30) NOT NULL, Period SMALLINT, Credit SMALLINT ); CREATE TABLE SC( Sno char(12), Cno char(5), Grade int CHECK(Grade 0 AND Grade 100), PRIMARY KEY (Sno, Cno), FOREIGN KEY (Sno) REFERENCES Students (Sno), FOREIGN KEY (Cno) REFERENCES Courses (Cno) ); CREATE TABLE Teaches( Tno char(7), Cno char(5), TCsores int, PRIMARY KEY (Tno, Cno) );这里有几个设计点。Teachers表的Sex字段加了CHECK约束只允许“男”或“女”。SC表的Grade加了CHECK(Grade 0 AND Grade 100)防止成绩超出合理范围。SC表还定义了两个外键分别指向Students和Courses保证成绩记录不会引用不存在的学生或课程。Teaches表建的时候没加外键后面用ALTER TABLE补上ALTER TABLE Teaches ADD FOREIGN KEY (Cno) REFERENCES Courses(Cno); ALTER TABLE Teaches ADD FOREIGN KEY (Tno) REFERENCES Teachers(Tno); ALTER TABLE Students ADD FOREIGN KEY (Dno) REFERENCES Departments(Dno); ALTER TABLE Teachers ADD FOREIGN KEY (Dno) REFERENCES Departments(Dno);这种先建表后加外键的做法在实际项目中很常见因为建表时如果依赖的表还没创建外键会失败。先建所有表再统一加外键顺序更灵活。4.2 查询操作WHERE、IN、BETWEEN 的用法与边界数据插入完成后开始查询操作。报告里覆盖了几种典型查询模式我挑几个有代表性的说。不带 WHERE 的查询SELECT * FROM Courses; SELECT Sname, 2024 - YEAR(Birthday) AS Age FROM Students;第二条用YEAR()函数提取出生年份用当前年份减去得到年龄。这里2024是硬编码的实际使用中可以用YEAR(CURDATE())动态获取当前年份。带 WHERE 的查询SELECT Tname, Sex FROM Teachers WHERE Title 讲师; SELECT DISTINCT Sno FROM SC WHERE Grade 60; SELECT Sname, Speciality FROM Students WHERE YEAR(Birthday) BETWEEN 1997 AND 1999; SELECT Sname, Speciality FROM Students WHERE YEAR(Birthday) NOT BETWEEN 1997 AND 1999;DISTINCT用于去重因为一个学生可能有多门不及格不加 DISTINCT 会返回重复学号。BETWEEN是闭区间包含两端值。NOT BETWEEN则排除这个区间。IN 表达式SELECT Sno, Sname FROM Students WHERE Speciality IN (计算机, 软件工程); SELECT Sno, Sname FROM Students WHERE Speciality NOT IN (计算机, 软件工程);IN适合枚举值较少的场景比多个OR条件写起来简洁。NOT IN则取反。注意NOT IN遇到 NULL 值时有坑如果子查询返回的结果集中包含 NULLNOT IN会返回空结果集。实验里直接写常量列表不涉及这个问题但实际开发中要留意。4.3 更新操作与事务边界报告里更新操作涉及插入、修改和删除。以插入为例INSERT INTO Courses VALUES (cs101, 计算科学导论, 2, 1), (cs102, C 语言, 4, 3), (cs201, 数据结构, 4, 3), (cs202, 离散数学, 4, 3), (cs301, 数据库系统原理, 4, 3);这里课程号用了小写cs101而实验二里用的是大写CS101。GreatSQL 默认对字符类型比较不区分大小写取决于排序规则但建议统一风格避免混淆。修改和删除操作UPDATE SC SET Grade 95 WHERE Sno 201705001 AND Cno cs101; DELETE FROM SC WHERE Grade 60;UPDATE和DELETE一定要带WHERE条件否则会更新或删除全表数据。这是血泪教训新手很容易犯。执行前先用SELECT确认条件范围是个好习惯。提示GreatSQL 支持事务InnoDB 存储引擎下UPDATE和DELETE可以通过ROLLBACK回滚。但前提是没执行COMMIT且用的是事务型存储引擎。5. 实验报告撰写与常见问题排查截图规范、环境差异与 SQL 兼容性5.1 实验报告格式要求与截图规范报告对格式有明确要求截图下方要有图编号和图题表格上方要有编号和表名段首空两格行文用书面语。这些要求看似琐碎但实际提交时格式不规范会被扣分。截图建议用系统自带的截图工具或gnome-screenshot截完后统一命名比如fig1_service_status.png、fig2_mysqld_process.png。在文档里插入后下方居中写“图1 进程状态”“图2 mysqld进程”。表格用 Markdown 或 Word 表格都行上方写“表1 学生表结构”之类的标题。5.2 常见问题排查现象一systemctl start greatsql启动失败状态显示 failed。原因数据目录权限不对或者配置文件路径写错。GreatSQL 进程以 mysql 用户运行如果 datadir 的属主不是 mysql进程没有写权限。解决检查/var/lib/mysql的属主和属组用chown -R mysql:mysql /var/lib/mysql修正。同时检查/etc/my.cnf里的datadir和socket路径是否与实际一致。现象二客户端连接报“Cant connect to local MySQL server through socket”。原因socket 文件路径不匹配。GreatSQL 默认 socket 在/var/lib/mysql/mysql.sock但客户端可能去/tmp/mysql.sock找。解决在/etc/my.cnf的[client]段和[mysqld]段都指定socket路径保持一致。或者连接时用-S参数指定 socket 路径。现象三插入日期数据时报“Incorrect date value”。原因日期格式不对。报告里实验三的插入语句用了1999_12_16这种下划线格式GreatSQL 不认。解决改成1999-12-16标准格式。如果一定要用其他格式可以用STR_TO_DATE()函数转换。现象四外键约束导致插入失败。原因插入的数据在关联表中不存在。比如往SC表插入Sno201705004但Students表里没有这个学号。解决先插入主表数据再插入从表数据。或者临时关闭外键检查SET FOREIGN_KEY_CHECKS0;但生产环境不建议这么做。现象五NOT IN子查询返回空结果。原因子查询结果集中包含 NULL 值。SQL 的三值逻辑里NULL NOT IN (..., NULL)结果是 UNKNOWN不会返回任何行。解决在子查询里加WHERE column IS NOT NULL过滤掉 NULL 值。5.3 标准 SQL 与 GreatSQL 的差异报告里提到要注意标准 SQL 和 GreatSQL 的相同与不同之处。实际使用中GreatSQL 基于 MySQL 8.0大部分标准 SQL 都支持但有些细节有差异。比如YEAR()函数在标准 SQL 里不是内置函数GreatSQL 提供了。日期格式的解析也比标准 SQL 宽松一些。写 SQL 时如果考虑可移植性尽量用标准语法如果只针对 GreatSQL可以用它的扩展功能。6. 从实验到实战用 information_schema 反查数据库对象与性能验证实验一里有个容易被忽略的操作通过information_schema查看数据库的逻辑组件。这个系统库是数据库的“黑匣子”里面记录了所有表、视图、触发器、存储过程、约束的元数据。学会查它排错和验证效率会高很多。查看所有基本表SELECT TABLE_NAME, TABLE_TYPE FROM information_schema.TABLES WHERE TABLE_SCHEMA DB;查看触发器SELECT TRIGGER_NAME, EVENT_MANIPULATION, EVENT_OBJECT_TABLE FROM information_schema.TRIGGERS WHERE TRIGGER_SCHEMA DB;查看存储过程SELECT ROUTINE_NAME, ROUTINE_TYPE FROM information_schema.ROUTINES WHERE ROUTINE_SCHEMA DB AND ROUTINE_TYPE PROCEDURE;查看约束SELECT CONSTRAINT_NAME, TABLE_NAME, CONSTRAINT_TYPE FROM information_schema.TABLE_CONSTRAINTS WHERE TABLE_SCHEMA DB;这几个查询在实验报告里可能只是截图交差但实际工作中非常有用。比如你接手一个陌生的数据库不知道有哪些触发器在暗中修改数据查information_schema.TRIGGERS就能一目了然。再比如性能出问题时查information_schema.KEY_COLUMN_USAGE确认索引是否建对。验证索引是否生效可以用EXPLAINEXPLAIN SELECT * FROM Students WHERE Dno CS;看key列是否显示Student_Deptrows列估算扫描行数。如果key是 NULL说明索引没被用上可能需要检查查询条件是否匹配索引列或者索引选择性是否太低。查看数据库物理存储信息SHOW VARIABLES LIKE innodb_page_size; SHOW VARIABLES LIKE datadir;innodb_page_size默认 16KB这是 InnoDB 的最小存储单位。理解这一点对优化大表性能有帮助一次 I/O 读取一个页页越小单次读取快但读取次数多页越大单次读取慢但次数少。默认值在大多数场景下是平衡的。从那以后我每次搭完数据库环境都会先用information_schema把关键对象扫一遍确认没有遗漏的触发器或约束再开始跑业务 SQL。这个习惯帮我省了不少事后排查的时间。希望帮到你。本文还有配套的精品资源点击获取

相关新闻

数据库学生成绩管理系统课设全解析:从需求分析到C++/MFC落地

数据库学生成绩管理系统课设全解析:从需求分析到C++/MFC落地

简介:面向数据库课程设计报告撰写,这份文档是一份完整的学生成绩管理系统数据库设计示例,围绕 SQL Server 2008 与 VC6.0/C 环境,完整演示从需求分析、概念设计、逻辑结构设计,到物理实施与运行的典型流程。资源为单文…

2026/10/13 16:29:45 阅读更多 →
Kubernetes存储体系拆解:从Volume到PV/PVC/StorageClass动态供给

Kubernetes存储体系拆解:从Volume到PV/PVC/StorageClass动态供给

刚接触Kubernetes存储的时候,我一度被Volume这个概念绕得头晕——它和Docker的Volume不太一样,跟云硬盘也不是一回事,PV、PVC、StorageClass三个名词摆在一起,光看文档总觉得隔着一层纱。等真正在集群里挂过盘、排过错&#xff0c…

2026/10/13 16:29:45 阅读更多 →
CPN ML语言:着色Petri网与函数式编程的融合实践

CPN ML语言:着色Petri网与函数式编程的融合实践

1. CPN ML语言概述与核心特性CPN ML(Coloured Petri Nets ML)是一种基于标准ML(MetaLanguage)的函数式编程语言扩展,专门用于建模和分析着色Petri网系统。这门语言将传统Petri网的图形化建模能力与函数式编程的表达力相…

2026/10/13 16:29:45 阅读更多 →

最新新闻

金字塔原理:职场沟通结构化表达的四个原则与实战技巧

金字塔原理:职场沟通结构化表达的四个原则与实战技巧

废话不多说,这可能是你在职场沟通中最值得补的一课。我见过太多人,明明业务能力很强,可一开口就败下阵来:汇报讲了十分钟,领导眉头越皱越紧;邮件写了几百字,对方回复“所以你想表达什么”&#…

2026/10/13 17:10:09 阅读更多 →
实时数据采集架构设计:从需求量化到全链路调优

实时数据采集架构设计:从需求量化到全链路调优

直接开讲。实时数据采集架构设计这件事,我前前后后做了三年多,从最早只会写脚本定时拉数据,到后来能独立设计一套覆盖采集、缓冲、计算、落库全链路的实时方案,中间踩过不少坑。很多人一听到“实时数据采集”这几个字,…

2026/10/13 17:10:09 阅读更多 →
专科生AI论文写作平台实测:8个靠谱工具全解析

专科生AI论文写作平台实测:8个靠谱工具全解析

实话实说,专科生写毕业论文,难度不比本科生低,甚至更难。难在哪?时间紧、任务重,还有相当一部分同学是第一次接触完整的学术写作流程。我自己当年在专科阶段写毕业设计报告时,光是“怎么开头”“怎么把一段…

2026/10/13 17:10:09 阅读更多 →
Docker部署Ceph实现RBD镜像创建与挂载全流程

Docker部署Ceph实现RBD镜像创建与挂载全流程

1. 为什么非得用 Docker 部署 Ceph?——从“三台物理机起步”到“单机快速验证”的真实动因很多人看到“Docker 部署 Ceph”第一反应是皱眉:“Ceph 不是分布式存储系统吗?跑在容器里靠谱?”这问题我当年在某高校实验室带学生做存储…

2026/10/13 17:10:09 阅读更多 →
Python机器学习入侵检测系统实战:从NSL-KDD到Flask部署

Python机器学习入侵检测系统实战:从NSL-KDD到Flask部署

简介:这是一份基于Python机器学习的入侵检测系统项目源码,面向希望入门或进阶网络安全与机器学习方向的学习者,可作为毕业设计、课程设计、大作业或工程实训的参考方案。项目围绕网络流量嗅探与异常检测展开,包含数据预处理、特征…

2026/10/13 17:10:09 阅读更多 →
荷兰耕地遥感语义分割:从数据标注到模型训练全流程实战

荷兰耕地遥感语义分割:从数据标注到模型训练全流程实战

简介:这份荷兰耕地语义分割遥感影像数据集面向遥感图像处理、计算机视觉与农业监测方向的研究者和开发者,用于训练和验证耕地识别与像素级分割模型。资源包共2000个文件,以xml标注文件为主要类型,对应每张遥感影像的像素级类别标签…

2026/10/13 17:09:08 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 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/12 21:05:09 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/12 18:11:17 阅读更多 →