Dear All,
I have long used pkgsrc and know that it's a great system. Here is an
example of the kind of experience that contributes to this.
I recently switched a system from i386 to amd64 replacing all
i386-packages with amd64-packages. I had not considered making a
backup of my PostgreSQL databases and so when starting pgsql received
an error about differing MAXALIGN values between the database and the
running program. It seems there is no tool available to convert the
database, but pkgsrc had everything I needed to fix my mistake.
- download precompiled 32bit postgresql, e.g. from
ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-4.0/i386/All/
postgresql83-8.3.8.tgz
postgresql83-client-8.3.8.tgz
postgresql83-server-8.3.8.tgz
- install as regular package:
export PKG_PATH=/home/marko/tmp
sudo pkg_add -m i386 postgresql83-8.3.8.tgz
- install emulators/netbsd32_compat40
- download precompiled 32bit readline, e.g. from
ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD-4.0/i386/All/
readline-6.0.tgz
- install readline in /usr/pkg/emul/netbsd32
sudo mkdir -p /usr/pkg/emul/netbsd32/var/db/pkg
sudo pkg_add -m i386 -K /usr/pkg/emul/netbsd32/var/db/pkg -p
/usr/pkg/emul/netbsd32/ readline-6.0.tgz
- start pgsql
su
export
LD_LIBRARY_PATH=/usr/lib:/usr/pkg/lib:/lib:/usr/pkg/emul/netbsd32/lib
/etc/rc.d/pgsql onestart
- dump database
pg_dump -C -f ~/tmp/mySatabase.pg_dump -F c myDatabase
/etc/rc.d/pgsql onestop
exit
- deinstall postgresql83-8.3.8.tgz, postgresql83-client-8.3.8.tgz,
postgresql83-server-8.3.8.tgz
sudo pkg_delete postgresql83-8.3.8
sudo pkg_delete postgresql83-server-8.3.8
sudo pkg_delete postgresql83-client-8.3.8
- install 64bit pgsql
export PKG_PATH=/usr/pkgsrc/packages/All
sudo pkg_add postgresql83-8.3.8.tgz
- keep pgsql database cluster
mv /usr/pkg/pgsql /usr/pkg/pgsql.old
- start pgsql for the initdb
sudo /etc/rc.d/pgsql onestart
sudo /etc/rc.d/pgsql onestop
- copy config file
sudo cp /usr/pkg/pgsql.old/data/postgresql.conf
/usr/pkg/pgsql/data/postgresql.conf
- start pgsql & restore the database
sudo /etc/rc.d/pgsql onestart
su pgsql
pg_restore -C -d postgres -F c myDatabase.pg_dump
My thanks to all who contributed and continue to contribute to pkgsrc!
Best regards,
Marko
Attachment:
pgpD4TQyf7TyI.pgp
Description: PGP signature