在 Cursor 个人知识库项目中,通过更新 config.ini 中的 root 密码完成数据库连接,然后运行 main.py 初始化表结构并执行首次采集,验证增量逻辑。日常可使用命令行自动导入新对话记录。
核心问题
如何为个人知识库项目配置 MySQL 数据库密码并完成初始化与采集?
背景
在基于 Cursor 的个人知识库项目(d-python-project)中,需要连接 MySQL 数据库来存储采集的提问记录。用户提供了数据库账户信息(root / 123456),但首次初始化时因配置读取顺序问题导致使用了旧密码连接失败。本文记录一次完整的密码配置、排错、初始化与增量采集验证流程。
配置数据库密码
项目使用 config.ini 存放数据库连接信息。找到该文件,修改以下字段:
[database]
user = root
password = 123456
保存后,脚本将读取新的密码。注意:如果初始化过程中同时执行了写配置和建表操作,可能因并发导致仍使用缓存的旧配置,建议修改后单独重新执行初始化。
初始化表结构
运行主脚本进行数据库初始化:
cd d:\python_project\个人知识库
python main.py
选择菜单中的初始化选项,程序会根据模型定义自动创建所需的表(如 kb_question)。成功后控制台会输出“初始化表结构成功”。
首次采集与增量逻辑
初始化完成后,执行首次采集测试:
python main.py --auto cursor
该命令会扫描指定目录下的 Cursor 对话文件,解析出提问内容并写入数据库。首次运行结果:扫描 2 个文件,新增 11 条提问。
再次运行相同命令,由于文件内容无新增行,程序正确跳过,显示“增量扫描,无新行”,避免重复导入。此时查询 kb_question 表,记录数仍为 11,去重逻辑工作正常。
常见排错:密码更新不生效
如果在修改 config.ini 后仍然提示连接失败,可能是初始化过程与配置写入并行执行,导致模块在启动时加载了旧的配置。解决方法:
- 确认
config.ini已保存正确的密码。 - 重新启动 Python 进程或单独执行一次不带额外参数的初始化命令。
- 如果问题依旧,检查代码中是否有多处读取配置的缓存,必要时清理
__pycache__后重试。
日常使用命令
日常更新只需在有新对话后执行采集:
cd d:\python_project\个人知识库
python main.py # 交互菜单,可手动选择采集
python main.py --auto cursor # 直接采集 Cursor 目录
增量机制会自动识别新增内容,无需担心重复数据。
总结
本次联调验证了数据库密码配置、表初始化、采集去重等核心功能。通过一个简单的密码更新操作,快速定位了配置并发问题,确保了知识库后续稳定运行。日常使用仅需一条命令即可自动导入新问题,适合持续积累个人学习笔记。