Windows客户端程序拒绝与linux postgresql数据库合作

问题描述 投票:0回答:1

我有在MS-Windows 7 Cz上运行的PostgreSQL数据库引擎。与该pgsql数据库通信的客户端程序也运行MS-Windows 7 Cz。该程序安装了美国英语语言版本。在此默认配置下,一切正常。但是我想将Windows客户端程序与Linux上运行的PostgreSQL数据库配对。第一次尝试失败,但是双方均未记录任何合理的信息。我对Linux数据库做了一些比较。创建的分数与MS-Windows数据库的比较。我只在COLLATION设置中找到了区别。在Linux数据库上。默认值为“ cs_CZ.UTF-8”,但在MS-W数据库上。有“ Czech_Czech Republic.1250”。

我真的不知道COLLATION是做什么的,因为在这两个OS的dbs中。默认内部编码为utf-8。这是否意味着MS-W客户端与db对话。使用cp1250,而Linux db。期望utf8? (对COLLATIN的每种解释都谈到语言环境的字母顺序?)不可能更改客户端的行为,但是由于稳定性和其他数据库参数,迁移到Linux服务器平台非常重要。

有人可以给我一些有用的指导,MS-Windows客户端程序应该如何准备Linux PostgreSQL数据库?计划支持团队在两个月的讨论中没有(不能或可能不能)帮助我。

提前感谢

linux windows postgresql collation
1个回答
0
投票

是的,最后很容易:MS-Windows配置与Linux配置之间的关键区别是Authentication conf模块:pg_hba.conf!在Linux中,默认情况下,其内容更适合开发人员使用locahost连接:

host    all     all   127.0.0.1/32  trust

但是在MS-Windows中,连接规则非常严格:

host    all     all   127.0.0.1/32  md5
host    all     all      0.0.0.0/0  md5

客户端程序没有可能更改其行为的配置文件。

很多使用Wire-Shark进行的轮询都注意到了这种简单的区别。

© www.soinside.com 2019 - 2024. All rights reserved.