5

当我运行命令./odoo-bin --config=/etc/odoo.conf并尝试从浏览器访问时,我在 aws ec2 中配置了 odoo 并从 rds 连接 Postgresql,我收到以下错误:

ERROR odoo_db odoo.modules.loading: Database odoo_db not initialized, you can force it with `-i base` 

File "/opt/odoo/odoo/odoo/modules/registry.py", line 176, in __getitem__
    return self.models[model_name]
KeyError: 'ir.http' - - -

而且我也收到了这个错误:

STATEMENT:  SELECT latest_version FROM ir_module_module WHERE name='base'
ERROR odoo_db odoo.sql_db: bad query: SELECT latest_version FROM ir_module_module WHERE name='base'
ERROR: relation "ir_module_module" does not exist
4

3 回答 3

7

在命令行运行:

 ./odoo-bin --addons-path=addons --database=odoo  --db_user=odoo --db_password=odoo  --db_host=localhost --db_port=5432 -i INIT

明确给出数据库名称、用户和密码,“-i INIT”选项初始化 odoo 数据库

于 2019-06-10T18:10:13.753 回答
0

第一眼的问题是虽然数据库已经在 Postgres 中创建,但它没有所需的 odoo 相关设置记录,即基本设置。您可以通过直接访问数据库并查看表的数量或浏览一些表来进行验证。

有时会发生您创建数据库 [特别是提供与您之前创建并稍后删除的数据库名称相似的数据库名称 [它从 PG 中删除,但在会话或数据库位置路径中仍有跟踪],它将无法正确初始化。

解决方案:

  1. 创建具有不同名称的示例数据库,前 4 个字符完全不同并检查
  2. 从 odoo.conf 文件中初始化 DB 添加 db_name = < Your DB Name > {for Experiment purpose put fully different name} 并重新启动 odoo 服务并检查

希望它会有所帮助。Njoy 故障排除!

于 2018-11-23T23:20:03.823 回答
0

首先执行@FaisalAnsari 在这里所说的(我在下面引用的内容):

*

转到 RDS 并在 PostgreSQL 中创建一个数据库并配置 server.conf文件,如下所示。


;This is the password that allows database operations:

;admin_passwd = admin

db_host = rds_endpoint (after creating database you will get
rds_endpoint)

db_port = False

db_user = "user name which is created by you to the database"

db_password = "password which is created"

;addons_path =
/home/deadpool/workspace/odoo_13_community/custom_addons,
/home/deadpool/workspace/odoo_13_community/custom_addons 

然后转到命令行并执行以下操作。

  1. 停止您的 odoo 实例
~$ service odoo stop
  1. 为用户odoo启用命令行
~$ chsh -s /bin/bash odoo
  1. 以 odoo 用户身份从命令行执行 odoo
~$ runuser -l odoo -c "odoo -i base -d YourRDSDatabase --db_host YourAmazonRDSHost.Address.rds.amazonaws.com -r YourRDSDatabaseUserName -w YourRDSDatabasePassword --stop-after-init"
  1. 初始化完成后,启动odoo服务
~$ service odoo start

故障排除 :

如果 odoo 无法正确启动,请确保您的 RDS 实例中的数据库用户至少对您正在使用的数据库具有权限。

~$ psql --host=YourAmazonRDSHost.Address.rds.amazonaws.com --port=5432 --username=YourRDSDatabaseUserName --password --dbname=YourRDSDatabase

当你在 postgresql 中时,输入以下内容:

~$ grant all privileges on database YourRDSDatabase to YourRDSDatabaseUserName;

~$ \q

并从第 3 步开始重试。

希望有帮助!!

于 2021-06-11T11:31:21.270 回答