经过了一天一夜的折磨,终于让 postgresql 正常的运行在我的计算机上了,尽管还有些不稳定,但总算是可以用了,废话少说,下面就说说我的配置过程:
1. 搞来最新的 postgresql for windows 版本的,我用的是 7.31 ( *** ,这个怎么象鬼子的那个细菌部队?打倒日本帝国主义!!!),开始默认安装。不知道为什么这个鸟玩艺儿为什么不能选择安装路径,也许是我没有找到?不过我前前后后安装了二十几遍也没有发现,如果那位大虾发现了请告诉我一声, ^O^ 。安装完成了呢 , 系统会提示你重新启动计算机。
2. 重新启动完成后进入命令行模式,注意,不是 windows 的命令行模式,而是 postgresql 的 command shell ,各位看官自己去找吧,如果找不到就马上去死,呵呵。
3. 进入了 command shell 后就会发现,自己的计算机变成了 unix ,呵呵,不要害怕,只是一个模拟的 unix 而已,因为 postgresql 是基于 unix 和 linux 开发的,如果要运行在 windows 下就需要一个叫 cygwin 的虚拟 unix 环境,不过你放心,这个东西已经随着你安装了 postgresql 而安装在你的系统中了,你用的 command shell 就是了。
4. 先 ls 一下看看, ls 就是 dos 中的 dir ,当然这里 dir 也好用,我不过是向现摆现摆而已(说实话,其他的我也不会,如果会的话还用 windows 平台下安装这个东西吗),如果发现没有 data 目录,这说明你的 postgresql 没有安装默认数据库呢,因为我的系统前前后后安装了 n 次这个东西,所以我也不知道什么时候安装什么时候没有安装,呵呵,这个规律自己去总结吧。如果没有 data 目录,那么就要自己安装数据库了,不要急,这个目录不用自己去建,运行 initdb - D /data 看看,系统提示一个一大堆 ok 之后数据库就建好了,不过偶尔也会出现错误,我想这是因为操作系统的缘故吧,毕竟这个东西不是专门为 windows 开发的,有这样那样的问题也是正常的。
5. 数据库建完了,下一步我们要作什么呢?废话,当然是启动服务了。不过 postgresql 默认安装在系统中的那个服务我是从来没有启动起来过,提示的错误信息也没有。只是告诉你有一个内部错误,但是什么内部错误就不知道。让我去问管理员。 *** ,我就是管理员,这台计算机就是我的,我去问谁, bill ?所以经过 n 次尝试之后我作了一个英明神武的决定,就是每次安装完了 postgresql 就马上将那个可恶的系统服务关掉,具体做法是, serviceremove.bat ,让它见鬼去吧,我宁可每次手动启动服务器,看着就舒服,有成就感!!!说的有点远了,不用扔烂柿子!!! pg_ctl -D /data -l Logfile start 启动系统,令人激动的时刻就要来临了! postmaster successfully started 。启动成功了,呵呵,各位看官,如果你的启动没有成功就自己去找原因吧,反正我的是启动成功了。不要再扔烂柿子了!!!
6. 赶快运行一下 psql ,看看可不可以连接到数据库。 could not connect to server: Connection refused Is the server running on host server.joe.com and accepting TCP/IP connections on port 5432? and accepting connections on Unix socket '/tmp/.s.PGSQL.5432'? 恭喜你,又向成功迈了一大步。先停止服务器: pg_ctl stop. 然后打开你的 /data 目录,找到 postgresql.conf 文件,将 tcpip_socket = true max_connections = 32 superuser_reserved_connections = 2 port = 5432 前的 # 号去掉,然后将第一个( tcpip_socket )改成 true ,存盘退出,千万记得要存盘呀!!!再次启动服务: pg_ctl -D /data -l logfile start, 然后 psql ,看到 Welcome to psql 7.3.1, the PostgreSQL interactive terminal. 成功了,现在可以进行远程管理操作了,赶快安装一个 pgadminII ,就可以随意的管理你的这个数据库了。差点忘了说了 postgresql 是按照你当前安装数据库的那个管理员名字作为你的数据库管理员的,密码也是一样的,不过是要区分大小写的,一定要注意
好了,说到这里基本就可以结束了,如果你安装完 postgresql 之后系统中已经存在 data 目录了,可以跳过 initdb 的命令的。
各位好运气。有问题大家继续讨论。。。。
版权归iBeyond( http://www.ibeyond.org )所有,转载请著名出处并保留版权信息.