postgreSQL8.4.4のmakecheck失敗

このQ&Aのポイント
  • postgreSQL8.4.4のmakecheckが失敗する理由が分かりません。インストール中の確認作業であるmakecheckが失敗する理由が分かりません。
  • postgreSQL8.4.4のmakecheckが失敗する理由が分かりません。インストール中の確認作業であるmakecheckが失敗します。
  • postgreSQL8.4.4のmakecheckが失敗する理由が分からない。インストール中の確認作業であるmakecheckが失敗します。
回答を見る
  • ベストアンサー

postgreSQL8.4.4のmakecheck失敗

postgreSQL8.4.4のmakecheck失敗 皆様 初めて質問いたします。 どうか宜しくお願いします。 要約としてはインストール中の確認作業であるmakecheckが失敗する理由が分かりません。 私の開発環境は以下になります。 ■カーネル:2.6.18 ■ディストリビューション:Debian(etch) ■postgre8.1.8(debian提供のバイナリからインストール) 上記の環境に以下の手順でインストール作業を行いました。 (1)本家からDLしたpostgre8.4.4のtgzデータをユーザー:postgresで解凍 (2)ユーザーpostgresで./configure (3)ユーザーpostgresでコンパイル(make all) (4)ユーザーpostgresで確認(make check) そうすると以下のエラーメッセージが出力されます。 test stats ... FAILED test tablespace ... ok ============== shutting down postmaster ============== server stopped ======================== 1 of 120 tests failed. ======================== The differences that caused some tests to fail can be viewed in the file "/var/home/postgre/postgresql-8.4.4/src/test/regress/regression.diffs". A copy of the test summary that you see above is saved in the file "/var/home/postgre/postgresql-8.4.4/src/test/regress/regression.out". ------------------------------------------------------------- ここではtest stat(統計情報取得)が失敗しているようです。 ログには以下のようにも記載されています。 SELECT wait_for_stats(); WARNING: pgstat wait timeout CONTEXT: SQL statement "SELECT (st.idx_scan >= pr.idx_scan + 1) FROM pg_stat_user_tables AS st, pg_class AS cl, prevstats AS pr WHERE st.relname='tenk2' AND cl.relname='tenk2'" PL/pgSQL function "wait_for_stats" line 9 at SQL statement このようにpg_statがtimeoutしているため、make checkが失敗しているのだと感じました。 そこで、 Q1. タイムアウトする原因と対策方法 上記をご教授していただけないでしょうか? 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • YkazubonY
  • ベストアンサー率30% (26/86)
回答No.1

インストールして一度起動しないと,PostgresのDBが作成されないので、エラーになっているだけでは?

mon-monchack
質問者

補足

>インストールして一度起動しないと,PostgresのDBが作成されないので、エラーになっているだけでは? 回答ありがとうございます。 ただ、上記ではないのでご了承ください。 ■補足事項 postgreのソースから、stats_collecterプロセスが起動できていないことが原因です。 stats_collecterの初期化時にstatsとpostgreで1バイトずつ通信している部分があります。 そこでpostgreより返答がないのでタイムアウトしていることが原因です。 しかし、なぜタイムアウトするかがわからないのです。 iptablesやマウントオプションなど色々試していますがまだわかっていません 知恵を貸していただけるととてもうれしく思います。

関連するQ&A

  • PHPとPostgreSQLがつながらない

    PHPとPostgreSQLの初心者です。PHPとPostgreSQLを 使ってプログラムを作ろうと思ってます。 開発はPC上で、PostgreとPHPサーバはLinuxマシンに あります。まず最初にPostgreのインストールですが、 Fedora Core5 に着いていたPotsgreSQL8.1.3を入れ ました。設定としては、 postgresql.confでは listen_address='localhost,192.168.1.3' としました。192.168.1.3はLinuxマシンのローカル アドレスです。 pg_hba.confではconnectionのところで host all all 192.168.1.3 255.255.255.0 tyust としました。その後 host all all 0.0.0.0 255.255.255.0 tyust とかいろいろ試してみました。 一方PHPの方はほとんど何も設定をしていません。と いうか設定方法がよくわかりません。 以上の環境で、簡単なPHPプログラムをPostgreにつなげないで実行したところ問題なく動きました。 20行くらいのPHPを書いてみましたが、特に問題はあ りませんでした。 PostgreSQLの方は、PCからSSHで入って、接続テスト 用のDBを作り、テーブルも3つ作って、データを数件 Insertしました。 いよいよPHPからDBにつなぐことになったのですが、 プログラム上では以下のように書きました。 <?php    print "こんにちは"; $conn = pg_connect ('host=192.168.1.3 port=5432 dbname=phptest user=postgres');    print "こんばんは"; if (!$conn) { print "PostgreSQLへの接続に失敗です"; exit(); } else ・ ・ して実行したところ、「こんにちは」は表示されま したが、「こんばんは」以下はは表示しませんで した。$conn の先には進んでいないようです。 当然ここに書いた以外にも設定を変えてみましたが、 つながりませんでした。よろしくお願いします。

    • 締切済み
    • PHP
  • postgreSQLのinitdb

    postgreSQL7.2.3のインストールを行いました。 % tar vxfz postgresql-7.2.3.tar.gz % cd postgresql-7.2.3 % ./configure --enable-locale --enable-multibyte=EUC_JP |& tee Configure.out % make | & tee Make.out % su # tcsh % make install | &tee Make_install.out % chown -R postgres:postgres /usr/local/pgsql ここまでは何も問題なく終わったのですが、 次に initdb を実行したところ以下エラーが出ます。 % su postgres % /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data ld.so.1: /usr/local/pgsql/bin/pg_encoding: 重大なエラー: libgcc_s.so.1: open に 失敗しました: ファイルもディレクトリもありません。 initdb: pg_encoding failed Perhaps you did not configure PostgreSQL for multibyte support or the program was not successfully installed. ↑ここまで 「マルチバイトサポートしていません」 「インストールに失敗しています」というような内容なのですが、 何がダメだったのでしょうか? ちなみにOSは Solaris9/02です。

  • PHPとPostgreSQLとの連携

    今、WindowsXPでPHPとPostgreSQLを連携 させたいのですがなかなか上手く行きません。 どなたか、分かる方がいれば宜しくお願いします。 環境 OS→Windows HomeEdition Apache→Apache HTTP Serber2.0.59 PHP→PHP4.4.4 PostgreSQL→PostgreSQL8.1.4 です。 PostgreSQLの中にtest_dbというデータベースをつくり setuzoku.phpから接続できるかどうかのif文を作り確認 していますが、何度やっても接続失敗と出ます。 <?php $con = pg_connect("user='postgres' dbname='test_db' password='grjtf'"); if (! $con) { print "接続失敗"; } else { print "接続成功"; } ?>

  • PostgreSQLを初期化できない

    RedHat8.0にPostgreSQL7.2.3をインストールしましたが、下記コマンドで初期化できません。 $ initdb -bash: initdb: command not found なお、PostgreSQL7.2.1をインストールしていましたが、その際は初期化できていました。ただし、テキストエディタでpostgresql.conf、pg_hba.confを編集するため、開こうとしましたが、開けませんでした(ファイルが表示されない)。ファイルを検索すると、/usr/local/pgsql/data/にあることになっていましたが…。アクセス権限の問題と考え、postgresでログインしようとしましたが、パスワードの初期設定が分かりませんでした。今回、Windows上で作成したPHPプログラムの動作を検証するため、テスト環境を構築しようとしています。インストールしたApache1.3.27、PHP4.2.2に合わせて、バージョンを更新しました。アンインストールし、インストール前に $ make check で All 79 tests passed. であることも確認しています。

  • PHPでPostgreSQLに接続できない。

    PHPでPostgreSQLに接続しようとすると、 エラーメッセージが出て接続できません。 コマンドプロンプトからの接続は可能です。 環境:PHP5、Apache2.2、PostgreSQL8.24 全て同じサーバにインストールしています。 ********************************************* コマンドプロンプト ********************************************* >psql -U postgres -h localhost test >Password for user postgres::testpass >Type: \copyright for distribution terms >\h for help with SQL commands >\? for help with psql commands >\g or terminate with semicolon to execute query >\q to quit > > >test=# ********************************************* ↑問題なく接続できます。 ********************************************* ********************************************* PHP ********************************************* <?php $con = pg_connect("host=localhost dbname=test user=postgres password=testpass"); ?> ********************************************* エラーメッセージ 12行目は「pg_connect」のところになります。 Fatal error: Call to undefined function pg_connect() in C:\Program Files\Apache…test.php on line 12 ********************************************* php.ini ファイルはextension=php_pgsql.dll をアンコメントしてあります。 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 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

  • PostgreSQL バッチでバックアップ

    PostgreSQL 8.4に関する質問です。 サーバ:Linux、PostgreSQL 8.4 クライアント:Windows 7 Windowsマシンから、バッチファイルでサーバ上のPostgresのバックアップを取りたいのですが、 以下のコマンドをバッチファイルに記述して実行すると、 「パスワード:」というプロンプトが出て処理が止まってしまいます。 pg_dump.exe -h [DBサーバのIP] -U [ユーザ名] -F custom -b -v -f "C:\test.backup" "test" パスワードを入れればバックアップはできるのですが、 パスワードの入力まで完全自動化するにはどうすればいいでしょうか。 Linux上のPostgresはSSL接続のみ許可するようになっています。 Windowsのタスクで毎日バックアップする運用を想定しています。

  • Postgresqlが接続できない

    環境はxp、apache2、php5、Postgresql8.2です。 ただ今PHPとPostgresqlの勉強をしています。 PHP5で作成したプログラムでPostgresqlへアクセスするのですが,全く応答がありません。 ブラウザで表示後、ソースを見ると Parse error: syntax error, unexpected T_VARIABLE in C:\Program Files\Apache Group\Apache2\htdocs\sample\aa.php on line 10 というエラーが表示されます。 aa.phpの10行目は $d_base = pg_connect("user=postgres password=0000 dbname=test"); と、データベースに接続しています。 どこがおかしいのか ご教示して頂けたら幸いです。

  • PHP4からPostgreSQL7.3に接続したいのですが・・・

    次のページのサンプルを入れてみるところ(IDとPASSは変更していますが。) http://www.hizlab.net/app/view/install/test_php_pgsql.php?prev=install.html%23test 次のようなエラーが発生します。 ターミナルからのtemplate1へのログインではうまく接続できるのですが、この場合、どこがおかしいのでしょうか? --------------------- error ------------------------------ Welcome PHP + PostgreSQL World!! Warning: pg_connect() unable to connect to PostgreSQL server: FATAL: IDENT authentication failed for user "postgres" in /home/user/public_html/test.php on line 24 I can not connect to DataBase(template1) ----------------------------------------------------------- よろしくお願いします。

  • PostgreSQL8.3インストールについて

    皆様、はじめまして。blackcat37と申します。 これから、PostgreSQLにチャレンジしようと思いインストールを行っています。 インストール・アンインストールを何度かやっているうちに インストールができなくなりました。 インストールファイルのコピーまでは進むのですが、ユーザーアカウントの 設定になると、 >内部のアカウント検索に失敗しました。 >アカウント名とセキュリティIDの間のマッピングは実行されませんでした。 とエラーメッセージが出て、インストールが失敗してしまいます。 再インストールする際には、 net user postgres /delete でアカウント削除を行い、Documento And Settingにある postgresユーザフォルダも削除しています。 PostgreSQLのインストール先フォルダが無い事も確認しています。 あと何か確認しなければならない事があるのでしょうか? 環境はWinXP+SP2です。 説明不足の点がありましたら、ご指摘ください。 よろしくお願いいたします。