1Panel Version
v2.3.1
Please describe your needs or suggestions for improvements
保留 PostgreSQL 数据文件,删除数据库应用后重建(初始化时使用原来的 root 账号和密码),通过「数据库 → 从服务器同步」可以同步出原有的数据库列表,但此时列表中没有绑定密码。点击「绑定账号」并输入原来已存在的账号和密码时,提示"用户名已存在",无法完成绑定。
目前 PostgreSQL 的绑定账号行为是新建用户,而 MySQL / MariaDB 的绑定账号是兼容已有用户,两者行为不一致,导致上述场景下 PostgreSQL 无法绑定已有用户。
Please describe the solution you suggest
No response
Additional Information
复现步骤
保留 PostgreSQL 数据文件,删除数据库应用;
重新创建 PostgreSQL 应用,初始化时使用原来的 root 账号和密码;
进入「数据库」菜单,通过「从服务器同步」同步现有数据库信息,得到原有数据库列表(此时列表中未绑定数据库密码);
点击「绑定账号」,输入原来已存在的账号和密码;
提示"用户名已存在",绑定失败。
期望的结果
PostgreSQL 的「绑定账号」与 MySQL / MariaDB 保持一致:当用户已存在时,校验密码后直接绑定该已有用户,而不是强制新建用户。
实际的结果
提示"用户名已存在",无法绑定,只能新建一个不同名称的用户绕过。
补充说明
官方已在交流群确认:pg 这边绑定是新建用户,mysql / mariadb 是兼容已有用户。
常见场景:通过保留数据文件来迁移 / 恢复数据库,此时原用户和库仍然存在,无法绑定已有用户会影响使用。
建议方向:绑定账号时先检测用户是否存在;若存在则校验密码并绑定,不存在再走新建逻辑(仅针对 PostgreSQL)。
1Panel Version
v2.3.1
Please describe your needs or suggestions for improvements
保留 PostgreSQL 数据文件,删除数据库应用后重建(初始化时使用原来的 root 账号和密码),通过「数据库 → 从服务器同步」可以同步出原有的数据库列表,但此时列表中没有绑定密码。点击「绑定账号」并输入原来已存在的账号和密码时,提示"用户名已存在",无法完成绑定。
目前 PostgreSQL 的绑定账号行为是新建用户,而 MySQL / MariaDB 的绑定账号是兼容已有用户,两者行为不一致,导致上述场景下 PostgreSQL 无法绑定已有用户。
Please describe the solution you suggest
No response
Additional Information
复现步骤
保留 PostgreSQL 数据文件,删除数据库应用;
重新创建 PostgreSQL 应用,初始化时使用原来的 root 账号和密码;
进入「数据库」菜单,通过「从服务器同步」同步现有数据库信息,得到原有数据库列表(此时列表中未绑定数据库密码);
点击「绑定账号」,输入原来已存在的账号和密码;
提示"用户名已存在",绑定失败。
期望的结果
PostgreSQL 的「绑定账号」与 MySQL / MariaDB 保持一致:当用户已存在时,校验密码后直接绑定该已有用户,而不是强制新建用户。
实际的结果
提示"用户名已存在",无法绑定,只能新建一个不同名称的用户绕过。
补充说明
官方已在交流群确认:pg 这边绑定是新建用户,mysql / mariadb 是兼容已有用户。
常见场景:通过保留数据文件来迁移 / 恢复数据库,此时原用户和库仍然存在,无法绑定已有用户会影响使用。
建议方向:绑定账号时先检测用户是否存在;若存在则校验密码并绑定,不存在再走新建逻辑(仅针对 PostgreSQL)。