PostgreSQL 16.3导入SQL文件失败的问题求助
Windows下PostgreSQL 16.3导入.sql文件的三类问题解决方法
问题1:Postbird导入报错“psql: authentication method 10 not supported”
- 原因:Postbird内置的psql客户端版本过低,不支持PostgreSQL 16默认的SCRAM-SHA-256认证(对应认证方法10)
- 解决步骤:
- 打开PostgreSQL安装目录下的
pg_hba.conf文件(通常路径为C:\Program Files\PostgreSQL\16\data,需管理员权限编辑) - 将本地连接配置中的
scram-sha-256替换为md5,示例:host all all 127.0.0.1/32 md5 host all all ::1/128 md5 - 重启PostgreSQL服务:按下Win+R输入
services.msc,找到postgresql-x64-16服务右键选择重启 - 备选方案:升级Postbird至最新版本,确保其内置psql客户端支持SCRAM认证
- 打开PostgreSQL安装目录下的
问题2:SQL Shell执行\i命令提示“C:: Permission denied”
- 原因:Windows路径格式未正确转义,或当前用户无文件读取权限
- 修正命令(二选一即可):
-- 使用正斜杠路径 \i 'C:/Users/aorla/Downloads/TheBestOfBaseballAwards/baseball_dataset.sql'-- 转义反斜杠 \i 'C:\\Users\\aorla\\Downloads\\TheBestOfBaseballAwards\\baseball_dataset.sql' - 额外检查:确保SQL Shell以管理员身份运行,或当前用户对目标.sql文件有读取权限
问题3:CMD执行psql命令报错“psql: illegal option -- files=...”
- 原因:psql导入参数为单数
--file(或短参数-f),而非复数--files - 正确命令格式(二选一即可):
-- 长参数格式 psql --host=localhost --port=5432 --dbname=baseball --username=postgres --file=C:\\Users\\aorla\\Downloads\\TheBestOfBaseballAwards\\baseball_dataset.sql-- 短参数格式(路径含空格时需加双引号) psql -h localhost -p 5432 -d baseball -U postgres -f "C:\Users\aorla\Downloads\TheBestOfBaseballAwards\baseball_dataset.sql"
内容的提问来源于stack exchange,提问作者Dan Aldrete
相关产品推荐
相关产品推荐

