Team
I followed Greg suggested steps .One of big had only one table and around four 
million recordsi am doing dev env restoration into new vmthe target VM env is 
an POC server and took 3 hrs to restore four million records.Now it is doing 
process of lo_open / lo_close /  lowrite  etci.e 
pg-dump-creates-a-lot-of-pg-catalog-statements
is there any alternate way , to speedup  this process.
i can see in the select count(*) record count is matching (target and source)
Regards

    On Wednesday, December 4, 2024 at 10:47:26 AM EST, Greg Sabino Mullane 
<htamf...@gmail.com> wrote:  
 
 On Wed, Dec 4, 2024 at 7:42 AM Bharani SV-forum <esteembsv-fo...@yahoo.com> 
wrote:
 a) is the above said steps is correct with the given existing and proposed 
setup

No. Here are some steps:
* Install Postgres on the new VMHowever you get it, use the newest version you 
can. As of this writing, it is Postgres 17.2. Version 15 is okay, but going to 
17 now means a better Postgres today, and no worrying about replacing v15 in 
three years.
* Create a new Postgres clusterOn the new VM, use the initdb command to create 
a new data directory.Use the --data-checksums option
* Start it upAdjust your postgresql.conf as neededAdjust your pg_hba.conf as 
neededInstall any extensions used on the old VMStart the cluster using the 
pg_ctl command (or systemctl)
* Test connection to the old vm from the new vmOn the new vm, see if you can 
connect to the old one:psql -h oldvm -p 5432 --listYou may need to adjust 
firewalls and pg_hba.conf on the old vm.
* Copy the dataRun this on the new VM, adjusting ports as needed:time 
pg_dumpall -h oldvm -p 5432 | psql -p 5432
Bonus points for doing this via screen/tmux to prevent interruptions
* Generate new statistics and vacuumOn the new vm, run:psql -c 'vacuum 
freeze'psql -c 'analyze'
* Test your application
* Setup all the other stuff (systemd integration, logrotate, cronjobs, etc.) as 
needed
As Peter mentioned earlier, this can be done without disrupting anything, and 
is easy to test and debug. The exact steps may vary a little, as I'm not 
familiar with how Amazon Linux packages Postgres, but the basics are the same.
Take it slow. Go through each of these steps one by one. If you get stuck or 
run into an issue, stop and solve it, reaching out to this list as necessary.
Cheers,Greg
  

Reply via email to