![]() |
Datenbank: MSSQL • Version: 2017 • Zugriff über: FireDAC
MSSQL Replikation
Hallöle...:P
Da ich Alleinunterhalter in der Firma bin, und nur auf meine eigenen Entscheidungen höre :lol:, wollte ich diesmal lieber noch andere Meinungen einholen...:zwinker: Gegeben: 1. 1 DB Server in der Firma 2. DB Server in den verschieden Niederlassungen Frage vorweg: Die einzelnen Transanktionsmöglichkeiten habe ich schon ausprobiert...funktionieren alle.:zwinker: Ich habe aber verschiedene Konstellationen die eigentlich ein Mischen erfordern. Geht auch...nur welche sind die besseren für die Konstellation? Welche Fallstricke erwarten mich? ...wie macht man es richtig.:gruebel: Konstellation 1: 1. Daten die "sofort" synchronisiert werden müssen. Bidirektional. - Mergereplikation (1 Minute Intervall) funktioniert Info: Jeder Datensatz wird in einer Sperrtabelle "gesperrt" bevor er geöffnet wird. In dieser einen Minute könnte der Andere auch den DS öffen und schreiben. Wie oft kommt das vor? :gruebel: vs. 1. Jede "Niederlassung" hat seinen Verleger, der Server hat seinen Verleger - Transaktionsreplikation noch nicht probiert Info: ![]() Zitat:
1. "statische" Daten unidirektional zum Abonnenten - Transaktionsreplikation funktioniert Option: ggf. Umstellung auf bidirektional Danke für Infos... :wink: |
AW: MSSQL Repikation
Funktionieren werden alle.
Frage ist nur ob alle Anwendungen mitspielen. Es ist immer problematisch wenn die Anwendung Autoinc-Felder nutzt. Das zweite Problem sind immer Cascatierte Löschoperationen. Da kann es leicht passieren das die Replikationen "die Krätsche machen". |
AW: MSSQL Repikation
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Zitat:
Code:
Die ID Felder sind AutoInc...:cry: Lassen wir auf uns zukommen. Da sind noch einige Leichen im Keller...:cry:
create table xxx(
ID int identity(1,1) not null, Was greift eher... die identity oder AutoInc? Bringt es was das auf NONE umzustellen? Zitat:
Kann ich mal ausprobieren. Danke |
AW: MSSQL Repikation
Kann man bei Identity eine Art Startwert vorgeben? Dann addiere doch eine sehr hohe Zahl oben drauf, und zwar auf jede zu mergende Tabelle einen anderen. Ich nehme mal an, das sind BigInt, also 64 Bit Integer? Dann auf eine Tabelle 1.000.000.000.000 draufaddieren, bei der nächsten 2.000.000.000.000 usw. Die Ids zählen dann nicht 1, 2, 3, ... usw sondern halt 1.000.000.000.001, 1.000.000.000.002, 1.000.000.000.003, ...usw. - und es gibt keine Konflikte beim Mergen.
Wenns sich um Filialen handelt, wäre auch die Filial-ID möglich, vorausgesetzt, das ist ne Zahl... |
AW: MSSQL Repikation
Zitat:
Zitat:
|
AW: MSSQL Repikation
Zitat:
Wir hatten zwei CRM-Systeme, welche laut Feature-Matrix Replikation bei MS SQL Unterstützten. Beide haben nach kurzer Zeit die Replikation nicht mehr unterstützt, da trotz dieser Möglichkeiten die ganzen Filialen doch irgendwann mal Replikations/Merge-Probleme zeigten. |
AW: MSSQL Repikation
Zitat:
Filiale 2 bekommt Nummernbereich 2.000.000.000.000 bis 2.999.... Theoretisch gibts keine Überschneidungen. Praktisch sind bei uns 2 Hersteller von CRMs an genau diesem Problem gescheitert... |
AW: MSSQL Repikation
Zitat:
|
AW: MSSQL Repikation
Zitat:
Das ist eigentlich immer das "kleinere Problem", da hierfür entweder die Anwendung eine Konflikt-Wizward anbieten muss/wird oder das über die DB-Tools der Hersteller läuft. Unsere Anwendung läuft auch bei einem Kunden mit zwei großen Standorten mit Merge-Replikation. Auch wenn unsere Anwendung nicht für Replikation ausgelegt ist, funktioniert es. Aber auch nur weil die Nummernbereiche getrennt sind und praktisch der o.g. Fall nicht vorkommen sollte. Und falls doch ist der en IT so fähig die Merge-Konflikte selbständig zu lösen. |
AW: MSSQL Repikation
Hallöle...:P
Zitat:
Klar kann trotzdem noch einiges schiefgehen. :wink: Sowas wie: Sperre kann nicht entfernt werden...weil Internet kaputt. :stupid: Dafür kann man die Sperre im Notfalle manuell entfernen. ...aber wenigstens keine überschriebenen Daten. :thumb: Danke an Alle... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:00 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz