我有postgresql 9.5和postgresql-plperl-9.5和bucardo版本5.4.1
安装bucardo后
Current connection settings:
1. Host: localhost
2. Port: 5432
3. User: postgres
4. Database: postgres
5. PID directory: /var/run/bucardo
我试图启动bucardo
但错误是" DBD :: Pg :: st执行失败:ERROR:relation" bucardo.bucardo_config"不存在 第1行:SELECT设置FROM bucardo.bucardo_config WHERE LOWER(name)... ^ at / usr / bin / bucardo line 545。 " 这里的问题在哪里?
答案 0 :(得分:0)
您需要创建bucardo用户和数据库。 关注
https://www.installvirtual.com/how-to-install-bucardo-for-postgres-replication/
答案 1 :(得分:0)
请使用postgresql bucardo数据库中的以下查询创建表格
CREATE TABLE bucardo.bucardo_config (
name TEXT NOT NULL, -- short unique name, maps to %config inside Bucardo
setting TEXT NOT NULL,
about TEXT NULL, -- long description
type TEXT NULL, -- sync or goat
item TEXT NULL, -- which specific sync or goat
cdate TIMESTAMPTZ NOT NULL DEFAULT now()
);
COMMENT ON TABLE bucardo.bucardo_config IS $$Contains configuration variables for a specific Bucardo instance$$;
CREATE UNIQUE INDEX bucardo_config_unique ON bucardo.bucardo_config(LOWER(name)) WHERE item IS NULL;
CREATE UNIQUE INDEX bucardo_config_unique_name ON bucardo.bucardo_config(name,item,type) WHERE item IS NOT NULL;
ALTER TABLE bucardo.bucardo_config ADD CONSTRAINT valid_config_type CHECK (type IN ('sync','goat'));
ALTER TABLE bucardo.bucardo_config ADD CONSTRAINT valid_config_isolation_level
CHECK (name <> 'isolation_level' OR (setting IN ('serializable','repeatable read')));
答案 2 :(得分:0)
如果您为postgresql设置了自定义连接配置,则需要在每个“ bucardo”命令后指定它。 只有这样,“ bucardo”才会在正确的位置查找其表。 例如:
bucardo -U bucardo -d bucardo -p 5000 -P my_password install
此外,请确保事先执行以下操作:
CREATE USER bucardo SUPERUSER PASSWORD 'my_password';
CREATE DATABASE bucardo;
GRANT ALL ON DATABASE bucardo TO bucardo;