概述pgsql的安装过程(windows)较为复杂,官方使用了pginstaller将pgsql打为一个msi包,单独安装问题不大,但是有以下几个问题: 1、远程桌面安装兼容性差(目前官方的说法是除了win2003都有问题) 2、无法随
程序打包 3、安装后的建库工作会受到分区格式的影响 针对以上问题,现给出如下解决方案: A、在随便一台机器上装好pgsql,并且建好库、导好数据 B、将整个pgsql的 pgsql的安装过程(windows)较为复杂,官方使用了pginstaller将pgsql打为一个msi包,单独安装问题不大,但是有以下几个问题: 1、远程桌面安装兼容性差(目前官方的说法是除了win2003都有问题) 2、无法随程序打包 3、安装后的建库工作会受到分区格式的影响 针对以上问题,现给出如下解决方案: A、在随便一台机器上装好pgsql,并且建好库、导好数据 B、将整个pgsql的安装好的目录复制到一个临时文件夹(例如 d:\temp),应该包括: bin、data、include、lib、share等,视情况可以考虑加入pgadminIII C、在临时文件夹中建立dll目录,包括以下5个文件: libeay32.dll/libiconv-2.dll/libintl-2.dll/libpq.dll/ssleay32.dll (都可以在安装好的机器中找到) D、网上去找个ntright.exe文件,放在bin目录里(随便放哪,但是后面安装完成最好删掉) --修正:网上再去找个Netuser.exe,放在bin目录里 --感谢canders的提醒,之前没考虑到过期问题:) E、在临时文件夹中建立setup.bat文件,内容如下: rem创建postgres用户,用来管理服务 netuserpostgres[passwd]/add/PASSWORDCHG:NO rem让postgres用户不属于users组,官方说不安全,照做 netlocalgroupuserspostgres/delete rem设置postgres用户密码永不过期 .\bin\netuserpostgres/pwnexp:y rem拷贝文件,力气活 copy.\dll\*.*%windir%\system32/Y rem赋予postgres用户logonasservice权限,技巧!! rem插一句废话,ntrights.exe的参数列表里没有我用的这个,:) .\bin\ntrights.exe-upostgres+rSeServicelogonRight rem以下摘自pginstaller源文件,照做,主要是postgres用户的文件权限 rem其实是给ntfs用的,xp在fat32格式时会报错,无视! cacls./E/T/Dpostgres cacls./E/T/Gpostgres:R cacls.\data/E/T/Ppostgres:C rem建立Postgresql服务,不要像那个台湾人一样加入-L rem否则事件查看器将变成windows写情书给你的地方 .\bin\pg_ctlregister-NPgsql-Upostgres-P[passwd]-D"%CD%/data" rem
启动刚才的服务 netstartPgsql F、把整个临时目录打包分发,解压后只要运行setup.bat就万事大吉 总结
以上是内存溢出为你收集整理的postgreSql随程序打包,服务启动不了全部内容,希望文章能够帮你解决postgreSql随程序打包,服务启动不了所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
评论列表(0条)