• 締切済み

起動時に

TUrboLinuxWS7に turbopkgを用いてアップデートしたところ postgresqlを起動しようとすると /etc/init.d/postgres startで起動しようとしたところ Checking postgresql installation: An old version of the database format was found. You need to upgrade the data format before using PostgreSQL. See (Your System's documentation directory)/postgresql-7.3/README.rpm-dist for more information. とでて起動できなくなってしまいました。 postgreSQLのバージョンは 7.1.3-8です。

みんなの回答

  • kuny2005
  • ベストアンサー率67% (21/31)
回答No.3

/var/pgsql/data/PG_VERSION には何と書いてありますか? 7.3と書いてあれば7.3のフォーマットになってますのでデータは問題なくて、ほかに原因があると思われます。

parapa
質問者

補足

>7.3と書いてあれば7.3のフォーマットになってますのでデ >ータは問題なくて、ほかに原因があると思われます。 最初にも書きましたが rpm で表示されるバージョンは 7.1.3-8です。

  • kuny2005
  • ベストアンサー率67% (21/31)
回答No.2

アップデータしたPostgreSQLは元のPostgreSQLのデータベースとの互換性がないので、今まで使っていたデータベースを使用することができません。 データベースファイルを削除し、データを初期化すれば使えるようになります。 もし、データを失うのが困るのであれば、元のPostgreSQLを再度入れなおしてpg_dump等でバックアップを取り、新しいPostgreSQLのデータベースにリストアすればいいかと思います。 (このままではpg_dumpも行えませんので。)

parapa
質問者

補足

説明不足でした。 DBには何も無かったので データディレクトリを (TurboLinux7WSでは/var/pgsql/dataなので) cd /var/pgsql mv data data2 として退避をとりあえず行い initdbを行いました。 で初期化しましが ダメでした。

noname#223623
noname#223623
回答No.1

関連するQ&A

  • データフォーマットのアップグレード

    postgreSQL-7.2.1ですが起動しようとすると下記のメッセージがでます。 An old version of the data base format was found. You need to upgrade the data format before using PostgreSQL. 具体的にデータフォーマットをアップグレードするにはどうしたらいいでしょうか?OSはRedHatLinux7.3です。

  • RedHat ES4でPostgreSQLを自動起動したい

    RedHatにPostgreSQL8.2.3をインストールしました。 インストール自体は他のディストリビューションでも何回も行っているので 特に問題なく終了しました。しかし自動起動がうまくいきません。 /etc/init.d/postgresqlを以下の内容で作成しました。 ----- ここから ----- #!/bin/sh # chkconfig: - 87 13 # description: PostgreSQL8.2 # processname: postmaster # pidfile: /var/run/postgresql.pid pidfile=/var/run/postgresql.pid . /etc/init.d/functions case "$1" in start) su - postgres -c "pg_ctl start" touch $pidfile ;; stop) su - postgres -c "pg_ctl stop -m fast" rm -f $pidfile ;; restart) su - postgres -c "pg_ctl stop -m fast" su - postgres -c "pg_ctl start" ;; *) echo "Usage: /etc/rc.d/init.d/postgresql {start|stop}" esac exit 0 ----- ここまで ----- このスクリプト自体はrootにて # /etc/init.d/postgresql start できちんとDBが起動する事は確認しています。これを以下のようにして 自動起動の設定を行いました。 # chmod 755 /etc/init.d/postgresql # chkconfig --add postgresql # chkconfig --level 35 postgresql on # chkconfig --level 06 postgresql off 問題はここからで、この状態で再起動を行うと、起動時にpostgresqlを 実行するところでとまってしまうのです。pidファイルなどゴミが無い事は 確認済みなのですが・・・その状態でもネットワークログインは出来るので プロセスを確認すると以下のようなプロセスが残った状態でとまっていました。 root 2765 0.0 0.0 5920 760 ? S 00:47 0:00 initlog -q -c /etc/rc5.d/S87postgresql start root 2766 0.0 0.0 6916 1336 ? S 00:47 0:00 /bin/sh /etc/rc5.d/S87postgresql start root 2769 0.0 0.0 6124 1276 ? S 00:47 0:00 su - postgres -c pg_ctl start この状態で # kill 2765 2766 2769 とすると起動がまた再開されるので、PostgreSQLの起動時にとまっている事は 明らかです。 いったい何が原因なのか、さっぱりわかりません。 どなたかヒントだけでもいただけたら幸いです。 よろしくお願いします。

  • 再起動する事無くプロセスを消したい

    PostgreSQL7.4.5 + FC4という環境でDBサーバを運用しています。 夜間にデータの切換などを行う際に、drop databaseをしたりするのですが、 その際に ERROR:source database "DB名" is being accessed by other users のエラーが出て処理が中断してしまいます。 これはpostgresプロセスがidle状態で残っている為なんですが、 postgresを再起動する事無く、drop databaseが出来る状態にしたいです。 (ちなみに、この処理を行っているユーザはpostgresユーザではありません) どなたか、良い策があればご教授して頂けますでしょうか。 以上です。宜しくお願い致します。

  • PostgreSQLが起動しない・・・

    はじめまして、tanu_2です。 玄箱HGをDebian化し、いろいろと遊んでいます。 PostgreSQLをapt-getでインストールし、Webアプリを動かしていたのですが、昨日より突然、PostgreSQLが動かなくなってしまいました。 原因が分からず、サーバを再起動し、 # /etc/init.d/postgresql start や $ pg_ctl start などを試してみたのですが、動きません。 念のため、初期化(initdb)も試みたのですが、これも失敗してしまいます。 /var/log/postgresql/postgres/logを覗いてみると、 FATAL: could not write lock file "/var/lib/postgres/data/postmaster.pid": No space となっており、上記ディレクトリにpostmaster.pid書き込みできないよ、と言われているっぽかったので、パーミッションを変更したりして みましたが、postgresql startにしろ、pg_ctl startにしろ、それぞれのコマンドで起動すると、強制的にパーミッションが「700」に変更されてしまうようで、結果は同じでした。 どなたか、解決策をご教示願えませんでしょうか? よろしくお願いします。m(_ _)m

  • make でエラー

    勉強中の身です。 環境 fedora 2 postgresqlをインストールして (postgresql-8.2.1) make コンパイルがうまくいきません [postgres@localhost postgresql-8.2.1]$ ./configure checking build system type... i686-pc-linux-gnuoldld checking host system type... i686-pc-linux-gnuoldld checking which template to use... linux checking whether to build with 64-bit integer date/time support... no checking whether NLS is wanted... no checking for default port number... 5432 checking for gcc... no checking for cc... no configure: error: no acceptable C compiler found in $PATH See `config.log' for more details. [postgres@localhost postgresql-8.2.1]$ make You need to run the 'configure' program first. See the file 'INSTALL' for installation instructions. make: *** [all] エラー 1 $ make とすると上記のようにエラーがでます。 ./configure -オプション が必要なのでしょうか? よろしくおねがいします。

  • postgresのサービスが起動しないです

    Windows Server2008に「postgresql-8.4.4」をインストールしたいと思っています。 一度、エラーなくインストールが完了したのですが、dataフォルダをDドライブに作成するはずが Cドライブに作ってしまった為、アンインストールを行いました。 作成先を直して、再インストールを行ったところ、途中で下記のエラーが表示され、 サービスの起動が出来なくなってしまいました。 A non_fatal error occured whilst loading database modules. Please check the installation log in C:\Users\Administrator\AppData\Local\Temp for details. アンインストール後に行ったこと ・net user /deleteを使用して、postgresユーザーの削除 ・Program Files(86x)のpostgresフォルダの削除 ・C:\ユーザー\Administrator\AppData内のpostgresフォルダの削除 ・dataフォルダの削除 インストールは、管理者として実行でインストールしています。 インストールする為に、まだ何かしないといけないことがあるのでしょうか? おわかりになる方、アドバイス頂けないでしょうか? 宜しくお願いします。

  • POSTGRES8.2を自動起動したい

    POSTGRES8.2をシェルで自動起動したく、下記のとおり挑戦しています。 cd /etc/init.d/ vi pgsql #!/bin/sh # # chkconfig: 35 86 15 # description: PostgreSQL auto start PGACCOUNT="user1" PG_CTL="/usr/local/pgsql/bin/pg_ctl" . /etc/rc.d/init.d/functions echo "PostgresSQL start:" su - $PGACCOUNT -c "$PG_CTL start -o \"-i\"" そして下記の順番で設定・確認 chmod 755 ./pgsql chkconfig --add pgsql chkconfig pgsql on chkconfig --list pgsql pgsql 0:オフ 1:オフ 2:オン 3:オン 4:オン 5:オン 6:オフ ここで、 su -l service pgsql とやるとPOSTGRESは起動します。 しかし、再起動してもPOSTGRESが起動してくれないのです。 問題解決の為にご協力をお願いします。

  • 起動時のメッセージを正常にしたい!

    Solaris10, PostgreSQL8.1.3 を使用しています。 PostgreSQL を一旦停止(stop)してから起動(start)をすると下記エラー(?)が表示されます。 (約半年ぶりの再起動です) Starting PostgreSQL Postmaster daemon. Sun Microsystems Inc. SunOS 5.10 Generic January 2005 waiting for postmaster to start... done postmaster started LOG: could not bind IPv6 socket: 要求されたアドレスを割り当てられません。 HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. LOG: database system was shut down at 2006-07-14 **:**:** JST LOG: checkpoint record is at 0/91AAE98 LOG: redo record is at 0/91AAE98; undo record is at 0/0; shutdown TRUE LOG: next transaction ID: 40351; next OID: 17368 LOG: next MultiXactId: 1; next MultiXactOffset: 0 LOG: database system is ready LOG: transaction ID wrap limit is 2147484146, limited by database "postgres" 5432 ポートは PostgreSQL が常時利用していますが、 他のソフト等が重複利用しているとは考えていません。 起動後は、psqlコマンド や JDBC接続も問題なく使用できていますが、 このエラー表示だけは何とかして表示されないようにしたいと思います。 解決案や確認すべき箇所等、思い当たる点がありましたら教えてください。 よろしくお願いします。

  • PostgreSQLのインストール

    OSはwindows2000です。  windowsからPostgreSQLをインストールしたく本を見ながら 作業をしてみました。  まず、CygwinをインストールしてUnixライクな環境にして、 make-3.79,gcc-2.95.2,cygipc-1.11-1-src, PostgreSQL-7.1.3をダウンロードして、 cygwin/usr/src/で解凍させて Cygwinを起動させて、 cd /usr/src/postgres-7.1.3 と入力して次に ./configure --enable-multibyte=EUC_JP と入力したら loading cache ./config.cache checking host system type... i686-pc-cygwin checking which template to use... win checking whether to build with locale support... no checking whether to build with recode support... no checking whether to build with multibyte character support... yes, default EUC_J P checking whether to build with Unicode conversion support... no checking for default port number... 5432 checking for default soft limit on number of connections... 32 checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes using CFLAGS=-O2 checking whether the C compiler (gcc -O2 ) works... no configure: error: installation or configuration problem: C compiler cannot creat e executables. と出てしまうのですが原因がわかりません。 何がいけないんでしょうか?  

  • 【SuSE】PostgreSQLの自動起動が出来ない

    見ていただいてありがとうございます! SuSE LinuxでpostgreSQLの自動起動が設定できず 困っております。 ヒントでもかまいませんので、 ご教授いただきたく思っております。 postgreSQLのインストールはソースから行いました。 ログイン後なら、以下のコマンドを実行することで 起動することは可能な状態です。 #su - postgres #/usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql/data> logfile 2>&1 & ■自動起動させるために行ったこと 1.自動起動スクリプトファイル "/usr/local/src/postgresql-8.3.3/cntrib/start-script/linux" をディレクトリ"/etc/init.d/"にコピーしました。 2.自動起動スクリプトファイルを 「postgresql」にリネームし、 全員に実行権限を付与しました。 3."/etc/init.d/rc*.d"に以下の名前で シンボリックリンクを作成しました。  ・rc0.d、rc1.d、rc2.dに「K02postgresql」  ・rc3.d、rc5.dに「S98postgresql」 現在、上記の操作をした状態となっておりますが、 rootでログインしてコマンド #pr -e を実行しても 「postmaster」の行があらわれません。 ちなみに、コマンド #chkconfig -list を実行すると postgresqlの行の 3 と 5 がONになっています。 現在Linuxのことを勉強中ですので、 質問に情報不足などあるかもしれません。 ご指摘いただければ、至急追加情報を提示いたします。 よろしくお願いいたします!