这门课解决的不是"如何写 SQL"这种入门问题,而是一个更具体的场景:你已经会一点 C++,手里有 MySQL,但当程序要同时跑在 Windows 和 Linux 上、要处理百万级甚至千万级数据、要自己动手做一个能查日志的后端服务时,中间那一大段没人教的路该怎么走。

先看它适合谁,不适合谁

如果你完全没碰过 C++ 语法,或者从没连接过数据库,这门课会让你吃力。它的起点默认你能读懂类、指针、基本的编译流程,否则光是配环境就会耗掉大半耐心。

但如果你属于下面这几类,投入产出比会比较高:写过 CRUD 但对数据库连接的生命周期、查询性能没有概念;做过后端但一直用框架,不清楚底层怎么和 MySQL 对话;或者手上有跨平台需求,代码在 Linux 编译通过,换到 Windows 就报一堆链接错误。这门课的价值在于把这些零散的坑串成一条线。

跨平台这件事,具体难在哪

"跨平台编程"听起来像口号,落到代码上其实是很实在的几件事:数据库客户端库在不同系统下的引入方式不一样,字符串编码和文件路径的处理方式不一样,编译和链接的配置也不一样。课程把这些差异放在真实的项目里处理,而不是单独抽一节讲理论。学完你至少能判断:一段能在一台机器上跑的数据库代码,换环境后可能在哪几个位置出问题,以及怎么定位。

以日志审计系统为主线,而不是零散知识点

课程后段围绕一个日志审计系统展开,从前端查询到后端数据获取是一条完整链路。这里能看出设计意图:它不是把"连接数据库""执行查询""处理结果集"拆成孤立的小节,而是让你在一个有分页、有搜索、有模糊匹配的真实需求里反复用到它们。

其中比较有信息量的一段,是对比有索引和无索引在百万级数据下的查询耗时。这类内容看视频和别人复述是两回事——只有自己跑一遍、看到那个时间差,才会真正记住索引为什么重要。后面还涉及千万条测试数据的批量插入,这属于实际工作中迟早会遇到、但教程里常常跳过的部分。

学完能独立做什么

  • 用 C++ 连接 MySQL,完成增删改查,并处理连接和结果集的基本异常情况;
  • 把一个在 Linux 上跑通的数据库程序,迁移到 Windows 环境并解决编译与链接问题;
  • 实现带分页和模糊搜索的查询接口,并对慢查询做出判断和优化;
  • 为一个后端服务生成并插入批量测试数据,验证性能表现。

这些能力对应的是初级后端或工具开发岗位的日常任务,不是"学完就能拿高薪"的承诺,但确实是从"能写代码"到"能交付一个能用的东西"之间的实打实的一步。

资料怎么用

建议不要顺着视频从头看到尾。前几章打基础的部分可以快速过,重点放在项目章节:先自己按需求写一版,卡住了再看讲解,尤其是跨平台配置和性能对比那几段,看别人操作和自己动手的差距最大。代码尽量在两种系统上都编译一遍,哪怕只是虚拟机,这个过程本身就是课程的核心内容之一。

如果你目前的项目正好涉及 C++ 直连数据库,或者你打算往偏底层的后端方向走,这门课值得花时间。如果只是想快速做一个带数据库的小工具,用现成的框架可能更省事。

课程目录

📁 第7章 日志审计系统项目实战和课程总结 7-19课程总结和完整代码提供.mp4
 [74.8 MB] 7-18完成client的like模糊查找.mp4
 [30.7 MB] 7-17client完成搜索功能并测试百万级数据的有无索引的时间开销.mp4
 [97.3 MB] 7-16client完成审计数据获取并完成千万条测试数据插入接口.mp4
 [6.7 MB] 7-15Client完成分页显示log.mp4
 [85.9 MB] 7-13Client完成接收用户名和密码输入并替换密码显示为星号.mp4
 [79.2 MB] 7-11Center完成用正则审计事件存储结果.mp4
 [78.1 MB] 7-10Center主循环获取到Agent发送的事件.mp4
 [70.0 MB] 7-7Center审计策略表安装和策略添加.mp4
 [73.8 MB] 7-1日志审计系统项目模块分析.mp4
 [37.3 MB] 7-5Agent模块完成IP获取表创建日志插入.mp4
 [183.4 MB] 7-9完成Center的添加设备.mp4
 [39.4 MB] 7-6Center模块安装配置和数据初始化.mp4
 [103.6 MB] 7-14client验证用户名密码并检测注入.mp4
 [101.2 MB] 7-12Client跨平台项目创建完成Init初始化.mp4
 [46.8 MB] 7-4Agent模块完成读取日志主循环.mp4
 [40.0 MB] 7-3Agent模块完成初始化数据库和日志文件.mp4
 [68.4 MB] 7-8完成Center用户初始化和日志表审计表和设备表的初始化.mp4
 [57.4 MB] 7-2日志审计系统Agent模块项目创建.mp4
 [73.5 MB] 📁 第5章 插入和读取二进制数据并移植到ubuntu 5-5完成UpdateBin修改二进制数据逇接口并测试.mp4
 [63.3 MB] 5-4完成支持map的Update接口并测试修改数据.mp4
 [61.7 MB] 5-1完成文件读取接口的封装.mp4
 [70.5 MB] 5-3完成文件存储接口并读取插入的二进制数据.mp4
 [46.1 MB] 5-2完成二进制文件内容插入的接口InsertBin封装.mp4
 [102.3 MB] 5-6完成LXMysql事务的接口封装.mp4
 [32.2 MB] 📁 第4章 MySQL API C++封装 4-7结果集获取StoreResult和清理接口完成并测试.mp4
 [59.1 MB] 4-6完成Options接口封装设置自动重连和超时并加入命名空间.mp4
 [93.5 MB] 4-1MySQLAPIC++封装策略和方法说明.mp4
 [28.9 MB] 4-9完成支持map的Insert插入数据接口封装.mp4
 [162.1 MB] 4-2LXMysql动态链接库和测试vs2017项目创建.mp4
 [88.5 MB] 4-5完成Query执行sql语句的接口封装和测试.mp4
 [65.6 MB] 4-3完成封装的Init和Close接口.mp4
 [54.7 MB] 4-4完成Connect连接数据的接口和测试.mp4
 [48.1 MB] 4-8完成FetchRow获取一行vector数据并完成自定义类型.mp4
 [50.5 MB] 📁 第3章 事务和存储过程API开发 3-4mysql_stmt_init插入二进制数据接口分析.mp4
 [14.7 MB] 3-3比较单条和多条SQL语句及事务插入十万条数据的性能.mp4
 [89.6 MB] 3-1MYSQL事务特性和用法介绍.mp4
 [23.0 MB] 3-2MYSQl事务API代码演示COMMIT_ROLLBACK.mp4
 [85.2 MB] 3-7分析存储过程调用方法通过代码创建存储过程.mp4
 [62.1 MB] 3-5完成二进制图片的读取和blob插入mysql_stmt.mp4
 [111.3 MB] 3-6完成数据库中二进制数据图片的读取并存储为文件.mp4
 [57.9 MB] 3-8通过API调用存储过程并传递参数获取返回值.mp4
 [76.1 MB] 📁 第1章 课程介绍和环境准备 1-3mysql_workbench官方图像客户端安装和使.mp4
 [22.6 MB] 1-2mysql_server_windows服务器安装.mp4
 [67.3 MB] 1-5vs2017mysqlapi项目创建调用静态库和动态库.mp4
 [60.7 MB] 1-7linux上mysqlapi项目创建编译运行.mp4
 [33.4 MB] 1-8mysql_init_API库的初始化和清理.mp4
 [24.9 MB] 1-4vs2017下载安装说明.mp4
 [10.2 MB] 1-6MysqlServer8.0在ubuntu上安装和配置.mp4
 [38.5 MB] 1-1课程介绍.mp4
 [37.5 MB] 📁 第2章 MySQL API开发 2-5遍历并显示结果集mysql_fetch_row.mp4
 [51.8 MB] 2-11一次执行多条sql语句并遍历获取结果集mysql_next_.mp4
 [83.9 MB] 2-9UPDATE修改数据并根据std的map变量自动生成.mp4
 [86.1 MB] 2-6获取表字段信息并打印全字段数据mysql_fetch_fie.mp4
 [57.7 MB] 2-8使用MysqlAPI通过INSERT插入一千条数据.mp4
 [98.9 MB] 2-3mysql数据查询接口分析.mp4
 [63.4 MB] 2-2mysql连接超时时间和自动重连设置和测试mysql_.mp4
 [65.8 MB] 2-10DELETE和truncate清理数据.mp4
 [53.0 MB] 2-4获取结果集mysql_store_result.mp4
 [48.4 MB] 2-1mysql_real_connect数据库完成连接.mp4
 [29.4 MB] 2-7使用mysqlAPI自动创建表.mp4
 [61.0 MB] 📁 第6章 跨平台中文乱码问题和mysql锁 6-4LXMysql库添加字符集转换函数并测试.mp4
 [167.0 MB] 6-1字符编码类型mysql设置和转换API分析.mp4
 [46.4 MB] 6-5简易获取数据的接口GetResult实现.mp4
 [79.6 MB] 6-2windows上字符集gbk和utf8互转.mp4
 [122.7 MB] 6-6mysql的表锁和行锁代码示例购票竞争.mp4
 [116.0 MB] 6-3linux上字符集GBK和UTF8互转.mp4
 [156.1 MB] 适合人群 C++开发者 数据库管理员 后端开发工程师 学习收获 熟练使用C++操作MySQL 掌握跨平台编程技术 提升数据库开发能力 祝您学习愉快! 学有所成,前程似锦!