在更新期间更新/迁移远程客户端独立数据库架构的选项

小熊

设想:

我目前正在开发一个基于桌面的应用程序,涉及多个独立的生产站点,每个站点都有自己的服务器、数据库和本地客户端。

该软件会持续进行自动更新,作为这些更新的一部分,每个生产站点的数据库 (postgresql) 都需要进行模式迁移(同时在迁移过程中保持现有数据的持久性/转换)。

手动访问客户端机器(例如 SSH/远程桌面)来运行脚本/执行更新不是一种选择。客户端需要在检查、下载和安装更新方面自给自足。

问题:

我已经环顾了几个月,除了编写 SQL 脚本并使用单独的服务逐个运行它或使用更新的应用程序运行它之外,还没有合适的选择。

问题:

您会建议哪些工具适合这种情况以简化迁移过程?

明道加斯·伯纳塔维丘斯

在进行数据库迁移时运行 SQL 脚本是一种普遍接受的做法。像 ActiveRecord(在 ruby​​ 世界中)这样的工具提供了一个中间层(DSL),但本质上是 SQL 的包装器。

这样做是有充分理由的 - 迁移是在 SQL 服务器上进行的操作,并且在 SQL 服务器中操作表的唯一严格定义的接口是特定 RDBMS 服务器正在使用的 PL/SQL 语言语言风格。

这意味着,如果 SQL 脚本是可接受的迁移选项(在团队知道它的意义上是可接受的,没有人反对,等等),您应该使用它们。

为了使任务更容易(红宝石的方式),你可以看看:http : //migrate4j.sourceforge.net/

他们将该工具描述为The initial intent of migrate4j was to make a Java version of Ruby's db:migrate.但这不是基本要求。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使桌面客户端可以使用更新的EF数据库迁移而无需更新

来自分类Dev

使用Java客户端更新远程数据库的安全方法

来自分类Dev

设置客户端到服务器(和数据库)的连接并更新客户端 html

来自分类Dev

仅当新条目进入Django中的数据库时才更新客户端页面

来自分类Dev

Android-使用GCM更新客户端的sqlite数据库

来自分类Dev

在feathersjs应用程序之外编辑数据库时如何更新客户端

来自分类Dev

如何在更新期间迁移SharedPreferences?

来自分类Dev

更新数据库架构

来自分类Dev

在客户端中更新recyclerview项目ui,以指示服务器上的Firebase数据库已更新

来自分类Dev

数据库客户端抽象

来自分类Dev

如何使用高级安装程序更新应用程序的版本而不删除客户端数据库

来自分类Dev

列出没有客户端软件的远程SQL数据库

来自分类Dev

kylin 使用 hive 客户端模式无法访问远程数据库

来自分类Dev

更新MySQL数据库表架构

来自分类Dev

更新 mongodb atlas 数据库架构

来自分类Dev

在EF迁移期间更改数据库选项

来自分类Dev

更新数据库调用特定的迁移

来自分类Dev

TIB数据库更改客户端库

来自分类Dev

远程插入和更新数据库?

来自分类Dev

客户端数据库的工厂和指令

来自分类Dev

数据库客户端设计以支持不同的后端

来自分类Dev

以蛋糕模式抽象数据库客户端

来自分类Dev

Laravel API连接到客户端数据库

来自分类Dev

客户端可访问的noSql数据库?

来自分类Dev

发送数据库查询结果给客户端

来自分类Dev

使用PHP访问客户端的SQL数据库

来自分类Dev

MFC Dekstop客户端的数据库选择

来自分类Dev

Jersey REST客户端未创建数据库

来自分类Dev

客户端可移植数据库,用什么?

Related 相关文章

热门标签

归档