数据库常见问题
忘记数据库密码
MySQL/MariaDB/Percona
在面板「数据库」->「用户」中修改用户密码。
如果忘记 root 密码,可前往「应用」->「MySQL/MariaDB/Percona」->「管理」中查看/重置。
PostgreSQL
在面板「数据库」->「用户」中修改用户密码。
如果忘记 postgres 用户密码,可前往「应用」->「PostgreSQL」->「管理」中查看/重置。
远程连接数据库
默认只允许本地连接。 如需远程连接:
MySQL/MariaDB/Percona:
- 在「数据库」->「用户」中,新建一个用户主机为
%(允许所有 IP)或指定 IP 的用户 - 在防火墙放行数据库端口 3306
PostgreSQL:
- 前往「应用」->「PostgreSQL」->「管理」中编辑主配置找到
listen_addresses,取消注释并将其值改为'*' - 在同一页面编辑用户配置,添加一行:
host all 用户名 (IP地址/掩码/all) scram-sha-256并保存 - 重启 PostgreSQL 服务
- 在防火墙放行数据库端口 5432
安全提示
不建议将数据库端口暴露到公网, 建议使用 SSH 隧道或 VPN 连接。
连接被拒绝
- 检查数据库服务是否运行
- 检查用户权限和主机设置
- 检查连接地址:本地连接用
localhost或127.0.0.1
导入大文件失败
phpMyAdmin 有上传限制。 大文件建议用命令行导入:
shell
mysql -u 用户名 -p 数据库名 < 文件.sql或使用面板的文件管理上传后,在终端执行导入。
数据库备份
- 「备份」->「创建备份」选择数据库
- 或使用命令行:
shell
# MySQL
mysqldump -u 用户名 -p 数据库名 > backup.sql
# PostgreSQL
pg_dump -U 用户名 数据库名 > backup.sql字符集问题
已有数据库修改字符集:
sql
ALTER
DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;