错误修复更新¶
介绍¶
为了获得最新的改进、安全修复、错误更正和性能提升,您可能需要不时地更新您的Odoo安装。
本指南仅适用于您在自己的托管基础设施上使用Odoo的情况。如果您使用Odoo云解决方案之一,则更新将自动为您执行。
软件更新的术语常常令人困惑,因此这里提供一些初步的定义:
- 更新(Odoo安装)
指的是获取当前Odoo版本的最新源代码修订版的过程。例如,将您的Odoo Enterprise 13.0更新到最新修订版。这不会直接导致您的Odoo数据库内容发生任何更改,并且可以通过重新安装先前的源代码修订版来撤消。
- 升级(Odoo数据库)
指的是一种复杂的数据处理操作,其中您的数据库的结构和内容被永久改变,以使其与Odoo的新版本兼容。此操作是不可逆转的,通常通过Odoo的
数据库升级服务<https://upgrade.odoo.com>
_来完成,当您决定切换到Odoo的新版本时。从历史上看,这个过程也被称为”迁移”,因为它涉及在数据库内部移动数据,即使在升级后,数据库可能最终位于相同的物理位置。
This page describes the typical steps needed to update an Odoo installation to the latest version. If you’d like more information about upgrading a database, please visit the Odoo Upgrade page instead.
简而言之¶
通过在当前安装的Odoo版本之上重新安装最新版本的Odoo Edition来完成Odoo的更新。只要不卸载PostgreSQL(Odoo附带的数据库引擎),就可以保留数据而不进行任何更改。
更新的主要参考是我们的 安装指南,该指南解释了常见的安装方法。
更新最好由最初部署Odoo的人员完成,因为该过程非常相似。
注解
我们始终建议下载完整的最新Odoo版本,而不是手动应用补丁,例如随安全公告提供的安全补丁。这些补丁主要提供给定制程度较高的安装,或者喜欢在测试完整更新时暂时应用最小更改的技术人员。
步骤1:下载更新的Odoo版本¶
中央下载页面为 https://www.odoo.com/page/download。如果您看到 Odoo Enterprise 下载的“购买”链接,请确保使用与您的 Odoo Enterprise 订阅相关联的相同登录名登录 Odoo.com。
或者,您可以使用包含在Odoo企业版购买确认电子邮件中的唯一下载链接。
注解
如果您是通过 Github 安装的,那么不需要下载更新版本(请参见下文)
步骤2:备份您的数据库¶
更新过程是相当安全的,不应该改变您的数据。但是,在执行任何更改之前,最好先进行完整的数据库备份,并将其存储在安全的地方,例如另一台计算机上。
如果您尚未禁用数据库管理器屏幕(请参阅 here why you should),您可以使用它(在数据库选择屏幕底部的链接)下载数据库的备份。如果您已禁用它,请使用与您通常备份相同的过程。
步骤 3:安装更新版本¶
选择与您当前安装相匹配的方法:
打包安装程序¶
如果您是通过从我们的网站下载安装包的方式安装Odoo(这是推荐的方法),那么更新非常简单。您只需要下载与您的系统对应的安装包(请参见步骤#1),并在服务器上安装即可。它们每天都会更新,并包含最新的安全修复程序。通常,您只需双击安装包即可在当前安装的基础上进行安装。安装完毕后,请确保重新启动Odoo服务或重新启动服务器,然后您就可以使用了。
源代码安装(Tarball)¶
如果您最初使用“tarball”版本(源代码存档)安装了Odoo,则必须使用更新版本替换安装目录。首先从Odoo.com下载最新的tarball。它们每天都会更新,并包含最新的安全修复程序(请参见步骤#1)。下载软件包后,请将其提取到服务器上的临时位置。
你将得到一个标有源代码版本的文件夹,例如”odoo-13.0+e.20190719”,其中包含一个名为”odoo.egg-info”的文件夹和一个名为”odoo”(适用于Odoo 10及更高版本)或”openerp”(适用于旧版本)的实际源代码文件夹。您可以忽略odoo.egg-info文件夹。找到您当前安装部署的文件夹,并用您刚刚提取的存档中的更新的”odoo”或”openerp”文件夹替换它。
确保匹配文件夹布局,例如源代码中包含的新的”addons”文件夹应该与之前完全相同的路径结束。接下来,注意任何您可能已经手动复制或修改的旧文件夹中的特定配置文件,并将它们复制到新文件夹中。最后,重新启动Odoo服务或重新启动计算机,您就可以开始了。
源代码安装(Github)¶
如果您最初是通过完整的Github克隆官方存储库来安装Odoo的,则更新过程需要您通过git拉取最新的源代码。进入每个存储库的目录(主要的Odoo存储库和企业存储库),并运行以下命令:
git fetch
git rebase --autostash
如果您曾在本地编辑过Odoo源代码,则最后一个命令可能会遇到源代码冲突。错误消息将给出冲突文件列表,您需要手动解决冲突,通过编辑它们并决定保留代码的哪个部分。
或者,如果您希望简单地放弃冲突的更改并恢复官方版本,您可以使用以下命令::
git reset --hard
最后,重新启动Odoo服务或重新启动机器,您就完成了。
Docker¶
请参考我们的 Docker image documentation 以获取具体的更新说明。