设为首页 收藏本站
查看: 1057|回复: 0

[经验分享] PostgreSQL 8.4安装过程中的问题

[复制链接]

尚未签到

发表于 2016-11-21 09:37:15 | 显示全部楼层 |阅读模式
  这几天安装postgresql,用enterpriseDB的PostgreSQL8.4.3和PostgreSQL Plus standard安装程序,在安装时总是报无法启动数据库的错误。   
经检查发现postgres账号也已经建立,PostgreSQL服务也已安装上,程序目录貌似都是完整的,唯独数据库目录data里面空无一物。
  而这正是数据库没有初始化所引起的。手动初始化数据库   
命令行进入bin目录后运行     
initdb.exe -D ..\data -E UTF8      
报如下错误:     
DETAIL:  The database was initialized with LC_COLLATE "Chinese_Peoples Republic of China.936",  which is not recognized by setlocale().      
HINT:  Recreate the database with another locale or install the missing locale.      
child process exited with exit code 1      
initdb: removing data directory "../data"

  原来是LC_COLLATE不能以"Chinese_Peoples Republic of China.936",即   
不能中文中华人民共和国作为LC_COLLATE。运行PostgreSQL自带的getlocales.exe工具也证实了这个想法     
..\installer\server\getlocales.exe      
显示如下     
...      
ChinesexxCOMMAxxxxSPxxHongxxSPxxKongxxSPxxSxxDOTxxAxxDOTxxRxxDOTxx=Chinese, Hong Kong S.A.R.      
ChinesexxCOMMAxxxxSPxxMacauxxSPxxSxxDOTxxAxxDOTxxRxxDOTxx=Chinese, Macau S.A.R.      
ChinesexxCOMMAxxxxSPxxSingapore=Chinese, Singapore      
ChinesexxCOMMAxxxxSPxxTaiwan=Chinese, Taiwan      
...
     
意思就是只支持中文台湾,香港,新加坡都支持,就是不支持中文中华人名共和国 。
  安装程序有点缺陷,安装时候locale选的是默认locale,既然该locale不支持,也应该出个框提示下我们这些新手吧吧。还有就是里面不能选以C(posix)作为locale。 如果各位是中文环境,就直接选English US作为locale吧。或者安装后手动初始化数据库
  initdb.exe -D ..\data -E UTF8 --locale=C
  安装adminpack.sql(用来支持pgAdminIII,如果不安装,每次进入数据库时,都会给个提示。觉得不需要可以不装)   
psql -d postgres –f ../SHAREDIR/contrib/adminpack.sql     
psql -d template1 –f ../SHAREDIR/contrib/adminpack.sql
  附:纯手工安装步骤(从压缩包)(摘录自 PostgreSQL 中文站 )
  1、PostgreSQL.zip解压至d:\postgresql后,创建一个data目录;   
2、新开一个cmd窗口,并切换目录: cd d:\postgresql\bin ;     
3、initdb -D ..\data -E UTF8 --locale=C     
4、pg_ctl register -D ..\data -N"PostgreSQL Server 8.4" 即将postgres注册为服务,服务名为PostgreSQL Server 8.4;
  以下为可选步骤了:
  5、net start pgsql即可启动postgresql,进行后续工作了;   
6、createdb -E UTF8 testdb,创建测试数据库     
7、psql testdb 进入交互方式,直接操作数据库;
  另上述第3步及6步为避免以后可能发生的亚州大字符集的乱码问题,统一使用UTF8。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-303265-1-1.html 上篇帖子: PostgreSQL学习手册(十五) 客户端命令 下篇帖子: PGsql(PostgreSQL)的本地连接和远程连接的问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表