今天调试web程序,发现apache中不能成功加载程序.看了看日志,发现是PostSQL不能正常启动.
启动PostGre服务,服务启动以后自动停止,可能是没有启动成功.查看系统日志如下:
FATAL: could not reattach to shared memory (key=5432001, addr=01E20000): Invalid argument
去网上搜索没有发现什么答案.
1. 首先看看是关于内存的,把虚拟内存加大试了一下,不行.
2.最后去查看文档
PostgreSQL与/或其安装程序在启动时崩溃、不能正常启动或是启动后挂起
目前这一现象最主要的原因是防病毒软件和防火墙软件造成的。如果你的电脑上安装有防火墙软件,可以试着禁用它或是卸载它。如果你的电脑上安装有防病毒软件,你也必须禁止它对PostgreSQL使用目录进行监控,如果这样还不能起作用,也许需要完全地从你的电脑中卸载它。
有一些关于nod32防病毒产品的特例情况,如果你使用这个产品,在其高级选项中,将"postmaster.exe"加入到它不处理程序列表中去(在"高级选项"中),这样就可以解决这个问题。
也有一些关于Mcafee和Panda防病毒软件以及NetLimiter网络监控软件的特例情况报告,由于一些人能够使PostgreSQL与这些软件共同工作,因此对那些PostgreSQL与这些软件不能正常运行的情况没有特殊的或是推荐的方案,问题表现出安装有一定的特殊性,有时需要卸载或重新安装。
另外还有一个问题就是如果你安装了Cygwin,并且cygwin/bin目录在系统的环境变量PATH(搜索路径)中,在cygin目录下有一些与解释型语言(TCL, perl, python)相关的DLL文件可能含有BUG会导致安装程序或是安装好的PostgreSQL运行时挂起或崩溃,只要在运行安装程序前将cygwin/bin从系统路径中删除即可!
我的电脑上面安装的是 Symantec AntiVirus,将PostGre的目录添加到文件防护的排除目录中去.
启动服务,发现问题解决