Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

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

Open Beginner friendly
#10 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
88/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Quiet
Tech stack
javascript, mysql

Research direction

Read the Create your database section in install.md and inspect package.json to confirm the mysql and mysql2 dependencies mentioned in the issue. Add the MySQL 8 compatibility note after the schema block, including the flUseMySql2 setting and no-extra-install clarification; done means the setup guidance is clear for MySQL 8 users.

Written by the indexing model from the issue text.

Description

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

Dominant language
JavaScript
Stars
37
Forks
7
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from scripting/rss.chat

All issues in scripting/rss.chat

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.