Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

install.md: add MySQL 8 auth compatibility note (flUseMySql2)

未关闭 适合新手
#10 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
1/5
预计耗时
1 小时以内
新手友好度
88/100
Issue 类型
文档
描述清晰度
描述清楚
活跃度
冷清
技术栈
javascript, mysql

调研方向

阅读 install.md 中的 Create your database 部分,并检查 package.json,以确认 issue 中提到的 mysql 和 mysql2 依赖项。在 schema 块之后添加 MySQL 8 兼容性说明,包括 flUseMySql2 设置,并澄清无需额外安装;当针对 MySQL 8 用户的设置指南清晰明确时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

Problem

MySQL 8.0+ changed the default authentication plugin to caching_sha2_password. The older mysql npm package (used by davesql when flUseMySql2 is absent or false) only speaks mysql_native_password, so the server logs this error at startup and cannot reach the database:

ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client

This affects anyone running the current mysql:8 Docker image (which is 8.4.x), or any self-managed MySQL 8.0+ instance with default settings. MySQL 8.4 additionally removed mysql_native_password entirely, so there is no workaround on the MySQL side without recompiling or enabling a deprecated plugin.

Fix

davesql already supports mysql2, which handles caching_sha2_password natively. Setting one flag in config.json switches to it — no extra npm install needed, both packages ship with package.json:

"database": {
    "host": "127.0.0.1",
    "port": 3306,
    "user": "rsschat",
    "password": "...",
    "charset": "utf8mb4",
    "connectionLimit": 100,
    "database": "rsschat",
    "flUseMySql2": true
    }

Suggested doc addition

A short note in the Create your database section of install.md, after the schema block:

MySQL 8 compatibility: MySQL 8.0+ uses caching_sha2_password by default, which the mysql npm package does not support. Add "flUseMySql2": true to the database block in config.json. Both mysql and mysql2 are already in package.json — no extra install needed.

Alternatively, davesql could default flUseMySql2 to true since mysql2 is a strict superset and MySQL 8 is now the norm.


Surfaced during a fresh install against mysql:8 (8.4.10) on Ubuntu, following the current install.md instructions.
Issue formulated by Claude Code

主要语言
JavaScript
星标
37
派生
7
PR 合并指标
30 天内没有已合并 PR

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

scripting/rss.chat 的其他 Issue

查看 scripting/rss.chat 的全部 Issue

相似的 Issue

更多 JavaScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。