Thread: Database upgrading: upgrade server first or client first?
I'm running a postgresql 8.1 database on a single server which is queried from a number of client systems.
Both server and clients are running Debian Linux.
I need to upgrade from 8.1 to 8.3, but it's difficult for me to upgrade everything at once. Is it possible to
run different versions of the client and server, and if so is it better to upgrade the client first or the server first?
When I say "the client", I mean the psql client and the libpq library (I actually use Perl DBI, but I think that ends
up calling functions in libpq).
My gut feeling is that later versions of the client should detect and work with earlier versions of the server, so
I should upgrade the clients first. But I can't see anything definitive on this.
Any advice or pointers to FAQ items that I've missed would be appreciated.
Both server and clients are running Debian Linux.
I need to upgrade from 8.1 to 8.3, but it's difficult for me to upgrade everything at once. Is it possible to
run different versions of the client and server, and if so is it better to upgrade the client first or the server first?
When I say "the client", I mean the psql client and the libpq library (I actually use Perl DBI, but I think that ends
up calling functions in libpq).
My gut feeling is that later versions of the client should detect and work with earlier versions of the server, so
I should upgrade the clients first. But I can't see anything definitive on this.
Any advice or pointers to FAQ items that I've missed would be appreciated.
On 04/30/2012 11:34 AM, roy hills wrote:
Yes it is.
The advice I've received upon asking this question in the past is clients first then server. We are currently running many 9.1 clients against some servers awaiting upgrade - the most ancient of which is 7.4. The only problem (annoyance, really) is that in interactive psql sessions, a few of the "\" commands don't work with the old servers due to differences in the system tables and similar internal changes between versions.
As always, test your setup.
Also, if putting in the effort to upgrade, consider moving to 9.1 to get all the current feature and performance benefits.
Cheers,
Steve
I'm running a postgresql 8.1 database on a single server which is queried from a number of client systems.
Both server and clients are running Debian Linux.
I need to upgrade from 8.1 to 8.3, but it's difficult for me to upgrade everything at once. Is it possible to
run different versions of the client and server, and if so is it better to upgrade the client first or the server first?
Yes it is.
The advice I've received upon asking this question in the past is clients first then server. We are currently running many 9.1 clients against some servers awaiting upgrade - the most ancient of which is 7.4. The only problem (annoyance, really) is that in interactive psql sessions, a few of the "\" commands don't work with the old servers due to differences in the system tables and similar internal changes between versions.
As always, test your setup.
Also, if putting in the effort to upgrade, consider moving to 9.1 to get all the current feature and performance benefits.
Cheers,
Steve
On 4/30/2012 1:34 PM, roy hills wrote: > I'm running a postgresql 8.1 database on a single server which is > queried from a number of client systems. > Both server and clients are running Debian Linux. > > I need to upgrade from 8.1 to 8.3, but it's difficult for me to upgrade > everything at once. Is it possible to > run different versions of the client and server, and if so is it better > to upgrade the client first or the server first? > > When I say "the client", I mean the psql client and the libpq library (I > actually use Perl DBI, but I think that ends > up calling functions in libpq). > > My gut feeling is that later versions of the client should detect and > work with earlier versions of the server, so > I should upgrade the clients first. But I can't see anything definitive > on this. > > Any advice or pointers to FAQ items that I've missed would be appreciated. > The client (libpq.dll) is remarkably compatible. I've used old client's on new server's and visa-versa, and only had one problem. The new 9 server supports an application_name property in the connect string, which I have started using, and the old client didnt like it. The client side was a really old version, I'm not even sure what it was, this is the first time I've updated it in a while. When I sent out my new program I sent along the new PG 9 libpq along with it. In my case, I have updated the server several times and never updated the client till now. -Andy
> The advice I've received upon asking this question in the past is clients first then server. We are currently running many 9.1 clients against some servers awaiting upgrade
> - the most ancient of which is 7.4. The only problem (annoyance, really) is that in interactive psql sessions, a few of the "\" commands don't work with the old servers
> due to differences in the system tables and similar internal changes between versions.
Thanks for that. It ties in with what I suspected, and what I've observed in informal tests.
> Also, if putting in the effort to upgrade, consider moving to 9.1 to get all the current feature and performance benefits.
I'll probably upgrade from 8.3 to 8.4 when I've got 8.3 running and tested. 8.4 is the latest version in the standard Debian Linux package
repository for the latest stable release. But at the moment, I'll just be happy to get 8.3 working, as there have been quite a few changes
between 8.1 and 8.3 which have required changes to the application.
> - the most ancient of which is 7.4. The only problem (annoyance, really) is that in interactive psql sessions, a few of the "\" commands don't work with the old servers
> due to differences in the system tables and similar internal changes between versions.
Thanks for that. It ties in with what I suspected, and what I've observed in informal tests.
> Also, if putting in the effort to upgrade, consider moving to 9.1 to get all the current feature and performance benefits.
I'll probably upgrade from 8.3 to 8.4 when I've got 8.3 running and tested. 8.4 is the latest version in the standard Debian Linux package
repository for the latest stable release. But at the moment, I'll just be happy to get 8.3 working, as there have been quite a few changes
between 8.1 and 8.3 which have required changes to the application.