У меня есть две базы данных для журналирования, которые я хочу проверить на синхронизацию.
Решение, которое было одобрено, состоит в том, чтобы периодически (скажем, ежечасно) отправлять выборки обоим, генерировать хэш набора результатов иСравните их.Если они совпадают, то отлично, в противном случае генерируются некоторые сигналы тревоги.
В настоящее время я делаю это с помощью (сценария bash):
log_table="SELECT column1, column2, column3 FROM log_table where to_char(timestamp, '$ts_format') = '$tx_moment'";
PSQL="psql -t -q -h $_gp_host -U $_gp_user -d log_schema -c ";
echo "`${PSQL} $tx_fix${log_table} | sort | cksum`";
Я хотел бы сделать cksum / hash на postgresбоковая сторона.Потому что в настоящее время он загружает весь набор результатов (который может иметь даже 25 МБ или более) и генерирует контрольную сумму на стороне сервера.
Google не помог.
Есть предложения?
Спасибо.