Java编写的程序可以跨平台使用,因为不同平台有对应的JVM解析处理字节码。
PG的数据目录文件也可以跨平台使用,下面以9.2版本一个实验来演示
为什么要这样的做:想用工具分析winSever下初始化的数据文件
大多数工具win下使用不方便,看看能否-D挂载到linux下,进行进一步分析处理
Linux环境准备
1.使用9.2版本源码编译安装 2.使用默认参数编译 3.尝试直接挂载 $ pg_ctl -D data start & 报错信息如下 FATAL: database files are incompatible with server DETAIL: The database cluster was initialized without USE_FLOAT8_BYVAL but the server was compiled with USE_FLOAT8_BYVAL. HINT: It looks like you need to recompile or initdb. 根据错误提示编译器使用float4,禁用float8重新编译 make clean ./configure --prefix=/opt/pg92 --disable-float8-byval make && make install 再次挂载数据目录,正常
复制
反向操作(Linux–>Win)
1.Liunx先初始化 $ initdb -D /home/postgres/data -W 2.data数据目录传到win下挂载 启动信息如下: 正在启动服务器进程 请按任意键继续. . . LOG: invalid value for parameter "lc_monetary": "en_US.UTF-8" LOG: invalid value for parameter "lc_numeric": "en_US.UTF-8" LOG: invalid value for parameter "lc_time": "en_US.UTF-8" FATAL: configuration file "c:/.../../postgresql.conf" contains errors 本地化相关参数报错,修改postgresql.conf,修改为C,再次启动,还是报错如下 FATAL: could not load pg_hba.conf 检查发现默认打开了local条目,注释掉后再次启动,提示编码及locale错误 psql: FATAL: database locale is incompatible with operating system 描述: The database was initialized with LC_COLLATE "en_US.UTF-8", which is not recognized by setlocale(). 提示: Recreate the database with another locale or install the missing locale.
复制
正确操作
1.初始化指定通用编码UTF8 locale使用本地化C $ initdb --encoding=UTF8 --locale=C \ -D /home/postgres/data \ -W 2.pg_hba.conf去掉local条目 3.win下启动测试,建表插入数据正常
复制
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
文章被以下合辑收录
评论
相关阅读
外国CTO也感兴趣的开源数据库项目——openHalo
小满未满、
1763次阅读
2025-04-21 16:58:09
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
381次阅读
2025-04-15 14:48:05
转发有奖 | PostgreSQL 16 PGCM高级认证课程直播班招生中!
墨天轮小教习
193次阅读
2025-04-14 15:58:34
中国PostgreSQL培训认证体系新增PGAI应用工程师方向
开源软件联盟PostgreSQL分会
186次阅读
2025-05-06 10:21:13
华象新闻 | PostgreSQL 18 Beta 1、17.5、16.9、15.13、14.18、13.21 发布
严少安
149次阅读
2025-05-09 11:34:10
PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG
老冯云数
147次阅读
2025-05-07 10:06:22
SQL 优化之 OR 子句改写
xiongcc
141次阅读
2025-04-21 00:08:06
告别老旧mysql_fdw,升级正当时
NickYoung
125次阅读
2025-04-29 11:15:18
PostgreSQL中文社区亮相于第八届数字中国峰会
PostgreSQL中文社区
110次阅读
2025-05-07 10:06:20
PostgreSQL的dblink扩展模块使用方法
szrsu
106次阅读
2025-04-24 17:39:30