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

Установка PostgreSQL 8.2 с PostgreSQL 8.4 на Ubuntu 10.10

На сервере Ubuntu уже установлена ​​версия 8.4 PostgreSQL Server. Мне нужно установить 8.2 на тот же сервер.

Я бы предпочел установить из .DEB вместо компиляции из исходников.

Вы можете использовать надежный репозиторий Ubuntu:

  • sudo echo "deb http://ru.archive.ubuntu.com/ubuntu/ выносливая вселенная "> /etc/apt/sources.list.d/hardy.list
  • sudo apt-get update
  • cd && apt-get исходный код postgresql-8.2
  • sudo apt-get build-dep postgresql-8.2
  • sudo apt-get установить libreadline-dev
  • cd postgresql-8.2-8.2.7 /
  • vi debian / control и измените "libreadline5-dev" на "libreadline-dev"
  • dpkg-buildpackage
  • cd && sudo dpkg -i postgresql-8.2_8.2.7-1_i386.deb postgresql-client-8.2_8.2.7-1_i386.deb postgresql-contrib-8.2_8.2.7-1_i386.deb
  • rm /etc/apt/sources.list.d/hardy.list

Конец:

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 10.10
Release:    10.10
Codename:   maverick
# pg_lsclusters 
Version Cluster   Port Status Owner    Data directory                     Log file
8.2     main      5433 online postgres /var/lib/postgresql/8.2/main       /var/log/postgresql/postgresql-8.2-main.log
8.4     main      5432 online postgres /var/lib/postgresql/8.4/main       /var/log/postgresql/postgresql-8.4-main.log

Пакеты Debian postgresql предназначены для установки рядом с pg_*cluster команды для управления ими, что делает установку из .deb отличной идеей. К сожалению, похоже, что hardy (8.04) был последней версией Ubuntu для упаковки postgresql-8.2 (во вселенной), я уверен, что библиотеки, с которыми он был скомпилирован, отличаются от тех, что у вас есть сейчас, и, вероятно, будут конфликтовать с тем, что у вас есть, если вы попытаетесь просто установить пакет.

Самый простой способ пересобрать пакет - добавить deb-src строки к вашим источникам для Харди:

deb-src http://us.archive.ubuntu.com/ubuntu/ hardy universe
deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ hardy-security universe

Затем, после apt-get update, вы должны использовать apt-get build-dep postgresql-8.2 чтобы установить все зависимости сборки. Если что-то вообще невозможно найти в Maverick, вам придется решить, изменил ли пакет свое имя и установил его вручную, или же собрать этот пакет из исходного кода. Как только у вас будут установлены все зависимости сборки, apt-get source --compile postgresql-8.2 будет извлекать исходный код и собирать пакеты debian для всего этого, используя версии библиотек, найденные в Maverick.