Somehow I've managed to completely bugger the install of postgresql on Ubuntu karmic. I want to start over from scratch, but when I "purge" the package with apt-get it still leaves traces behind such that the reinstall configuration doesn't run properly.
After I've done:
apt-get purge postgresql apt-get install postgresql
It said
Setting up postgresql-8.4 (8.4.3-0ubuntu9.10.1) ... Configuring already existing cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/postgresql/8.4/main, owner: 108:112) Error: move_conffile: required configuration file /var/lib/postgresql/8.4/main/postgresql.conf does not exist Error: could not create default cluster. Please create it manually with pg_createcluster 8.4 main --start or a similar command (see 'man pg_createcluster'). update-alternatives: using /usr/share/postgresql/8.4/man/man1/postmaster.1.gz to provide /usr/share/man/man1/postmaster.1.gz (postmaster.1.gz) in auto mode. Setting up postgresql (8.4.3-0ubuntu9.10.1) ...
I have a "/etc/postgresql" with nothing in it and "/etc/postgresql-common/" has a 'pg_upgradecluser.d' directory and root.crt and user_clusters files.
The /etc/passwd has a postgres user; the purge script doesn't appear to touch it. There's been a bunch of symptoms which I work through only to expose the next.
Right this second, when I run that command "pg_createcluster..." it complains that '/var/lib/postgresql/8.4/main/postgresql.conf does not exist', so I'll go find one of those but I'm sure that won't be the end of it.
Is there not some easy one-liner (or two) which will burn it completely and let me start over?
To uninstall PostgreSQL, navigate to the Windows Control Panel to open the Uninstall or change a program dialog and Right-click the PostgreSQL 13 and select Uninstall/Change from the context menu. You can either remove the entire application or individual components.
Postgresql comes with an uninstaller which you can (and should) invoke if you want to get rid of it. You find that uninstall-postgres tool in the installation folder, by default /Library/PostgreSQL/<version> . Execute the uninstall-postgres. app tool which you find there, to remove Postgresql from your system.
So, in order to completely reinstall the PostgreSQL do the following: sudo apt-get --purge remove postgresql-* sudo rm -Rf /etc/postgresql /var/lib/postgresql. sudo apt-get install postgresql.
If your install isn't already damaged, you can drop unwanted PostgreSQL servers ("clusters") using pg_dropcluster
. Use that in preference to a full purge and reinstall if you just want to restart with a fresh PostgreSQL instance.
$ pg_lsclusters Ver Cluster Port Status Owner Data directory Log file 11 main 5432 online postgres /var/lib/postgresql/11/main /var/log/postgresql/postgresql-11-main.log $ sudo systemctl stop postgresql@11-main $ sudo pg_dropcluster --stop 11 main $ sudo pg_createcluster --start 11 main
If you really need to do a full purge and reinstall, first make sure PostgreSQL isn't running. ps -C postgres
should show no results.
Now run:
apt-get --purge remove postgresql\*
to remove everything PostgreSQL from your system. Just purging the postgres
package isn't enough since it's just an empty meta-package.
Once all PostgreSQL packages have been removed, run:
rm -r /etc/postgresql/ rm -r /etc/postgresql-common/ rm -r /var/lib/postgresql/ userdel -r postgres groupdel postgres
You should now be able to:
apt-get install postgresql
or for a complete install:
apt-get install postgresql-8.4 postgresql-contrib-8.4 postgresql-doc-8.4
I had a similar situation: I needed to purge postgresql 9.1 on a debian wheezy ( I had previously migrated from 8.4 and I was getting errors ).
What I did:
First, I deleted config and database
$ sudo pg_dropcluster --stop 9.1 main
Then removed postgresql
$ sudo apt-get remove --purge postgresql postgresql-9.1
and then reinstalled
$ sudo apt-get install postgresql postgresql-9.1
In my case I noticed /etc/postgresql/9.1 was empty, and running service postgresql start
returned nothing
So, after more googling I got to this command:
$ sudo pg_createcluster 9.1 main
With that I could start the server, but now I was getting log-related errors. After more searching, I ended up changing permissions to the /var/log/postgresql directory
$ sudo chown root.postgres /var/log/postgresql $ sudo chmod g+wx /var/log/postgresql
That fixed the issue, Hope this helps
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With