Мы запускаем устаревшее приложение, для которого требуется PostgreSQL 8.2 на Debian Etch. Поскольку Debian прекратил поддержку etch, мы серьезно рассматриваем возможность обновления до Debian Lenny. Однако мы застряли, если сможем продолжать запускать PostgreSQL 8.2 на Debian Lenny.
Следовательно, возможно ли продолжить запуск PostgreSQL 8.2 (без обновления и, возможно, закрепления) в системе Debian Lenny, которая будет обновлена с Debian Etch? Если да, то как?
Можно запустить (практически) любую версию Postgres на (почти) любой unix-подобной системе - просто возьмите исходный код с веб-сайта Postgres и скомпилируйте его (подробные инструкции здесь).
Если вы амбициозны, вы также можете следовать инструкциям по упаковке для своей операционной системы и установить базу данных с более ранней версией в виде пакета, но вы можете пропустить этот шаг так же легко, с небольшими негативными последствиями.
Вероятно, лучше всего скомпилировать / установить старую версию по уникальному пути (/opt/postgres82
, /usr/local/postgres82
и т. д.), чтобы ваша ОС не наступила на него.
Обратите внимание, что при выборе этого маршрута вам необходимо знать, когда меняются базовые библиотеки (что может привести к поломке вашего сервера базы данных, если Postgres связан с библиотекой, что потребует повторной компиляции), и вам, вероятно, потребуется установить свой собственный сценарий запуска в способ, соответствующий вашей операционной системе.
Если вы просто обновите etch до lenny, установленный пакет postgresql-8.2 не исчезнет. Вот как это устроено. (Чтобы быть уверенным, проверьте вывод aptitude при обновлении. Вы можете настроить пакет на удержание, если необходимо, но в этом нет необходимости.)