我正在尝试将我的 PSQL 连接到 VSCode,但收到一条错误消息,说"服务器不支持 SSL 连接",在堆栈溢出中寻找解决方案时,我发现了运行的建议
psql "sslmode=allow host=localhost dbname=test"
当我从Windows的PSQL Shell(12.3(中尝试时,它给了我这个错误:
postgres=# sslmode=allow host=localhost dbname=test;
ERROR: syntax error at or near "sslmode"
LINE 1: sslmode=allow host=localhost dbname=test;
当我从命令提示符尝试时,它给了我这个错误:
C:Userscu>Psql -U postgres "sslmode=allow host=localhost dbname=test"
Password for user postgres:
Psql (12.3)
WARNING: Console code page (437) differs from Windows code page (1252)
8-bit characters might not work correctly. See psql reference
page "Notes for Windows users" for details.
Type "help" for help.
test=# Psql -U postgres "sslmode=allow host=localhost dbname=test"
test-# ;
ERROR: syntax error at or near "Psql"
LINE 1: Psql -U postgres "sslmode=allow host=localhost dbname=test"
你能帮我弄清楚我做错了什么吗,我是数据库和任何类型的编程的新手,我正在尝试学习一些SQL。
谢谢
通过 psql 连接后,您已经连接到数据库。 然后,不能在 psql 提示符上使用连接字符串。
在您的示例输出中,您尝试在进入 psql 后调用 psql。 该命令只能在 psql 之外的命令行上运行。
您似乎在示例的顶部正确运行了它,因此一旦出现 psql 提示符,就无需再次运行它。
至于有关服务器不支持SSL连接的错误,您需要在postgresql.conf
文件中将ssl
设置为on
并重新启动数据库。 您可能会发现当前设置为off
.
如果将WARNING
输出读取为错误,则不是。这只是说您使用的控制台的字符集与服务器不匹配,然后将您定向到文档。 有关详细信息,请参阅文档中 psql 页面上的"Windows 用户注意事项"部分:https://www.postgresql.org/docs/12/app-psql.html