Die Flagge des Marasek

Dekostreifen

English

Aktuell Texte Der Comic Impressum Kalender Suche PHP-Klassen Container-Wizard main.s21

Kategorien

Buch
Computer
Computerspiele
Film
Geschichte
Gesellschaft
Idee
Kunst
Natur
Persönlich
Politik
Programmieren
Religion & Philosophie
Weblog
Weltpolitik
Weltsicht
{{login}}

Debian Squeeze / PostgreSQL

Permalink
Vorheriger: WahlniederlagendiskussionNächster: Zum Rücktritt Hany Azers
Eingeordnet in: Computer

Update:

Angesichts der Tatsache, dass bei dem Suchbegriff "postgresql squeeze update" dieser Text an erster Stelle bei Google erscheint, muss ich ihn überarbeiten, da er derzeit nicht hilfreich ist. Wie ich das herausgefunden habe? Nun, ich habe selber nochmal danach gesucht, weil ich es nochmal machen musste. Auf der Suche nach einer Anleitung auf sich selber zu stossen ist ein Zeichen für beginnende Demenz.

Das Prozedere für Lenny auf Squeeze ist wie folgt:

  • squeeze in die sources.list eintragen. Dazu einfach den Eintrag für lenny nehmen und durch squeeze erweitern. NICHT lenny ersetzen! Also z. B. wie folgt:
deb http//ftp.de.debian.org/debian/ lenny main
deb http://ftp.de.debian.org/debian/ squeeze main
  • dann mit "apt-get update" die Paketlisten aktualisieren
  • danach mit "apt-get install postgresql-8.4" die neue Version holen. Den Meldungen zufolge sieht es so aus, als würde er das Update machen, hat aber auf zwei Servern nicht funktioniert.
  • deshalb habe ich dann selber mit "/etc/init.d/postgresql stop" die Datenbanken angehalten und in der jeweiligen postgresql.conf (/etc/postgresql/8.3/main.conf und /etc/postgresql/8.4/main.conf) die Ports so zurückgestellt, dass 8.3 auf 5432 (port = 5432) läuft und 8.4 auf 5433;
  • danach habe ich mit "pg_dropcluster 8.4 main" den neuen, aber leeren cluster gelöscht;
  • und schliesslich mit "pg_upgradecluster 8.3 main" die Migration selber angestossen

Wenn man danach lenny aus der sources.list entfernt und apt-get update apt-get upgrade macht, sollte - neben der restlichen Aktualisierung - postgresql-8.3 gelöscht werden. Man kann das natürlich auch mit "apt-get purge postgresql-8.3" gründlich selber machen. Unnötig zu sagen, dass man sicher sein sollte, dass der 8.4er läuft.

Nachfolgend der ursprüngliche Text, der sich vor allem mit der Situation beschäftigt, wenn man inmitten des Updates dumm da steht und der noch ein wenig meinem Frust Rechnung trägt:

Gerade habe ich mich daran gemacht, meine heimische Entwicklerinstallation von Debian Lenny auf Squeeze upzugraden. Und Junge, bin ich froh, dass ich das erst mal mit meinem Entwicklersystem gemacht habe, dass ich mir im Zweifel fröhlich zerschiessen kann.

apt-get dist-upgrade ist unspassiger, als man denkt. Im Grunde kann man davon ausgehen, dass immer der jeweilige Hauptdienst eines Servers kaputt gemacht wird, d. h. wenn man einen Mailserver hat, dann funktioniert danach postfix nicht mehr, bei einem Webserver geht apache ein usw. usf. Und ja, ich weiss wovon ich spreche, ich mache das schon seit ein paar Jährchen und rege mich eigentlich jedes Mal auf; anscheinend gehen die Maintainer bei Debian nicht davon aus, dass jemand ihre Distribution tatsächlich produktiv verwendet. Derlei Anwender wie ich würden es nämlich sehr schätzen, wenn bei einem apt-get dist-upgrade nicht einfach nur eine Liste der zu aktualisierenden Pakete, sondern gleich ein Hinweis auf mögliche Caveats käme. Ich meine, vorher wie in bevor man Enter drückt und nicht während.

Nun gut, diesmal war postgresql der kritische Punkt - auf meinem Entwicklungssystem. Ich wage nicht zu denken, was mir bei einem Mailserver mit postfix und Authentifizierung und Verschlüsselung und weiterem alles blüht.

Jedenfalls hat Debian einen wunderschönen Upgrade-Pfad für postgresql:

  • postgresql-8.3 deinstallieren
  • postgresql-8.4 mit Default-Einstellungen installieren
  • nichts machen

Dazu gibt es ein Tool namens pg_upgradecluster, mit dem man die Daten und die Konfiguration von 8.3 auf 8.4 migrieren kann, allerdings muss dazu postgresql-8.3 noch laufen. Das wird aber, wie erwähnt, im Verlaufe von apt-get dist-upgrade in den Orkus geschickt. Dazu editiert man dann einfach die /etc/apt/sources.list und nimmt lenny wieder auf:

deb http://ftp.de.debian.org/debian/ lenny main

Danach apt-get install postgresql-8.3 und "pg_upgradecluster 8.3 main", testen und hoffen, dass es klappt. Immerhin ist er schlau genug, um postgresql-8.3 und postgresql-8.4 auf unterschiedliche Ports zu legen, so dass beide gleichzeitig laufen. Hey, er legt den 8.4 sogar auf den Standardport, wenn er fertig ist.

Kommentieren

Bitte beachten: Kommentare sind nicht sofort sichtbar, sondern werden erst nach einer kurzen Prüfung freigegeben, sofern keine rechtliche Beanstandung vorliegt.
Rechtlich bedenkliche Inhalte werden entweder entschärft oder nicht veröffentlicht.

* Titel  
* Nickname  
* Kommentar