错误修复更新

介绍

为了从最新的改进,安全修复,错误纠正和性能提升中受益,您可能需要不时更新Odoo安装。

本指南仅适用于在您自己的托管基础设施上使用Odoo的情况。如果您使用的是Odoo云解决方案之一,系统会自动为您执行更新。

围绕软件更新的术语经常令人困惑,因此以下是一些初步定义:

更新(Odoo 安装)

指获取当前 Odoo 版最新版本源代码的过程。例如,将您的 Odoo 企业版 13.0 更新到最新版本。这不会直接导致对Odoo数据库内容的任何更改,并且可以通过重新安装源代码的先前版本来撤消。

升级(Odoo数据库)

指一个复杂的数据处理操作,其中数据库的结构和内容被永久地改变,以使其与Odoo的新版本兼容。此操作是不可逆的,通常通过Odoo的“数据库升级服务<https://upgrade.odoo.com>”_完成,当您决定切换到较新版本的Odoo时。从历史上看,此过程也称为“迁移”,因为它涉及在数据库内部移动数据,即使数据库在升级后可能最终位于同一物理位置也是如此。

本页描述了将Odoo安装*更新*到最新版本所需的典型步骤。如果您想了解有关升级数据库的更多信息,请访问“Odoo升级页面<https://upgrade.odoo.com>”_。

简而言之

更新 Odoo 只需在当前安装的基础上重新安装最新版本的 Odoo 版本即可完成。这将保留您的数据而不会进行任何更改,只要您不卸载PostgreSQL(Odoo附带的数据库引擎)。

从逻辑上讲,更新的主要参考资料是我们的 安装指南,其中解释了常见的安装方法。

最初部署Odoo的人也最恰当地完成了更新,因为这个过程非常相似。

注解

我们始终建议下载一个完整的新的最新的Odoo版本,而不是手动应用补丁,例如安全公告附带的安全补丁。这些修补程序主要用于高度自定义的安装,或者适用于希望在测试完整更新时临时应用最小更改的技术人员。

步骤1:下载更新的Odoo版本

中央下载页面 https://www.odoo.com/page/download。如果您看到Odoo企业版下载的“购买”链接,请确保您使用与您的Odoo企业版订阅链接的相同登录名登录到 Odoo.com。

或者,您可以使用Odoo企业版购买确认电子邮件中包含的唯一下载链接。

注解

如果您通过 Github 安装,则无需下载更新版本(见下文)

步骤 2:备份数据库

更新过程非常安全,不应更改您的数据。但是,最好在对安装执行任何更改之前进行完整数据库备份,并将其存储在安全的位置,即另一台计算机上。

如果尚未禁用数据库管理器屏幕(请参阅 这里 为什么应该这样做),那么可以使用它(数据库选择屏幕底部的链接)来下载数据库的备份。如果禁用了它,请使用与常规备份相同的过程。

步骤 3:安装更新的版本

选择与当前安装匹配的方法:

打包安装程序

如果您使用我们网站上下载的安装包(推荐方法)安装了Odoo,则更新非常简单。您所要做的就是下载与您的系统相对应的安装包(请参阅步骤#1)并将其安装在服务器上。它们每天更新,包括最新的安全修复程序。通常,您只需双击该软件包即可将其安装在当前安装的顶部。安装软件包后,请确保重新启动Odoo服务或重新启动服务器,然后您就完成了所有设置。

源代码安装(Tarball)

如果您最初使用“tarball”版本(源代码存档)安装Odoo,则必须将安装目录替换为较新版本。首先从 Odoo.com 下载最新的压缩包。它们每天更新,并包括最新的安全修补程序(请参阅步骤#1)下载包后,将其解压缩到服务器上的临时位置。

您将得到一个标有源代码版本的文件夹,例如 “odoo-13.0+e.20190719”,其中包含一个文件夹 “odoo.egg-info “和名为 “odoo”(适用于 Odoo 10 及更高版本)或 “openerp”(适用于旧版本)的实际源代码文件夹。您可以忽略 odoo.egg-info 文件夹。找到部署当前安装的文件夹,并将其替换为您刚刚解压的压缩包中较新的 “odoo” 或 “openerp” 文件夹。

确保与文件夹布局匹配,例如,源代码中包含的新“addons”文件夹应与之前的路径完全相同。接下来,请注意您可能已在旧文件夹中手动复制或修改的任何特定配置文件,并将它们复制到新文件夹中。最后,重新启动Odoo服务或重新启动计算机,您就完成了所有设置。

源代码安装(Github)

如果您最初安装Odoo时带有官方存储库的完整Github克隆,则更新过程要求您通过git提取最新的源代码。切换到每个存储库(主 Odoo 存储库和企业存储库)的目录,然后运行以下命令:

git fetch
git rebase --autostash

如果您在本地编辑了 Odoo 源代码,则最后一个命令可能会遇到源代码冲突。错误消息将为您提供有冲突的文件列表,您需要通过编辑它们并决定保留代码的哪一部分来手动解决冲突。

或者,如果您希望简单地放弃冲突的更改并恢复正式版本,则可以使用以下命令:

git reset --hard

最后,重新启动Odoo服务或重新启动计算机,您应该完成。

Docker

有关具体的更新说明,请参阅我们的“Docker 映像文档<https://hub.docker.com/_/odoo/>”。