Thread: Problem while OS-Update
Hello, upgrading my OS from RedHat 8.0 to FC2, postgresql was also automatically updated from 7.2. to 7.4. Unfortunately, I did not "dumpall"... How can I get my data??? I copied the data-folder to another location and so got running the new postgresql-server. I tried to install the old 7.2.4.tar.gz in a new folder, but it don't go further than ./configure. gmake gives the following lines at the end: (second time tiping gmake) gcc -O2 -Wall -Wmissing-prototypes -Wmissing-declarations -Wl,-rpath,/usr/local/pgsql/lib -export-dynamic access/SUBSYS.o bootstrap/SUBSYS.o catalog/SUBSYS.o parser/SUBSYS.o commands/SUBSYS.o executor/SUBSYS.o lib/SUBSYS.o libpq/SUBSYS.o main/SUBSYS.o nodes/SUBSYS.o optimizer/SUBSYS.o port/SUBSYS.o postmaster/SUBSYS.o regex/SUBSYS.o rewrite/SUBSYS.o storage/SUBSYS.o tcop/SUBSYS.o utils/SUBSYS.o -lz -lcrypt -lresolv -lnsl -ldl -lm -lbsd -lreadline -ltermcap -o postgres commands/SUBSYS.o(.text+0x420a): In function `DoCopy': : undefined reference to `errno' commands/SUBSYS.o(.text+0x4210): In function `DoCopy': : undefined reference to `errno' commands/SUBSYS.o(.text+0x4317): In function `DoCopy': : undefined reference to `errno' commands/SUBSYS.o(.text+0x431d): In function `DoCopy': : undefined reference to `errno' collect2: ld returned 1 exit status gmake[2]: *** [postgres] Fehler 1 gmake[2]: Leaving directory `/usr/local/pgsql/postgresql-7.2.4/src/backend' gmake[1]: *** [all] Fehler 2 gmake[1]: Leaving directory `/usr/local/pgsql/postgresql-7.2.4/src' gmake: *** [all] Fehler 2 [root@whisky postgresql-7.2.4]# There were a lot of lines containing "...Wmissing..." How can I proceed? Thanks for help Heiko
Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > upgrading my OS from RedHat 8.0 to FC2, postgresql was also > automatically updated from 7.2. to 7.4. Unfortunately, I did not > "dumpall"... How can I get my data??? I copied the data-folder to > another location and so got running the new postgresql-server. I tried > to install the old 7.2.4.tar.gz in a new folder, but it don't go further > than ./configure. gmake gives the following lines at the end: (second > time tiping gmake) > commands/SUBSYS.o(.text+0x420a): In function `DoCopy': > : undefined reference to `errno' You need to add "#include <errno.h>" near the top of src/backend/commands/copy.c, as per this patch: http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/copy.c.diff?r1=1.145.2.1&r2=1.145.2.2 2003-04-11 16:51 tgl * src/backend/commands/copy.c (REL7_2_STABLE): Add #include <errno.h> per recent reports that it's now necessary on RHL 9. (Not clear why it didn't break long before, actually...) We never put out a 7.2.5, so the change didn't see the light of day in that branch ... regards, tom lane
Thank You, I installed now the 7.2.4-Version and it works. But how do I reach my Data? My 7.2.-installation is now in /usr/local/pgsql/ , my data - also 7.2 - are in /usr/lib/pgsql.old/data/ ...?? Tom Lane wrote: >Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > > >>upgrading my OS from RedHat 8.0 to FC2, postgresql was also >>automatically updated from 7.2. to 7.4. Unfortunately, I did not >>"dumpall"... How can I get my data??? I copied the data-folder to >>another location and so got running the new postgresql-server. I tried >>to install the old 7.2.4.tar.gz in a new folder, but it don't go further >>than ./configure. gmake gives the following lines at the end: (second >>time tiping gmake) >> >> > > > >>commands/SUBSYS.o(.text+0x420a): In function `DoCopy': >>: undefined reference to `errno' >> >> > >You need to add "#include <errno.h>" near the top of >src/backend/commands/copy.c, as per this patch: > >http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/copy.c.diff?r1=1.145.2.1&r2=1.145.2.2 > >2003-04-11 16:51 tgl > > * src/backend/commands/copy.c (REL7_2_STABLE): Add #include > <errno.h> per recent reports that it's now necessary on RHL 9. > (Not clear why it didn't break long before, actually...) > >We never put out a 7.2.5, so the change didn't see the light of day >in that branch ... > > regards, tom lane > >---------------------------(end of broadcast)--------------------------- >TIP 6: Have you searched our list archives? > > http://archives.postgresql.org > > >
Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > Thank You, I installed now the 7.2.4-Version and it works. But how do I > reach my Data? My 7.2.-installation is now in /usr/local/pgsql/ , my > data - also 7.2 - are in /usr/lib/pgsql.old/data/ ...?? Point the postmaster to that data directory with PGDATA or -D switch. regards, tom lane
Tom Lane wrote: >Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > > >>Thank You, I installed now the 7.2.4-Version and it works. But how do I >>reach my Data? My 7.2.-installation is now in /usr/local/pgsql/ , my >>data - also 7.2 - are in /usr/lib/pgsql.old/data/ ...?? >> >> > >Point the postmaster to that data directory with PGDATA or -D switch. > > regards, tom lane > I tried the following: -bash-2.05b$ /usr/local/pgsql/bin/postmaster -D /var/lib/pgsql.old/data FATAL 2: The database cluster was initialized with LC_COLLATE 'de_DE.UTF-8' and LC_CTYPE 'de_DE.UTF-8', but the server was compiled without locale support. It looks like you need to initdb or recompile. -bash-2.05b$ Then: -bash-2.05b$ /usr/local/pgsql/bin/initdb -D /var/lib/pgsql.old/data/ The files belonging to this database system will be owned by user "postgres". This user must also own the server process. initdb: The directory /var/lib/pgsql.old/data/ exists but is not empty. If you want to create a new database system, either remove or empty the directory /var/lib/pgsql.old/data/ or run initdb with an argument other than /var/lib/pgsql.old/data/. -bash-2.05b$ How can I recompile? Or is there another possibility? Heiko
Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > -bash-2.05b$ /usr/local/pgsql/bin/postmaster -D /var/lib/pgsql.old/data > FATAL 2: The database cluster was initialized with LC_COLLATE > 'de_DE.UTF-8' and > LC_CTYPE 'de_DE.UTF-8', but the server was compiled without > locale support. > It looks like you need to initdb or recompile. You need configure --enable-locale, or some such switch. > -bash-2.05b$ /usr/local/pgsql/bin/initdb -D /var/lib/pgsql.old/data/ Do NOT NOT NOT initdb, or you'll have wasted this whole exercise. regards, tom lane
Tom Lane wrote: >Heiko Pohl <Heiko.Pohl@VR-Web.de> writes: > > >>-bash-2.05b$ /usr/local/pgsql/bin/postmaster -D /var/lib/pgsql.old/data >>FATAL 2: The database cluster was initialized with LC_COLLATE >>'de_DE.UTF-8' and >> LC_CTYPE 'de_DE.UTF-8', but the server was compiled without >>locale support. >> It looks like you need to initdb or recompile. >> >> > >You need configure --enable-locale, or some such switch. > > > Got it!!! :-)))) I have my data now running on the 7.4-server and nothing is lost. Great! Thank You very much! Heiko Pohl