Usando Python y SQLite3, o cualquier base de datos similar, ¿cómo puedo sincronizar múltiples archivos Db que son locales en diferentes máquinas?

En primer lugar, sería increíblemente difícil para usted mantener una relación Maestro-Maestro entre todas sus máquinas / dispositivos.

En realidad, lo que está intentando hacer es construir un CVS (Sistema de versiones simultáneas) con su base de datos. Y personalmente creo que no es nada fácil de hacer. Aunque los investigadores han escrito tesis al respecto. Puede leer el informe aquí: Página en it.kth.se.

De todos modos, aunque SQLite no se creó originalmente para admitir la relación Maestro-Esclavo, eso no significa que no pueda hacerlo. Puede asignar una de sus máquinas como nodo maestro y usar sqlite3-rdiff para comparar sus nodos esclavos con el maestro y crear deltas que son archivos demasiado sqlite.

También puede automatizar este mismo proceso: descargue el archivo sqlite del nodo maestro, elimine la base de datos esclava (local) y luego instale la base de datos descargada localmente.