2017-07-28 50 views
0

我試圖在OpenSuse服務器上更新Postgres-server的版本。有幾個問題,我現在想恢復使用之前安裝的postgres-server版本(9.03)。 我已經刪除9.4版,我已經試過啓動PostgreSQL服務器,但我得到的錯誤:您的數據庫文件是由PostgreSQL 9.0創建的 - 無法找到該版本的可執行文件

Your database files were created by PostgreSQL version 9.0. 
Could not find executables for this version. 
Please install the PostgreSQL server package for version 9.0. 

當我運行:

rpm -qa | grep postgresql 

它表明:

postgresql-docs-9.0.3-1.6.1.noarch 
postgresql-server-9.0.3-1.6.1.x86_64 
postgresql-contrib-9.0.3-1.6.1.x86_64 
postgresql-9.0.3-1.6.1.x86_64 
postgresql-devel-9.0.3-1.6.1.x86_64 

所以它看起來已經安裝了版本9.03。

我不知道現在該怎麼做才能讓服務器回到原來的狀態,我有點恐慌。任何人都可以提出建議

編輯**

這裏之後,從Ronaldhino一些有用的信息一些更多的信息。

我在/ user/bin/pg_ctl中發現了我的pg_ctl文件,並且/ data看起來是以前的數據目錄(我推導出它包含pg_hbs.conf和postgresql.conf)。 結果我已經運行此命令爲用戶的Postgres:

/usr/bin/pg_ctl start -D /data/ -l /data/pg_log/new_log.txt 

我沒有得到一個消息,最初的說法:

server starting 

看來,服務器實際運行。但是,psql二進制文件現在似乎丟失了,所以我不能psql進入數據庫服務。

謝謝

回答

1

我似乎系統無法識別你的postgresql 9.0位置在哪裏。

你應該在哪裏找到postgresql 9.0的二進制文件並直接啓動服務器。

  1. 查找運行命令哪來的Pos​​tgreSQL 9.0位置

    which postgres

    例如: 在/ usr /本地/ pgsql的/ bin中/

  2. 啓動服務器

    sudo /usr/local/pgsql/bin/pg_ctl start -D <<your DB dir>> -l /var/log/postgresl.log

祝你好運!

+0

首先感謝您的建議。它讓我超過了一個障礙(我想!)現在我找到了另一個!我編輯了我的問題。歡呼聲 – nmh

+0

對於你編輯的問題:嘗試tailf /data/pg_log/new_log.txt知道錯誤是什麼 – Ronaldinho

相關問題