Was ist die empfohlene Methode, um ein geringfügiges Upgrade von PostgreSQL, z. B. 9.3.0 auf 9.3.1, mit dem von Enterprise DB erstellten Windows-Installationsprogramm durchzuführen? Sollte ich zuerst deinstallieren oder nur über die vorhandene Installation installieren?
Die aktuelle Installation wurde mit postgresql-9.3.0-1-windows-x64.exe durchgeführt. Jetzt möchte ich mit postgresql-9.3.1-1-windows-x64.exe aktualisieren.
postgresql
installation
upgrade
postgresql-9.3
Buzz3791
quelle
quelle
e.g. ...
Teil entfernen sollten .Antworten:
Unter Windows funktioniert es einfach, den postgresql-Dienst zu stoppen und dann postgresql-9.3.1-1-windows-x64.exe über dem vorhandenen 9.3.0 auszuführen. Keine Deinstallation notwendig. Natürlich wird ein Backup empfohlen.
Eine klare, explizite Dokumentation für das Aktualisierungsverfahren unter Windows fehlt. Beachten Sie, dass der von @dezso bereitgestellte Dokumentationslink im aktuellen Handbuch nach https://www.postgresql.org/docs/current/static/upgrading.html verschoben wurde
In den PostgreSQL-Versionshinweisen werden normalerweise Migrationstipps in Anhang E dokumentiert.
Die beste Quelle für Windows-Installationsinformationen waren die Enterprise DB-Foren. Hier sind einige Beiträge, die ich gefunden habe und die sich mit der Frage befassten ...
Beachten Sie, dass die Upgrade-Informationen von Release zu Release verschoben werden. Beispielsweise,
Beachten Sie, dass EnterpriseDB ab Juni 2017 die Community-Diskussionsforen ersetzt hat, die sich auf die Links in dieser Antwort auswirken ( https://web.archive.org/web/20171021012954/https://www.enterprisedb.com/news/enterprisedb-announces- New-Postgres-Rocks-Online-User-Forum ). Ich konnte einige der ursprünglichen Beiträge auf der Wayback-Maschine finden. Ein toter Link, den ich nicht reparieren konnte, ist: "Januar 2010 - Upgrade von 8.4.1 auf 8.4.2", http://forums.enterprisedb.com/posts/list/2115.page#7888 .
quelle
Wenn Sie das Installationsprogramm für Windows über Enterprise DB ausführen (die Standardeinstellung, die über die Postgres-Site verknüpft ist ), müssen Sie den
postgresql
Dienst zumindest seit der aktuellen Version von Postgres 9.4 nicht beenden . Das Installationsprogramm erledigt das für Sie. Sie müssen gegebenenfalls noch Verbindungen wiederherstellen (die meisten Clients tun dies automatisch).Lesen Sie am besten das aktuelle Handbuch (unter Verwendung der aktuellen Version von Postgres):
http://www.postgresql.org/docs/current/interactive/upgrading.html
quelle
Ich habe gerade Postgres 10.0 auf 10.1 aktualisiert und es war ein sehr schnelles und einfaches Upgrade.
Ich habe die Binärdateien von https://www.enterprisedb.com/download-postgresql-binaries heruntergeladen und entpackt
C:\postgres
und dann das Verzeichnispgsql
in umbenannt ,pgsql-10.1
damit ich ältere Versionen behalten kann, bis sie als unnötig erachtet werden.Ich kopierte die DLL - Dateien
msvcp120.dll
undmsvcr120.dll
zu ,C:\postgres\pgsql-10.1\bin
weil ich es vorziehen , dass eine einfache Installation über den „Installer“ , die wahrscheinlich viel mehr aufblasen fügt als nötig.Ich habe dann dieses einfache Batch-Skript verwendet, das ich in der Vergangenheit geschrieben habe:
Ich lief
SELECT version();
in psql, um die alte Version zu bestätigen:Ich habe dann das Batch-Skript ausgeführt, über dem ein Dienst mit dem Namen installiert wurde
postgres-10.1
.Ich hielt den alten Dienst und legen Sie seine
Startup Type
zuDisabled
, und den neuen Dienst gestartet.Das
SELECT version();
erneute Ausführen in psql bestätigte das Upgrade (musste zweimal ausgeführt werden, da die Verbindung abgebrochen wurde, als ich den alten Server stoppte):Denken Sie daran, dass für das Upgrade einer Hauptversion das Datenverzeichnis mit
pg_upgrade
einer anderen Methode aktualisiert werden muss. Bei einem kleinen Upgrade hat diese Methode jedoch wie ein Zauber gewirkt.quelle
10.1
auf befolgt10.2
und es hat großartig funktioniert.