如何解决Odoo 15创建/恢复数据库时出现的"template0clear"错误?
解决Odoo 15恢复数据库时
template0clear不存在的错误 问题根源
这个错误并非PostgreSQL原生问题,大概率是Odoo的数据库恢复逻辑被自定义修改,或是第三方模块、自定义脚本错误地将模板数据库指定为template0clear——PostgreSQL默认的模板库只有template0和template1,不存在template0clear这个默认模板。
修复步骤
- 检查Odoo配置文件(通常命名为
odoo.conf),查找是否存在db_template配置项。如果该配置的值是template0clear,直接修改为template0即可。 - 排查自定义模块或恢复相关脚本,看是否有硬编码
template0clear作为模板数据库的代码段,找到后将其替换为template0。 - 若通过Odoo界面恢复失败,尝试用命令行手动指定模板库执行恢复:
odoo-restore -d 目标数据库名称 -f 备份文件路径 --db-template=template0 - 最后确认PostgreSQL的
template0数据库状态正常:- 切换到postgres系统用户:
sudo su - postgres - 进入PostgreSQL命令行:
psql - 查看所有数据库列表:
\l,确认template0存在且标记为template类型 - 若
template0异常,可执行以下SQL重新创建:CREATE DATABASE template0 WITH TEMPLATE = template1 ENCODING = 'UTF8' LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8' CONNECTION LIMIT = -1 IS_TEMPLATE = true;
- 切换到postgres系统用户:
内容的提问来源于stack exchange,提问作者Papis Sahine
相关产品推荐
相关产品推荐

