REFLEX: Datenbank-Updates
Inhaltsverzeichnis
1 Allgemeines
Von Zeit zu Zeit ändert sich am Programm etwas, was auch ein Datenbank-Update notwendig macht, z.B. wenn zusätzliche Felder eingefügt werden. Wenn Sie also ein Programm-Update erhalten und dieses benutzen wollen, muss manchmal auch die Datenbank „upgedatet“ werden. REFLEX hat aber ein Versionskontrollsystem, das automatisch die Datenbank-Versionen vergleicht und Sie beim ersten Start des neuen Programms auf ein notwendiges Datenbank-Update aufmerksam macht.
1.1 Hinweis, wenn Sie REFLEX-Admin sind
Dieser Hinweis-Dialog wird angezeigt, wenn Sie innerhalb von REFLEX Admin-Rechte haben:
Sie werden dann zum Datenbank-Update geführt.
1.2 Hinweis, wenn Sie kein REFLEX-Admin sind
Dieser Hinweis wird rechts unten einige Sekunden lang angezeigt, wenn Sie innerhalb von REFLEX keine Admin-Rechte haben:
Da Sie als Nicht-Admin sowieso keine Datenbank-Updates durchführen können, genügt dieser Hinweis.
2 Wenn Sie NICHT der Datenbank-Administrator sind:
So, Sie sind also ein REFLEX-Administrator und haben die Datenbank-Update-Meldung bekommen.
Das heißt ja aber noch nicht, dass Sie ein Datenbank-Administrator sind! Dazu benötigt man nämlich normalerweise besondere Rechte auf der SQL-Server-Ebene und der Datenbank!
Deshalb:
- Klicken Sie unbedingt auf die Schaltfläche
Abbruch
! - Informieren Sie Ihren Datenbank-Administrator über die Meldung!
- Arbeiten Sie nicht mit REFLEX, solange Ihnen der Datenbank-Administrator kein OK gibt!
3 Wenn Sie der Datenbank-Administrator sind:
Sie sollten diese Frage mit OK bestätigen, damit die Datenbank auf den neuesten Stand gebracht wird! Das neue Programm kann sonst u.U. nicht richtig funktionieren.
Dazu müssen folgende Voraussetzungen erfüllt sein:4 Voraussetzungen für das Datenbank-Update
- Sie müssen unbedingt über Administrator-Rechte auf dem SQL-Server verfügen!
- Es genügt nicht, dass Sie auf dem Server Admin-Rechte haben!
- Administrator-Rechte auf dem SQL-Server haben nichts zu tun mit Administrator-Rechte auf dem Server!
- Alle REFLEX-Benutzer müssen das Programm schließen und dürfen es erst wieder benutzen, wenn das Datenbank-Update erfolgreich durchgeführt wurde.
- Sie können dazu kontrollieren, ob in der Anzeige der Lizenzen/Benutzer alle Benutzer REFLEX geschlossen haben.
- Sie können in den Programmparameter und Einstellungen unter
Admin-Funktionen
den Programmzugriff sperren. Damit können sich Nicht-Admin-Benutzer nicht mehr an das Programm anmelden. Angemeldete Benutzer erhalten eine Meldung, dass sich das Programm bald beendet, nach ca. 5 Minuten werden die Benutzer abgemeldet und das Programm geschlossen!
4.1 Hintergrund:
Ein Server ist ein Rechner, der zumeist Dateien freigibt. Dafür gibt es bestimmte Zugriffsrechte, die festlegen, welcher Benutzer auf welche Verzeichnisse zugreifen darf und mit welchen Berechtigungen.
Ein SQL-Server ist eine Software, die eine Datenbank verwaltet. Die Zugriffsrechte auf die die Datenbank haben nichts zu tun mit den Rechten auf Verzeichnisse des Servers!
5 Prüfung der Zugriffsrechte unter Microsoft-SQL-Server
Der Microsoft-SQL-Server© hat die Eigenschaft, dass neue Tabellen bei fehlenden Admin-Rechten zwar angelegt werden, aber unter dem Namen des SQL-Users! Das Problem dabei ist, dass es zu keiner Fehlermeldung beim Anlegen einer neuen Tabelle kommt. Die Tabelle ist aber nur für den User sichtbar, der sie angelegt hat! Andere User des SQL-Servers sehen diese Tabelle nicht.
Im schlimmsten Fall wird die Tabelle später von einem Admin angelegt, was nun zu einem merkwürdigen Effekt führt.
5.1 Ein merkwürdiger Effekt
- Der User, der die ursprüngliche Tabelle (falsch) angelegt hat, kann Daten eintragen.
- Die User, die auf die vom Admin angelegte Tabelle zugreifen, sehen diese Daten nicht!
5.2 Prüfung
Deshalb wird ab Release 150707 vor dem Ausführen des Update-Scripts geprüft, ob mit der aktuellen User-Anmeldung das Recht auf das Anlegen von Tabellen vorhanden ist.
Das Programm legt dazu eine temporäre Tabelle "CreateCheck_(DATUM)_(UHRZEIT)" an, schreibt Testdaten hinein und liest diese wieder aus. Zu Schluss wird diese Tabelle wieder gelöscht.
Wenn ein Update-Script mit fehlenden Rechten ausgeführt werden soll, könnte das beispielsweise so aussehen:
In diesem Beispiel wurde eine temporäre Tabelle unter dem User "Guest" angelegt. Nach der Prüfung wird diese wieder gelöscht. Sollte der aktuelle User dazu aber kein Recht haben, geht das natürlich nicht und ein Admin sollte diese Tabelle manuell löschen.
5.3 Meldung bei fehlendem Recht
Wenn es nicht genügend Rechte gibt, wird diese Meldung angezeigt:
5.4 Prüfung ausschalten
Wenn diese Prüfung aus irgendeinem Grund ausgeschaltet werden soll, kann man das mit diesem Optionsfeld machen:
Einfach die Option ausschalten.
6 Durchführen des Datenbank-Updates
6.1 Dieses Fenster informiert Sie über den Stand des Datenbank-Updates:
1 | Anzeige der einzelnen Schritte des Datenbank-Updates im Protokoll-Fenster: Hier werden die erfolgreichen Aktionen und auch ggf. Fehler angezeigt, die während des Updates aufgetreten sind. |
2 | Anzeige des aktuellen Schrittes des Datenbank-Updates: Je nach Umfang des Datenbank-Updates und der Größe der Datenbank kann es mehrere Minuten dauern, bis das Update durchgelaufen ist! Unterbrechen Sie das Update auf gar keinen Fall! |
6.2 Datenbank-Update erfolgreich
Wenn das Datenbank-Update ohne Fehler durchgeführt werden konnte, wird diese Meldung angezeigt:
Das Datenbank-Update wurde ohne Fehler ausgeführt. Sie können das neue Programm benutzen!
6.3 Datenbank-Update nicht erfolgreich
Wenn beim Datenbank-Update Fehler aufgetreten sind, werden diese im Protokoll-Fenster angezeigt. Beispiel:
Wenn Fehler angezeigt werden, sollten Sie diese dem GEVITAS-Support mitteilen. Sie können dazu mit den Schaltflächen des Protokoll-Fensters:
- Das Protokoll ausdrucken.
- Das Protokoll in eine Textdatei speichern und per Mail an den Support schicken.
- Hinweise zu Fehlermeldungen erhalten Sie im Artikel Häufig auftretende Fehler bei SQL-Updates.
6.4 Datenbank zu alt für ein automatisches Update
In der aktuellen Version von REFLEX werden alle Update-Scripts ab Release 121216 unterstützt.
Ältere Datenbank-Versionen werden vom automatischen Datenbank-Dienst nicht mehr unterstützt!
Dieser Hinweis wird angezeigt:
Sollte Sie von einer Datenbank-Version vor diesem Release updaten wollen, so wenden Sie sich bitte an unseren Support!
7 Links
Alle genannten Warenzeichen sind Eigentümer der Warenzeichen-Inhaber. Alle Angaben ohne Gewähr. Die genannten Probleme sagen nichts über die Qualität der genannten Produkte aus.