繁体   English   中英

实时数据库备份 + 使用 C# 或 Python 自动同步

[英]Real time database backup + auto synchronize using C# or Python

我的计算机“A”中有一个 SQL 服务器数据库(主),而计算机“B”中有一个空的 Sql 服务器数据库(备份)。 CRUD 操作在计算机“A”的数据库中执行,并且一些新数据通过PLC 接收到计算机“A”的数据库中。 我想在计算机“B”中保留数据库的实时备份。计算机“A和B”连接在局域网中。 目前,每 5 分钟后,我将截断计算机“B”数据库中的表,并再次将所有行从计算机“A”插入到计算机“B”,但如果行超过,这不是一个好方法,它将成为缓慢的解决方案。 我的目标是

1)我只针对编码方法(C# 或 python)。

2) 不应使用“dbforgestudio”、“同步工具”等工具,它应检测计算机“A”中的数据库(CRUD)是否发生任何更改,并自动将其复制到计算机“B”中。

3)它不应该是特定于数据库的,就像这个解决方案只适用于 SQL 服务器而不适用于 Oracle 数据库。

我可以使用任何建议或片段或链接来进一步进行?

对于实际使用,您需要使用商业解决方案,例如 AWS,我假设 Azure 具有具有自动故障转移的主从数据库服务器配置,以及连续备份和快照备份解决方案。

对于学习体验,尝试在 db 查询之上添加您自己的层可能会起作用,您可以透明地执行两次所有操作。

伪代码

MyDatabaseLayerClass :: run_query ( string, parameter_array )
{
    // db1 and db2 are database connection objects held by this class
    db1. run_query ( string, parameter_array )
    db2. run_query ( string, parameter_array )
    return overall result and set last error states for db1 and db2
}

你想添加 try-catch,决定如何处理错误,等等

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM