Loading

Odoo版本升级

起因是有客户希望从当前使用的版本16.3升级到17.0,后来从官方了解到目前官方支持数据库的在线升级,并且提供了免费的工具。因此,我们使用此工具成功帮客户从16.3版本升级到了17.0。

本文即为升级过程的概述。

先决条件

想要把低版本的数据库升级到高版本需要满足两个条件:

  1. 官方正版授权数据库
  2. 没有第三方模块或第三方模块已经升级到目标版本

如果是在同一台服务器上进行升级,那么需要先卸载旧版本的odoo再安装新版本,或是新旧两个版本共存。

数据备份

在满足了上述两个条件以后我们就可以开始进行升级了,不过在此之前,还是建议用户进行数据备份。

如果是官网saas版本或odoo.sh版本,可以使用官网提供的备份工具。如果是自建服务器,那么可以根据自己的情况自行备份。

升级步骤

下面我们开始正式升级。

截止目前,官方脚本对于17.0仅支持测试模式,不支持生产模式。

1. 首先我们运行官方提供的升级脚本

 python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>

2. 升级完成之后,脚本会提示:

...
Neutralization finished 
Upgrading: 8 minutes, 48.84 seconds
Dumping db_1220337 into /home/odoo/data/upgraded.dump ...
2024-01-19 02:18:16 INFO: Dumping: 4.41 seconds
Upgrade request successfully processed!
A detailed report of the upgrade is available in the Discuss app in the Administrators channel.
Processing time: 9 minutes, 2.94 seconds
2024-01-19 02:18:32 INFO: Downloading the database dump and its filestore from odoo@as1.upgrade.odoo.com:/data.
     37,776,504 100%   15.64MB/s    0:00:02 (xfr#1831, to-chk=0/2271)  
2024-01-19 02:18:38 INFO: Restore the dump file 'upgraded.dump' as the database 'xxxx_test_17.0_2024_01_19_14_08'
2024-01-19 02:19:06 INFO: Merging the new filestore with the old one in /opt/odoo/.local/share/Odoo/filestore/xxxxx_test_17.0_2024_01_19_14_08 ...

3. 脚本运行完成之后,在数据库中会多出一个xxx_test_xxx开头的数据库。

4. 我们进入这个test的数据库,去检查数据是否完整。

5. 升级结束

 

17.0的测试转生产

由于目前17.0仅支持测试模式,那么我们如果想要正式使用该如何处理呢?

去掉test标志

首先我们要去掉test标志,在设置-视图中找到_upgrade_开头的视图,关掉他们

执行一次全模块升级

因为版本差异, 我们在切换到目标数据库之后最好执行一次全模块升级,以覆盖掉可能出现的静态资源错误。

 
posted @ 2024-01-19 22:26  青岛欧姆网络科技  阅读(225)  评论(0编辑  收藏  举报