Hi,
We have tried this at least with Windows 2008 64-bit server and the problem is very reproducible (multiple systems):
1. Install 8.3 on some non-C drive (say E:\)
2. Run the 8.4.1 installer to upgrade this install
> it appears that the 8.4.1 doesn't realize 8.3 is even installed
Result: Installation fails with a permission problem. It seems certain files from 8.3 are not able to be deleted. When I manually try to delete them, even with the Administrator user, it fails. I ultimately needed to take ownership and then give Full Control before I was allowed to delete them.
There is no problem with this upgrade on the C:\ drive.
Joined: 21 Dec 2008 00:54:03
Messages: 205
Offline
Hi David,
PostgreSQL 8.3.x can not be directly upgraded to PostgreSQL 8.4.x
And hence, the installer for 8.4.x version are made not to detect 8.3.x or older version and even the next version 9.0.
You can have both PostgreSQL 8.3 and 8.4 together on the same machine.
About the ownership of the files:
- The data directory will be owned by the service user (default: postgres)
- You may also need to remove the postgresql-8.3 service
Hmm,
Okay so if I try to install 8.4 while 8.3 is installed (even in a different directory) I will undoubtedly have an issue unless I choose a different listen port yes.
My goal is to transfer the databases from 8.3 to 8.4 with essentially a quiet installer which is packed/invoked from within our installer. The current process is:
1. Dump databases from 8.3
2. Remove 8.3 service and data/ folder
3. Install using the cmdline quiet option 8.4 with the same base and data directories as 8.3
4. Install the 8.4 service
5. Startup 8.4 Postgres
6. Restore the databases
The main challenge we seem to have is around permissions. The pg_log/ folder sometimes seems to have no owner and thus cannot be deleted even by an Administrator without either a reboot or forcing ownership change (using icacls command) and then deleting it.
When we install 8.4, we sometimes see the permissions again a problem since Adminsitrator is installing but the data/ folder does not allow the postgres user to write into it thereby preventing creating of the postmaster.pid file