Liferay使用数据库中的更改部署备份

时间:2014-07-24 07:26:44

标签: deployment liferay liferay-6

当我在Liferay 6.1中修改或创建新表并在生产服务器中部署时。 Liferay自动备份每个表。

当表的记录超过10k时,此备份需要很长时间。一个世纪的时候有100k。虽然此表尚未修改。

我可以做些什么来优化部署到服务器?

非常感谢,

2 个答案:

答案 0 :(得分:4)

目前我认为只有两种选择:

  1. (简单方法)设置" build.auto.upgrade = false"在/WEB-INF/src/service.properties中,以避免任何自动更新,并手动执行数据库更改(如果有)。

  2. (艰难的方式)重新映射Liferays ServiceBuilder,使其仅对已更改的表执行更新。这将需要EXT开发,因为它是一个非常核心的变化,对于每个下一个Liferay版本,您都需要仔细检查并升级。

答案 1 :(得分:0)

Liferay会自动进行备份吗?去哪儿?这对我来说是新的!

此外,您正在描述“禁止”操作:您不修改数据库中的任何表。期。这就是API的用途。如果你这样做,请尽快(如果你很幸运)或以后做好准备(根据墨菲的说法,当你忘记你手动更换的时候。然后你会因为操纵数据库造成的失败而责怪Liferay)。

您是否实施了自己的备份例程,并在每次重启服务器时运行?这是我能想象到的唯一一件事 - 在这种情况下,您需要修改备份策略。或者您使用的数据库 - 可能是事务日志备份比将表内容复制到同一数据库更有意义...