Назад | Перейти на главную страницу

Отправка ZFS / ZFS для репликации базы данных

Допустим, у меня есть довольно важная база данных, но такая, в которой меня не волнует каждая транзакция. Прежде чем вы начнете придирчиво - это база данных, в которой хранятся данные статуса zabbix, поэтому мне, честно говоря, все равно, потеряю ли я минуту или две транзакции, когда управляющие коды ascii попадают в TTY.

Если я хочу реплицировать эту базу данных на другой хост, я мог бы выполнить традиционную репликацию базы данных, которая по сути воспроизводит журнал транзакций по каналу. С этим есть некоторые проблемы (например, у меня будет много писателей в основную базу данных, а у подчиненного устройства будет только один поток, вставляющий данные реплики), но я также получил бы «подчиненное устройство только для чтения» для запуска моих отчетов по . И кто-нибудь, придя в город, поймет, что происходит. Оба ценны, полностью согласен.

Но - что, если я хочу быть умным? Будучи сообразительным, я запустил свою базу данных postgresql в файловой системе ZFS с включенным сжатием. И теперь, когда моя база данных работает в ZFS, могу ли я просто отправить этот поток zfssend в другой ящик и применить его или просто заархивировать поток отправки zfs для последующего воспроизведения, если я решу, что он мне нужен?

Можно ли будет использовать полученную базу данных после «очистки после некорректного завершения работы и воспроизведения журналов транзакций» на целевой машине? Скажем, теперь я также хочу, чтобы подчиненное устройство только для чтения запускало мои отчеты, могу ли я воспроизвести ZFS, сделать снимок и запустить базу данных для этого снимка?

ZFS отправка / получение работает на основе Снимки ZFS. Если вы не стабилизируете базу данных, снимок, который вы сделаете для предоставления исходного источника для отправки ZFS, будет устойчивый к сбоям.

Вы можете использовать Отправка / получение ZFS чтобы отправить этот снимок на другой хост или в файловую систему ZFS. Я не понимаю, что ты имеешь в виду под архивирование поток отправки. Отправка / получение ZFS является атомарной, поэтому я не уверен, что у вас есть возможность сохранять поток.

Если вам нужна копия файловой системы ZFS, доступная только для чтения, вы можете сделать снимок ZFS и клон этот снимок с новой точкой монтирования файловой системы.

На этом этапе вы можете выполнять операции с новым монтированием по мере необходимости.