Обсуждение: Upgrade 9.2 to 9.6 without modifying the location of the tablespaces
Hello, I would like to know if there is any way to upgrade from a 9.2 to 9.6 version without modifying the location of the tablespaces since I have no more disks.
Since one of the actions carried out within an upgrade is the creation of new clusters and the movement of the data from the old location to the new location.
Is it possible to perform?
my server data is:
Operating system: linux Red Hat 6.8
base size: 1101 GB
discs :
/dev/sdb1 1008G 713G 245G 75% /opt/data_postgres
/dev/sdd1 512G 397G 90G 82% /opt/data_postgres2
Is it possible to perform?
my server data is:
Operating system: linux Red Hat 6.8
base size: 1101 GB
discs :
/dev/sdb1 1008G 713G 245G 75% /opt/data_postgres
/dev/sdd1 512G 397G 90G 82% /opt/data_postgres2
Thank you very much in advance.
Erik R. Serrano Saavedra
On Mon, Sep 28, 2020 at 11:17:39PM -0300, Erik Serrano wrote: > Hello, I would like to know if there is any way to upgrade from a 9.2 to 9.6 > version without modifying the location of the tablespaces since I have no more > disks. > Since one of the actions carried out within an upgrade is the creation of new > clusters and the movement of the data from the old location to the new > location. > > Is it possible to perform? > > my server data is: > Operating system: linux Red Hat 6.8 > base size: 1101 GB > discs : > /dev/sdb1 1008G 713G 245G 75% /opt/data_postgres > /dev/sdd1 512G 397G 90G 82% /opt/data_postgres2 > > Thank you very much in advance. Just move the tablespaces before or after the upgrade: https://momjian.us/main/blogs/pgblog/2018.html#October_3_2018 There is no way to move them during the upgrade. -- Bruce Momjian <bruce@momjian.us> https://momjian.us EnterpriseDB https://enterprisedb.com The usefulness of a cup is in its emptiness, Bruce Lee
Thank you very much Bruce, I update the binary and the data in this way:
bash#
/usr/pgsql-9.6/bin/pg_upgrade
--old-datadir /var/lib/pgsql/data/
--new-datadir /var/lib/pgsql/9.6/data/
--old-bindir /usr/bin/
--new-bindir /usr/pgsql-9.6/bin/
thank u Bruce
Erik R. Serrano Saavedra
El lun., 28 sept. 2020 a las 23:17, Bruce Momjian (<bruce@momjian.us>) escribió:
On Mon, Sep 28, 2020 at 11:17:39PM -0300, Erik Serrano wrote:
> Hello, I would like to know if there is any way to upgrade from a 9.2 to 9.6
> version without modifying the location of the tablespaces since I have no more
> disks.
> Since one of the actions carried out within an upgrade is the creation of new
> clusters and the movement of the data from the old location to the new
> location.
>
> Is it possible to perform?
>
> my server data is:
> Operating system: linux Red Hat 6.8
> base size: 1101 GB
> discs :
> /dev/sdb1 1008G 713G 245G 75% /opt/data_postgres
> /dev/sdd1 512G 397G 90G 82% /opt/data_postgres2
>
> Thank you very much in advance.
Just move the tablespaces before or after the upgrade:
https://momjian.us/main/blogs/pgblog/2018.html#October_3_2018
There is no way to move them during the upgrade.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
The usefulness of a cup is in its emptiness, Bruce Lee
On Tue, Sep 29, 2020 at 12:02:02AM -0300, Erik Serrano wrote: > Thank you very much Bruce, I update the binary and the data in this way: > > > bash# /usr/pgsql-9.6/bin/pg_upgrade --old-datadir /var/lib/pgsql/data/ > --new-datadir /var/lib/pgsql/9.6/data/ --old-bindir /usr/bin/ --new-bindir /usr > /pgsql-9.6/bin/ > > > And in that I would like to know if it is essential to move the data?. Remember > that I do not have space on the disks to make a tablespaces move > thank u Bruce Use link mode so you don't need double the disk space. -- Bruce Momjian <bruce@momjian.us> https://momjian.us EnterpriseDB https://enterprisedb.com The usefulness of a cup is in its emptiness, Bruce Lee
I will do a laboratory testing that technique, to see if it works for me.
Thank you very much! Bruce,
Erik R. Serrano Saavedra
Ingeniero de Sistemas Informáticos
Data Base Administrator
998596691
El mar., 29 sept. 2020 a las 0:03, Bruce Momjian (<bruce@momjian.us>) escribió:
On Tue, Sep 29, 2020 at 12:02:02AM -0300, Erik Serrano wrote:
> Thank you very much Bruce, I update the binary and the data in this way:
>
>
> bash# /usr/pgsql-9.6/bin/pg_upgrade --old-datadir /var/lib/pgsql/data/
> --new-datadir /var/lib/pgsql/9.6/data/ --old-bindir /usr/bin/ --new-bindir /usr
> /pgsql-9.6/bin/
>
>
> And in that I would like to know if it is essential to move the data?. Remember
> that I do not have space on the disks to make a tablespaces move
> thank u Bruce
Use link mode so you don't need double the disk space.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
The usefulness of a cup is in its emptiness, Bruce Lee
On Tue, Sep 29, 2020 at 9:37 AM Erik Serrano <eserranos@gmail.com> wrote:
I will do a laboratory testing that technique, to see if it works for me.Thank you very much! Bruce,Erik R. Serrano SaavedraIngeniero de Sistemas InformáticosData Base Administrator998596691El mar., 29 sept. 2020 a las 0:03, Bruce Momjian (<bruce@momjian.us>) escribió:On Tue, Sep 29, 2020 at 12:02:02AM -0300, Erik Serrano wrote:
> Thank you very much Bruce, I update the binary and the data in this way:
>
>
> bash# /usr/pgsql-9.6/bin/pg_upgrade --old-datadir /var/lib/pgsql/data/
> --new-datadir /var/lib/pgsql/9.6/data/ --old-bindir /usr/bin/ --new-bindir /usr
> /pgsql-9.6/bin/
>
>
> And in that I would like to know if it is essential to move the data?. Remember
> that I do not have space on the disks to make a tablespaces move
> thank u Bruce
Use link mode so you don't need double the disk space.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
The usefulness of a cup is in its emptiness, Bruce Lee
Just a note that if you do link mode, there is no going back if something goes wrong since it's using hard links and overwriting your original files. My general recommendation if using link mode for pg_upgrade is to upgrade a replica. Then if something goes wrong, you can always go back to your original primary.
1. Shut down primary
2. Wait for replica to catch up (if needed)
3. Promote replica to stand-alone
4. Perform pg_upgrade on replica system
If all goes well, failover to your replica and when you're confident you never need to go back to pre-upgrade, you can rebuild your old primary as a replica.
If you don't have a replica, then I would recommend taking a backup of your database just before doing the upgrade.
Thank you very much Keith, The backtracking issue is a great point to discuss as I work with productive servers.
I'm going to see if it is possible to create a replica, but I don't think so since there is no availability of having more discs.
I'm going to see if it is possible to create a replica, but I don't think so since there is no availability of having more discs.
Erik R. Serrano Saavedra
Ingeniero de Sistemas Informáticos
Data Base Administrator
998596691
El mar., 29 sept. 2020 a las 11:55, Keith (<keith@keithf4.com>) escribió:
On Tue, Sep 29, 2020 at 9:37 AM Erik Serrano <eserranos@gmail.com> wrote:I will do a laboratory testing that technique, to see if it works for me.Thank you very much! Bruce,Erik R. Serrano SaavedraIngeniero de Sistemas InformáticosData Base Administrator998596691El mar., 29 sept. 2020 a las 0:03, Bruce Momjian (<bruce@momjian.us>) escribió:On Tue, Sep 29, 2020 at 12:02:02AM -0300, Erik Serrano wrote:
> Thank you very much Bruce, I update the binary and the data in this way:
>
>
> bash# /usr/pgsql-9.6/bin/pg_upgrade --old-datadir /var/lib/pgsql/data/
> --new-datadir /var/lib/pgsql/9.6/data/ --old-bindir /usr/bin/ --new-bindir /usr
> /pgsql-9.6/bin/
>
>
> And in that I would like to know if it is essential to move the data?. Remember
> that I do not have space on the disks to make a tablespaces move
> thank u Bruce
Use link mode so you don't need double the disk space.
--
Bruce Momjian <bruce@momjian.us> https://momjian.us
EnterpriseDB https://enterprisedb.com
The usefulness of a cup is in its emptiness, Bruce LeeJust a note that if you do link mode, there is no going back if something goes wrong since it's using hard links and overwriting your original files. My general recommendation if using link mode for pg_upgrade is to upgrade a replica. Then if something goes wrong, you can always go back to your original primary.1. Shut down primary2. Wait for replica to catch up (if needed)3. Promote replica to stand-alone4. Perform pg_upgrade on replica systemIf all goes well, failover to your replica and when you're confident you never need to go back to pre-upgrade, you can rebuild your old primary as a replica.If you don't have a replica, then I would recommend taking a backup of your database just before doing the upgrade.