Datenbank-Versionsnummer ändern

Crone

Benutzer
Beiträge
7
Hallo Forum,

ich versuche immer viel selber hinzubekommen aber nun scheiter ich.
Ich weis auch gar nicht ob es überhaupt möglich ist.
Frage: Ist es möglich die Datenbankversion NR. zu ändern?

Hintergrund... Ich habe eine Software die ein bis zwei mal im Jahr erweitert/aktualisiert wird. Dabei wird oft auch die Datenbank aktualisiert. Jetzt habe ich das Problem, dass die neue Version ein Feature nicht mehr hat.
Wenn ich jetzt eine ältere Version der Software starte, sagt er mir als Fehler, die Datenbank version ist neuer als die Software Version und möchte deshalb ein Update fahren welches mir aber das Feature killen würde.
Deshalb die Idee der neuen Datenbank einfach eine ältere Versionsnummer zu verpassen.

Hat da jemand eine Idee zu?

lg
Crone
p.s.
MSSQL 2008R2
 
Werbung:
Was ist denn die exakte Fehlermeldung? Es kann nur eine von zwei Versionen sein:

Die Software passt nicht zur Datenstruktur in der Datenbank, dann wird ein manueller Eingriff mit grosser Wahrscheinlichkeit dazu führen, dass im besten Fall eine Fehlermeldung kommt und im schlechtesten Fall falsche Daten entstehen.

Die Software kann mit der Version des Datenbankservers nicht umgehen, gleiches Problem.

In jedem Fall wäre es grob fährlässig, manuell einzugreifen. Sprich mit dem Softwarehersteller, aber der wird Dir das gleiche sagen.
 
Hallo Walter,

danke für deine rasche Antwort.
Über mögliche Probleme bin ich mir durchaus bewusst. Das ganze Projekt läuft auch autark, sodass ich rumspielen kann wie ich will.

Du sagst ein manuelles Eingreifen...
Würde die Möglichkeit bestehen die Datenbankversion zu verändern?
Ich würde es einfach gerne ausprobieren.
Danke für deine Hilfe.

die Fehlermeldung kommt nicht von der Datenbank sondern von der Software. Die wiederum einfach sagt das die Datenbank Version höher ist als die Version der Software deswegen müsste ein Update der Software vorgenommen werden.
Sprich also die Software passt nicht zur Datenbankstruktur... so wie du es schreibst.
 
Die Version ist einkompiliert. Nehme also den Quelltext, ändere dort den Versionsstring & kompiliere das neu.

Du hast keinen Quelltext? Dann hast Du Pech.
 
Hallo akretschmer,

danke für Deinen Post,
Mit den Quelltext meinst den von der Software richtig?
Den habe ich natürlich nicht. Deswegen war ja meine Frage, ob man die Datenbank so verändern kann, dass man der Software etwas vorgaukelt.

Wenn das alles Quatsch ist was ich schreiben dann verzeiht mir einfach. Ich bin in der Thematik noch ziemlich grün hinter den Ohren. lg
 
Im ersten Post wolltest Du den Versionsstring der DB ändern. Was also müßtest Du neu compilieren?

Beipsiel aus der Praxis:
vor ca. 2 Wochen hat einer unserer Kunden einen Fehler gemeldet, er bekam diese Meldung:

Code:
Column "t.relhasoids" does not exist

Was war die Ursache? Er hat von PG11 auf PG12 geupgraded, und hat nun mit pg_dump der Version 12 versucht die Datenbank zu dumpen. Und richtig, in pg_class gibt es in 12 diese Spalte nicht mehr. Warum aber meckert pg_dump von 12 über eine fehlende 'relhasoids' - Spalte? Nun, die Connection lief über pgbouncer, und dieser wurde nicht neu gestartet.
Also hatte dieser Connection-Pooler noch als Version 11 in Erinnerung. Davon abgesehen, daß dies ein Bug in pgbouncer ist und der Hauptmaintainer bei uns in der Firma arbeitet und das fixen wird, sehen wir, welche Folgen es haben kann, wenn eine Applikation falsche Informationen über den Versionsstand der Datenbank hat.

Und nun denk noch mal nach.
 
Ich komme mir wirklich dämlich vor weil ich ganz genau weis wie es ist sich mit unwissenden zu unterhalten. Also nochmals sorry.
wie gesagt, über die ganzen Konsequenzen bin ich mir bewusst. Es besteht keinerlei Gefahr da ich hier mit einem dummy rumspiele.
Das einzige was ich einfach gerne ausprobieren würde ist die Datenbank Version zu ändern.
Sollte das irgendwie gehen wäre ich für Tipps dankbar.
 
Hallo castrop,

danke für Deinen Post.
Ja, den link hatte ich mir auch schon angeschaut. Ich habe das aber so verstanden das es nur etwas mit der Kompalibität von irgendetwas anderem zu tun hat. Meine Datenbanken unterscheiden sich in dem Punkt nämlich nicht. aber ich schaue mir das nachher nochmal genauer an.
 
Hallo Walter,

die Frage kann ich dir auch nicht genau beantworten da ich keine Fehlermeldung von der Datenbank bekomme. die Software sagt lediglich,,,
„die gefundene Datenbank ist neuer als die der ausgeführten Programm Version. Sie müssen ein Programm Update durchführen.
Gefundene Datenbankversion 80
Das Programm muss beendet werden.
 
und wieso machst Du kein "Programmupdate"
MSSQL Server 2008R2 ist ja auch nicht das neuste. Wenn das zu neu ist, dann passt das für mich nicht zu den "regelmäßigen Programmupdates" von denen Du geschrieben hast.
 
Werbung:
Hallo,
Ich möchte kein Programm update machen, weil in der neueren Version Features entfernt worden sind die ich nutzte. Auf diese würde ich aktuell ungern verzichten wollen.
Und MSSQL 2008R2 wird benutzt weil die Software diese halt benutzt und installiert hat. Wenn ich eine neuere Version von MSSQL installieren würde, würde die Software meckern bei einem Programm update.
Es handelt sich auch nicht um eine Software die man kennt. Es ist eine Branchenspezifische Software von einem Entwickler der sich aber schwer tut auf Kundenwünsche einzugehen.
 
Zurück
Oben