Вчера я обновил свою Fedora с 19 до 20. И теперь я не могу запустить PostgreSQL из-за старого формата базы данных. Шаги:

1.

# systemctl start postgresql

Job for postgresql.service failed. See 'systemctl status postgresql.service' and 'journalctl -xn' for details.

2.

# journalctl -xn

postgresql-check-db-dir[30869]: An old version of the database format was found.                                                                                                                             
postgresql-check-db-dir[30869]: Use "postgresql-setup upgrade" to upgrade to version 9.3.                                                                                                                    
postgresql-check-db-dir[30869]: See /usr/share/doc/postgresql/README.rpm-dist for more information.                                                                                                          
postgresql.service: control process exited, code=exited status=1                                                                                                                                 
systemd[1]: Failed to start PostgreSQL database server.   

3.

#postgresql-setup upgrade                                

Please install the postgresql-upgrade RPM.

4.

#yum install postgresql-upgrade

Загружены модули: auto-update-debuginfo, langpacks, refresh-packagekit                                                                                  
pgdg93   |   3.6 kB  00:00:00     
rpmfusion-free-updates   |   3.3 kB  00:00:00     
rpmfusion-free-updates-debuginfo   |   2.7 kB  00:00:00     
rpmfusion-nonfree-updates   |   3.3 kB  00:00:00     
rpmfusion-nonfree-updates-debuginfo   |   2.7 kB  00:00:00     
updates/20/x86_64/metalink   |   28 kB  00:00:00     
updates-debuginfo/20/x86_64/metalink   |   24 kB  00:00:00     
pgdg93/20/x86_64/primary_db   |   77 kB  00:00:00     
rpmfusion-nonfree-updates/20/x86_64/primary_db  

Package postgresql-upgrade not found.

Что я делаю неправильно? Репо слишком стар?

1 ответ1

0

Я проверил свое локальное зеркало Fedora, и RPM postgresql-upgrade обязательно присутствует в репозиториях Fedora 20 и 21.

/srv/www/mirrors/fedora/releases/20/Everything/x86_64/os/Packages/p/postgresql-upgrade-9.3.1-2.fc20.x86_64.rpm
/srv/www/mirrors/fedora/releases/21/Everything/x86_64/os/Packages/p/postgresql-upgrade-9.3.5-4.fc21.x86_64.rpm

Так что я подозреваю, что вы попали на плохой или несинхронизированный зеркальный сайт. Вы можете запустить yum clean all и попробовать еще раз, чтобы увидеть, есть ли у вас другой зеркальный сайт.

Это также может быть вызвано тем, что у вас установлен репозиторий pgdg93 . Поскольку в Fedora уже имеется PostgreSQL 9.3, похоже, что в этом нет особого смысла, и ее пакеты, вероятно, вызывают конфликт.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .