Re: migrating to 9.2 created blank dbs

From: Marc Fromm <Marc(dot)Fromm(at)wwu(dot)edu>
To: Jeff Frost <jeff(at)pgexperts(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Keith <keith(at)keithf4(dot)com>, Raghavendra <raghavendra(dot)rao(at)enterprisedb(dot)com>, Keith Fiske <keith(at)omniti(dot)com>, "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org>
Subject: Re: migrating to 9.2 created blank dbs
Date: 2015-05-04 17:14:06
Message-ID: SN1PR0201MB15668EE8D9200370F1C600ED9DD20@SN1PR0201MB1566.namprd02.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

It has been suggested that I am misinterpreting the verbose output, which is very possible. Is the problem then with my backup script that works fine in 8.1 but needs a tweak to ignore whatever is triggering the attempt to create a backup called "|"?

It appears that only after databases with the extra stuff at the end is when a file is created called "|"

Databases (/l command):
manuals | postgres | LATIN1 | C | C | =CTc/postgres +
| | | | | postgres=CT/postgres
marctestdb | postgres | SQL_ASCII | C | C |
mattdb | postgres | SQL_ASCII | C | C |
mydb | postgres | SQL_ASCII | C | C | =Tc/postgres +
| | | | | postgres=CT/postgres
nasfaa | postgres | SQL_ASCII | C | C |

Backup log:
Backup and Vacuum complete at 13:21:09-2015-05-01 for time slot 05-01-2015_13-21 on database: manuals
Backup and Vacuum complete at 13:21:09-2015-05-01 for time slot 05-01-2015_13-21 on database: |
Backup and Vacuum complete at 13:21:09-2015-05-01 for time slot 05-01-2015_13-21 on database: marctestdb
Backup and Vacuum complete at 13:21:09-2015-05-01 for time slot 05-01-2015_13-21 on database: mattdb
Backup and Vacuum complete at 13:21:10-2015-05-01 for time slot 05-01-2015_13-21 on database: mydb
Backup and Vacuum complete at 13:21:10-2015-05-01 for time slot 05-01-2015_13-21 on database: |
Backup and Vacuum complete at 13:21:10-2015-05-01 for time slot 05-01-2015_13-21 on database: nasfaa

Script:
#!/bin/bash
# Location of the backup logfile.
logfile="/var/lib/pgsql/backups/logs/pg_back.log"
# Location to place backups.
backup_dir="/var/lib/pgsql/backups"
touch $logfile
timeslot=`date +%m-%d-%Y_%H-%M`
databases=`psql -h localhost -U postgres -q -c "\l" | sed -n 4,/\eof/p | grep -v rows\) | awk {'print $1'}`

for i in $databases; do
timeinfo=`date '+%T-%F'`
echo "Backup and Vacuum complete at $timeinfo for time slot $timeslot on database: $i " >> $logfile
/usr/bin/vacuumdb -z -h localhost -U postgres $i >/dev/null 2>&1
/usr/bin/pg_dump $i -ch 127.0.0.1 -U postgres | gzip > "$backup_dir/postgresql-$i-$timeslot-database.gz"
Done

-----Original Message-----
From: Jeff Frost [mailto:jeff(at)pgexperts(dot)com]
Sent: Monday, May 04, 2015 9:41 AM
To: Marc Fromm
Cc: Tom Lane; Keith; Raghavendra; Keith Fiske; pgsql-admin(at)postgresql(dot)org
Subject: Re: [ADMIN] migrating to 9.2 created blank dbs

Any chance you’re just misinterpreting the new more verbose output of psql’s \l command?

Nowadays, it looks like this:

postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
---------------+------------+----------+---------+-------+--------------
---------------+------------+----------+---------+-------+---------
postgres | postgres | UTF8 | C | C |
template0 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | C | C | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)

But there are still only 3 databases being listed above.

> On May 4, 2015, at 9:24 AM, Marc Fromm <Marc(dot)Fromm(at)wwu(dot)edu> wrote:
>
> Running the select statement gives me a list of all my databases. The only thing that looks suspicious are a few databases have stuff like this in the datacl column " {postgres=CT/postgres,=T/postgres}". The number of databases with that is suspiciously equal to the number of blanks created.
>
> Marc
>
> -----Original Message-----
> From: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
> Sent: Monday, May 04, 2015 9:07 AM
> To: Keith
> Cc: Marc Fromm; Raghavendra; Keith Fiske; pgsql-admin(at)postgresql(dot)org
> Subject: Re: [ADMIN] migrating to 9.2 created blank dbs
>
>> On Fri, May 1, 2015 at 6:39 PM, Marc Fromm <Marc(dot)Fromm(at)wwu(dot)edu> wrote:
>>> I setup a server running postgresql-server-9.2.10-2.el7_1.x86_64.
>>> After restoring my databases form a system running
>>> postgresql-server-8.1.23-10.el5_10 (created with pg_dumpall),
>>> several blank databases/entries were created.
>
> FWIW, this seems to match a symptom we've heard of occasionally in which the source server's catalogs are corrupted. If the 8.1 server is still online it would be interesting to connect to it manually and see what you get from "select * from pg_database”.

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Igor Neyman 2015-05-04 17:22:07 Re: pg_dump and pg_restore with multiple streams does Not seem to improve overall times
Previous Message Jeff Frost 2015-05-04 17:12:40 Re: migrating to 9.2 created blank dbs