infra:NET User
 
×
3.7.6 Serverbasierte Online-Replikation
Um die Online-Replikation nutzen zu können, muss zuvor eine Total-Replikation durchgeführt werden. Diese kann wahlweise über den infra-Client (siehe unten) oder die infra-Server Managementkonsole gestartet werden.
Hinweis
Um die Total-Replikation über einen infra-Client starten zu können, muss der Replikations-Datenbanktreiber sdbrepl.dll in der INI-Datei SIBDB.INI (Sektion [DataBases] - Replicate) eingebunden sein.
ACHTUNG!
In der zugehörigen INI-Datei (z.B. infraSQL.ini) darf bei eingeschalteter serverbasierter Online-Replikation die clientbasierte Online-Replikation nicht zusätzlich eingeschaltet werden - das führt sonst zu Konflikten mit der serverbasierte Online-Replikation.
Die INI-Dateien zum infra-Datenbankserver
In den INI-Dateien des infra-Datenbankservers (infraServer.ini bzw. SBASESQL.INI) werden die Datenquellen beschrieben, die auf dem entsprechenden Datenbankserver zur Verfügung stehen. Alle verfügbaren Datenquellen müssen in der Sektion [DataSources] mit eindeutigem Ident und einer frei wählbaren Bezeichnung eingetragen werden:
[DataSources]
ECHT=Unternehmensdaten
SPIEL=Beispieldaten
Zu jeder Datenquelle muss eine eigene Sektion in der INI-Datei existieren, in der alle zu der jeweiligen Datenquelle gehörenden Informationen eingetragen werden. Der Name der jeweiligen Sektion wird aus dem Kürzel „DS_“ und dem eindeutigen Ident der Datenquelle gebildet, also z.B. [DS_ECHT] für die Datenquelle mit den Unternehmensdaten. In jeder Sektion zu einer Datenquelle sind folgende Einträge möglich:
DBPath=Datenverzeichnis
Mit diesem Eintrag wird auf das Verzeichnis verwiesen, in dem sich die Datenbank-Dateien für diese Datenquelle befinden. Der Datenbank Server verwaltet alle Tabellen, die in dem angegebenen Verzeichnis gefunden werden.
Beispiel:
DBPATH=D:\INFRASRV\DATEN\D
PrimaryServer=Yes|No                              
Dieser Schalter bestimmt, ob diese Datenquelle im Primary Server Modus (Yes) oder im Backup Server Modus (No) verwaltet werden soll. Im Primary Server Modus werden auf dieser Datenquelle über diesen Server sowohl lesende als auch verändernde Operationen ausgeführt. Der Backup Server Modus lässt nur verändernde Operationen (Insert, Update, Delete) für diese Datenquelle auf diesem Server zu.
Beispiel:
PrimaryServer=Yes
LockLCD=Yes|No                               
Um zu verhindern, dass versehentlich mit der zeichenorientierten infra-Version oder über einen klassischen Datenbanktreiber (sdbcllcd) auf diese Datenquelle zugegriffen wird, während der infra-Datenbankserver mit dieser Datenquelle arbeitet, kann dieser Schalter aktiviert werden (empfohlen).
Beispiel:
LockLCD=Yes 
IgnoreDuplicateDBSession=Yes|No                              
Mit diesem Schalter wird dem Datenbankserver erlaubt, eine bereits registrierte Datenbankverbindung selbständig auszulöschen (Yes), wenn die gleiche Datenbankverbindung erneut hergestellt wird. Diese Situation kann dann auftreten, wenn ein Datenbankclient z.B. aufgrund eines Stromausfalls nicht ordnungsgemäß von der Datenbank getrennt wurde. Das Verhalten entspricht dem „Autorepair“ der klassischen infra-Datenbank. Ist dieser Schalter deaktiviert (No), so wird bei der zuvor beschriebenen Situation eine Neuverbindung des betroffenen Datenbankclients verhindert.
Beispiel:
IgnoreDuplicateDBSession=Yes 
AutoTableIncrease=Yes|No
Dieser Schalter gibt an, ob die automatische Tabellenvergrößerung für diese Datenquelle aktiviert (Yes) werden soll oder nicht. Die automatische Tabellenvergrößerung wird gestartet, wenn beim Einfügen eines Datensatzes in eine Tabelle vom Datenbankserver erkannt wird, dass die betroffene Tabelle keine weiteren Datensätze aufnehmen kann. Der Wert für die Anzahl der durch die automatische Vergrößerung zu schaffenden freien Datensätze wird mit dem infra-Programm „Kapazitätsermittlung, Dateien definieren (920)“ je Tabelle eingestellt. Stellt der Datenbankserver beim Versuch einer automatischen Vergrößerung fest, dass der zur Verfügung stehende Plattenplatz für die bevorstehende Vergrößerung nicht ausreicht, wird die Tabelle um eine entsprechend geringe Zahl von den Datensätzen vergrößert. Der Administrator (siehe Eintrag „AdminMsgUser“) bekommt in diesem Fall eine Warnung als Netzwerknachricht zugestellt. In der Protokolldatei sbasesrv.log wird die automatische Vergrößerung protokolliert (als Verursacher wird „TableIncrease" vermerkt).
Beispiel:
AutoTableIncrease=Yes
AutoIncreaseRetry=seconds
Dieser Wert gibt an, nach wieviel Sekunden der Datenbankserver eine erfolglose automatische Vergrößerung einer Tabelle erneut versuchen soll. Ist die automatische Vergrößerung zum Beispiel mangels Plattenplatz fehlgeschlagen, erhält der Administrator so die Möglichkeit zu reagieren und ggf. Platz zu schaffen, ohne die Arbeit der infra-Benutzer zu beeinträchtigen. Der Wert „0“ schaltet die erneuten Vergrößerungsversuche ab.
Beispiel:
AutoIncreaseRetry=30
AdminMsgUser=netuser
Hier kann der Name eines Netzwerkusers eingetragen werden, der in schwerwiegenden Fehlersituationen benachrichtigt werden soll. Treten z.B. bei der automatischen Vergrößerung Probleme auf, erhält der hier angegebene Netzwerkbenutzer eine Nachricht auf den Bildschirm. Fehlt diese Angabe oder ist der angegebene Benutzer im Netzwerk nicht bekannt, werden keine Nachrichten verschickt.
Beispiel:
AdminMsgUser=Administrator
Beispiel für eine Admin-Nachricht:
INFRA Datenbank Server:
ACHTUNG!
Automatische Vergrößerung terminierte mit Fehler 43 (Details im Serverprotokoll)!
Erneuter Versuch in 30 Sekunden...