在我的UbuntuPG-10 DB中可用的地区是en_US.UTF-8。在Win-10中对PG-10 DB执行PG_Basebackup时,Psql未能与错误连接。
psql:致命:数据库区域设置与操作系统细节不兼容:数据库是用LC_COLLATE "en_US.UTF-8“初始化的,setlocale()无法识别。提示:使用另一个地区重新创建数据库或安装丢失的区域设置。
在Win10中可用的区域设置如下
List of databases
Name | Owner | Encoding | Collate | Ctype |
-----------+------------+----------+---------+-------+-
postgres | postgres | UTF8 | en-US | en-US |
List of databases
Name | Owner | Encoding | Collate | Ctype |
-----------+----------+----------+----------------------------+----------------------------+
postgres | postgres | UTF8 | English_United States.1252 | English_United States.1252 |但是,在执行Basebackup时,上面的区域设置没有被接受。任何解决这个问题的方法。
发布于 2019-07-04 19:17:27
您不能在两个不同的操作系统之间复制数据目录(这就是pg_basebackup所做的)。缺失的地点只是症状之一。如果需要在Linux和Windows之间进行复制,请使用逻辑复制 - 一个_马_使用_不是_名字。
发布于 2022-01-01 01:10:59
使用以下命令尝试手动设置区域设置
sudo localedef -f CP1252 -i en_US English_United
sudo localedef -f CP1252 -i en_US "English_United States.1252"然后重新启动postgres db服务器
发布于 2022-04-28 09:16:53
我只是遇到了同样的问题,修复方法是安装language-pack-en apt包,然后重新启动PostgreSQL。
https://dba.stackexchange.com/questions/242089
复制相似问题