Datenspiegelung vom Server zu einem Client bei aktivem TM

Fragen, Anregungen oder Tipps und Tricks? Hier ist der erste Anlaufpunkt.
Nicht sicher, wo ein Thema hingehört? Hier hinein - wir kümmern uns! :)

Moderator: Forum Moderatoren

Forumsregeln
TM-Startforum - "offen für alle Themen".
Beiträge, die in einen anderen Bereich passen, werden bei Bedarf verschoben.
Benutzeravatar
wahnfried
Beiträge: 3180
Registriert: Freitag 13. Januar 2006, 23:46
19
Wohnort: Braunschweig

Beitrag von wahnfried »

danspie hat geschrieben:...kommt es immer mal wieder vor, dass die Batch-Datei aufgrund eines Fehlers nicht durchläuft. Daher habe ich eine weitere Batch-Datei erzeugt, in der der Backup-Modus beendet wird:

\\server01\TurboMed\Programm\TMAdmin /endbackup /server=server01

Allerdings ist dann auch klar, dass die Sicherung nicht komplett durchgelaufen ist!
Hallo,

falls doch mal wiederholt das Warnfenster aufpoppt, daß sich Datenbanken im Backupmodus befinden und das nicht länger anhalten sollte:

Das Beenden des Backupmodus geht auch ohne "extra-Backup-beenden-Batch", da beim normalen Durchführen des TMAdmin-Befehles "...beginbackup" erkannt wird, falls sich die Datenbanken noch im Backupmodus befinden und dies dann nicht verändert wird. Man kann also einfach die normale Datenspiegelung per TMAdmin von irgendeinem Clienten ungestört durchlaufen lassen, dann wird der Backupmodus auch beendet.

...dauert aber eben 2-3minuten länger als die extra-Beenden-Batch.

Aber das Problem der wahrscheinlich unvollständigen Spiegelung wäre damit dann auch behoben! :)

Viele Grüsse, Wahnfried
Benutzeravatar
wahnfried
Beiträge: 3180
Registriert: Freitag 13. Januar 2006, 23:46
19
Wohnort: Braunschweig

Fehlermeldungen beim Updatelauf,wenn automatische Spiegelung

Beitrag von wahnfried »

Hallo,

wenn an einem Clienten die Datenspiegelung per TMAdmin batchgesteuert mit vorangestelltem Startaufruf von TurboMed vorgesehen ist (d.h. automatische Datenspiegelung beim Beenden von TurboMed), sollte beim ersten Arbeitsplatz-Programmstart von TurboMed auf dem Clienten (nach Serverupdate auf eine neue Version, jedoch auf dem Clienten noch alte Version) der Programmstart von TurboMed besser (aber nicht zwingend) ohne diese Spiegelung gestartet (und damit das Client-Update per netsetup eingeleitet) werden.

Im Rahmen des Client-Updates per Netsetup wird der Prozess TurboMed.exe beendet, wenn das Update eingeleitet wird. Dadurch beginnt im Hintergrund die Datenspiegelung, die dann auf mehrere gerade geöffnete Dateien stößt und reichlich Fehlermeldungen im DOS-Fenster erzeugt. Wenn dies erstmal begonnen hat, soll das DOS-Fenster nicht beendet werden, um das Ende des Backupmodus der Serverdatenbanken nicht zu gefährden.

Wer vorher daran denkt, kann das DOS-Fenster der Batch beenden, wenn der Programmstart von TurboMed sichtbar eingeleitet ist, spätestens vor dem Bestätigen der Update-Rückfrage. Dann kann die Datenspiegelung nicht mehr eingeleitet werden, wenn TurboMed.exe beendet wird. Oder Programmaufruf über das ursprüngliche Programm-Icon (das ich umbenannt habe in "TurboMed ohne Datenspiegelung" und auf der anderen Seite des Desktop als das Icon für die Batch-Start-Kombi angeordnet habe) oder über das Windows-Startmenü.

Das Update funktioniert aber trotzdem...

Aber bitte daran denken, daß die Datenspiegelung nach dem Updatelauf nicht korrekt ist oder sogar noch von der alten Programmversion stammt, also nicht kompatibel ist, bis sie einmal nach dem Update korrekt abgelaufen ist! (das betrifft auch die vor dem Serverupdate angelegten Sicherungsdateien, auch wenn sie TurboMed-intern erzeugt und geprüft sind, auch hier direkt nach dem Update neue Datensicherung anlegen...)

Viele Grüsse, Wahnfried
Benutzeravatar
mschiller
Beiträge: 979
Registriert: Montag 10. Mai 2004, 09:32
21
Wohnort: 90489 Nürnberg
Kontaktdaten:

???

Beitrag von mschiller »

mal im ernst? ich glaub, dass von den anwendern die hier in diesem forum sind, nicht wirklich viele die datensicherung und datenspiegelung von turbomed benutzen. und der beitrag eben war auch nicht gerade eine werbung dafür.

wir haben turbomed - und turbomed verrät uns welche dateien wir sichern müssen und gibt uns ein toll an die hand um die datenbank vorübergehend anzuhalten.

ich hab mal spassehalber verglichen wielange es dauert die daten mit der turbomeddatensicherung wieder einzulesen und wie lange es dauert die praxis.db zu kopieren - kein vergleich!
Benutzeravatar
wahnfried
Beiträge: 3180
Registriert: Freitag 13. Januar 2006, 23:46
19
Wohnort: Braunschweig

nicht über die Turbomed-interne Art gespiegelt

Beitrag von wahnfried »

Hallo mschiller und alle,

da habe ich mich wohl mißverständlich ausgedrückt, mit der "automatischen Datenspiegelung beim Beenden von TurboMed" meine ich nicht die über den Grundeinstellungspunkt "Datensicherung" einstellbare Spiegelung, sondern die in diesem Thread dargestellte Lösung über Batch und TMAdmin (bei mir allerdings immer noch ohne Robocopy, da xcopy die Spiegelung auch in unter 3 Minuten schafft und ich Einiges per mail und Telefonsupport an Freunde weitergebe, die z.T. wenig PC-Erfahrung haben - da geht es ohne Robocopy einfacher).

mit "automatisch beim Beenden von TurboMed" meine ich die Kombination der TMAdmin/xcopy-Batch mit dem vorangestellten Startaufruf von TurboMed, so daß diese Batch sowohl TurboMed startet als auch beim Beenden von TurboMed (bei ausgeschalteter interner Datensicherung bzw. -Spiegelung!) die TMAdmin-Routine für die Spiegelung anläuft. Ist weiter oben genau beschrieben. Dadurch wird die Serverdatenbank auf den Arbeitsplatz, auf dem die Spiegelung eingeleitet wurde, kopiert, damit dieser als Einzelplatz mit den aktuellen Daten funktionieren kann.

Bei dieser Kombination (also gerade unter Verwendung von TMAdmin!) gibt es aber den in meinem vorigen Beitrag beschriebenen "Pferdefuß" beim Update des Clienten über Netsetup zu beachten, der allerdings nichts zerstört, aber doch für Verwirrung sorgt...

(wer dabei gar nicht auf den Gedanken kommt, daß die TurboMed-interne Datenspiegelung infrage kommt, liest den Beitrag richtig) :P

Viele Grüsse, Wahnfried
Benutzeravatar
wahnfried
Beiträge: 3180
Registriert: Freitag 13. Januar 2006, 23:46
19
Wohnort: Braunschweig

Datenspiegelung im VOLL-BETRIEB der Praxis

Beitrag von wahnfried »

Hallo,

Wer auch am Client-Rechner, auf den aktuell gespiegelt werden soll (und nicht nur an allen anderen Arbeitsplätzen der Praxis), während der Spiegelung der Datenbanken per TMAdmin weiterarbeiten möchte, braucht nur die Datenbanken in einen eigenen Ordner (z.B. "TurboMed_EP") spiegeln, der innerhalb (oder außerhalb) des lokalen TurboMed-Ordners eingefügt wird, indem man folgende Batch-Datei benutzt:

Code: Alles auswählen

rem  Zeitsynchronisation:
net time \\servername /SET /y
cd..
cd..
cd..
rem     Pruefung Datenbanken auf Backupmodus im LAUFENDEN Betrieb von TM,
rem      auch der Spiegelungs-Client kann als Client weiterarbeiten...
rem      -nur wenn die Taskkill-Befehle fuer TurboMed und PraxisCENTER
rem       auskommentiert oder entfernt sind,
rem     andernfalls:
rem      -bei nicht auskommentierten taskkill-Befehlen werden
rem       verwaiste - im Speicher verbliebene - Prozesse abgebrochen 
rem        (mit oder ohne DATENSPIEGELUNG ):
rem
rem     (Fenster nicht schliessen, bevor der "Pause"-Befehl
rem      erneut angezeigt wird!)
rem
rem     fuer Windows2000 muß in den folgenden 5 Zeilen der Befehl "taskkill /f /im" durch
rem     "kill -f" ersetzt werden und der Kill-Befehl über die RKT-Tools nachinstalliert sein
rem     (Fehlermeldung nach Taskkill ist ok, wenn der Prozess bereits beendet war.)
rem
rem   Abbrechen verwaister Prozesse
rem taskkill /f /im turbomed.exe
rem taskkill /f /im PraxisCENTER.exe
rem taskkill /f /im dpserver.exe
rem taskkill /f /im dpbubble.exe
rem taskkill /f /im dpbrowser.exe
rem taskkill /f /im wkflbu32.exe
rem taskkill /f /im wkflsr32.exe
rem pause
rem   Vorbereiten der Datenbanken auf die Kopieraktion (Backupmodus)
\\Servername\TurboMed\Programm\TMAdmin /beginbackup /server=Servername
rem  
rem    J E T Z T  ein bischen  G E D U L D  ! !  (Datenbankspiegelung)
rem
@xcopy \\Servername\TurboMed\PraxisDB D:\TurboMed\TurboMed_EP\PraxisDB\ /s /e /c /h /y
rem  Es sollten 8 Dateien kopiert worden sein
rem
@xcopy \\Servername\TurboMed\DruckDB D:\TurboMed\TurboMed_EP\DruckDB\ /s /e /c /h /y
rem  Es sollten 4 Dateien kopiert worden sein
\\Servername\TurboMed\Programm\TMAdmin /endbackup /server=Servername
rem  Backupmodus beendet ? (muss 5x 'erfolgr.beendet' gemeldet worden sein!)
rem
rem  Kopieren neuer Dateien weiterer Ordner ohne Backupmodus:
xcopy \\Servername\TurboMed\Dokumente D:\TurboMed\Dokumente\ /s /e /c /h /y /d
xcopy \\Servername\TurboMed\Formulare D:\TurboMed\Formulare\ /s /e /c /h /y /d
xcopy \\Servername\TurboMed\KVDT D:\TurboMed\KVDT\ /s /e /c /h /y /d
rem
rem  die Pause am Ende erlaubt die Ueberpruefung auf fehlerfreien Ablauf...
pause
(Anpassung von "servername" und der Pfade ist natürlich jeweils erforderlich)

(siehe auch im Wiki: http://vondoczudoc-wiki.oblomov.de/doku ... en_betrieb

Bei Umstellung auf Einzelplatzbetrieb werden die Datenbank-Pfade in den Grundeinstellungen auf diesen Ordner und die darin befindlichen Datenbankordner verlinkt, für Client-Modus auf den Server. Es muß aber an der normalen Position innerhalb des TurboMed-Ordners jeweils ein Ordner der Datenbanken existieren, das darf aber jeweils der klitzekleine Mustermann-Ordner der PraxisDB und DruckDB sein (Die StammDB braucht man ja nicht spiegeln, daher braucht diese auch nicht "ausgelagert" werden). Offensichtlich blockiert TurboMed auch bei Zugriff auf die Server-Datenbanken den Schreibzugriff von dritter Seite auf die lokalen Datenbankordner.

Mit dieser Anordnung kann die "Datenspiegelung im Betrieb" völlig automatisiert - z.B. über "Geplante Tasks" - im Hintergrund ablaufen, ohne daß man (außer dem Hinweisfenster über den eingeleiteten Backupmodus und dem erscheinenden Task-Symbol in der Taskleiste) von der Spiegelung per TMAdmin in der Arbeit behindert wird - diese am besten abwechselnd von mehreren Client-Rechnern aus eingeleitet und zeitlich gestaffelt. Nur die Pause am Ende des scripts habe ich nicht gleich auskommentiert, damit man anfangs nachsehen kann, daß alles korrekt abgelaufen ist (Sicherungsfenster muß nach Aktivierung durch beliebige Taste geschlossen werden, das ermöglicht aber ein Nachsehen...). Wer dem Prinzip vertraut, läßt diese Pause am Ende weg...

Grüsse, Wahnfried
Benutzeravatar
wahnfried
Beiträge: 3180
Registriert: Freitag 13. Januar 2006, 23:46
19
Wohnort: Braunschweig

Re: Datenspiegelung im VOLL-BETRIEB der Praxis

Beitrag von wahnfried »

wahnfried hat geschrieben:Mit dieser Anordnung kann die "Datenspiegelung im Betrieb" völlig automatisiert - z.B. über "Geplante Tasks" - im Hintergrund ablaufen, ohne daß man (außer dem Hinweisfenster über den eingeleiteten Backupmodus und dem erscheinenden Task-Symbol in der Taskleiste) von der Spiegelung per TMAdmin in der Arbeit behindert wird - diese am besten abwechselnd von mehreren Client-Rechnern aus eingeleitet und zeitlich gestaffelt.
Hierzu zwei wichtige Erkenntnisse:

1)
Es sollten ALLE Taskkill-Befehle auskommentiert werden, sonst wird die Arbeit mit dem lokalen TurboMed dauerhaft elend langsam. Ich vermute, daß dies an dem Suchen nach Werbung über "wkflsr32.exe" und "wkflbu32.exe" liegt.
2)
An manchen Rechnern bleibt das DOS-Fenster für den Ablauf der Datenspiegelung nicht im Hintergrund. Dann kann man einen re. Mausklick auf die Desktop-Verknüpfung der Datenspiegelungs-Batch machen, "Eigenschaften" auswählen und dort im Reiter "Layout" die automatische Positionierung ausschalten, unter "Fensterposition" zweimal Null ("0") eingeben und die Höhe in "Fenstergrösse" bis auf 3-5 Zeilen (voreingestellt: 25) reduzieren. Dann stört es wenigstens beim Aufpoppen nicht und ist nach dem nächsten Klick in TurboMed wieder im Hintergrund.

Geplante Tasks:
...findet sich in der Systemsteuerung, man muß aber unter "Dienste" in der "Verwaltung" nachsehen, ob der Dienst "Taskplaner" aktiv ist (oft muß die Startart auf "Automatisch" gestellt werden und der Dienst erstmal gestartet werden...). Mit Klick auf "Geplanten Task hinzufügen" wird man per Assistent durch die Einrichtung geführt. Als "Programm" wird die Desktop-Verknüpfung der Spiegelungs-Batch eingetragen. Jeder Task muß dann im nächsten Fenster eine eigene Bezeichnung bekommen, ich stelle deswegen die Ausführ-Uhrzeitangabe dem vorgeschlagenen Namen (das ist der der Desktopverknüpfung...) voran. In diesem Fenster muß "tägliche Ausführung" und die Ausführ-Zeit eingetragen werden, in dem weiteren Fenster kann dann unter "werktags" und "(wirklich) täglich" unterschieden werden (im End-Ergebnis heißt das dann bei "werktags"-Angabe: "wöchentlich, am Mo, Di, Mi, Do, Fr"). Dann noch Passworteingabe für den angemeldeten Benutzer, danach wird der geplante Task fertiggestellt.

Läuft hier mit diesen Einstellungen auf XP-Client problemlos...

Grüsse, Wahnfried
Antworten

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot], Bing [Bot], bofh, Christoph Ameling, Google [Bot], Semrush [Bot] und 7 Gäste