Доброго времени суток,
Мы сейчас рассматриваем вопрос миграции проекта с MySQL на PostgreSQL. И для этого хотелось бы выяснить пару вопросов, которые явно не отвечены в документации.
1) Неблокирующий backup. У нас есть база гигов на 50, в ней постоянно идут изменения. И её нужно ежедневно бэкапить. Вопрос: блокирует ли pg_dump базу/таблицу во время работы или нет? и сколько времени будет бэкап такой базы проходить. есть ли альтернативные методы бэкапа без блокировки доступа к таблицам
2) Обратная совместимость. Предположим у нас есть сервер версии X.0, и вышел сервер версии Y.0. Можно ли просто обновить сервер и все заработает? Или нужно делать бэкап и рестор?
1) Да, блокирует таблицу. У
1) Да, блокирует таблицу. У меня у самого стоит данная проблема, когда из-за большого количества данных, мне приходится исключать из бакапа слишком большие таблицу, которые "убивают" работу моего приложения. Короче - тормоза имеются.
Адекватная альтернатива - это типа поточной репликации (разные схемы master-slave).
2) Вы указали смену мажорной версии. Конечно, они не подойдут друг к другу. Но и минорные версии тоже не подойдут.
После того, как вы установите себе PG, желания обновлять его у вас будет немного.
Как вариант можно будет реплицировать с мастера, потом мастер отключать и включать слейв с обновленной версии (если уж она вам так необходима).
Скажите, а вы читать умеете?
Скажите, а вы читать умеете? Видимо нет. И поиском тоже пользоваться, видимо, не умеете. А ведь все ответы есть в документации на этом сайте.
1. Бакапы бывают нескольких видов, читайте:
http://postgresql.ru.net/manual/backup.html
2. Про обновление тоже всё написано:
http://postgresql.ru.net/manual/upgrading.html