• ベストアンサー

PostgreSQLの入れ替え

PostgreSQLのホントの初心者です。 今使っているLinuxサーバ(RedHat9)になぜかたま たまPostgreSQL(7.3.2)が入っていて、使っていた のですが、この際8.1.4に上げようと思いたちました。 これは、バージョンアップというより「入れ直し」と 考え、まず7.3.2を削除しようと考えて、 # rpm -e postgresql と入れてみたのですが、関連付けられているためか 削除できません。 それで、7.3.2にDBを全部削除してしまえばよいと 考え、5つのDB(template0,template1,test,test2, db1)を削除する方法を調べたのですが、「psql」で はDBは消せないようですし、どれかのDBに入って SQLを動かすと、「自分(のDB)」はけセません。 それと、最初からあった、template0,template1も 削除できませんでした。 DBを消すのが目的ではなく、7.3.2を削除したいので すが、どのようにやったらよいか教えて下さい。 よろしくお願いします。

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

  • ベストアンサー
回答No.1

># rpm -e postgresql >と入れてみたのですが、関連付けられているためか >削除できません。 関連付けされているパッケージもいっしょに削除すればいいでしょう。

hanadate
質問者

お礼

>関連付けされているパッケージもいっしょに削除す >ればいいでしょう。 まさにそのとおりで、Postgresql-serverとやらを一 緒に削除したら、全体がうまく削除できました。 その後、いよいよ8.1.4をインストールしようと思 って、訳もわからずSRAのftpサイトからダウンロー ドしてやってみたのですが、makeから先がどうやっ ても進みません。どうやら私はソースからインスト ールしようとしていたことがわかりました。私には ちょっと荷が重いと考え、気を取り直して PostgresqlORGからrpmをダウンロードして再度チャ レンジしたのですが、今度は「perl」が対応できず 途中から断念。どうやら私のサーバ環境は、「C」 とか「perl」とかの開発環境がまったく入っていない ようです。いろいろいじくっているうちにLinux環境 がごちゃごちゃになってしまい、全体を再度インス トール(本に着いていたCD-ROM3枚を読み込ませる だけ)することになりました。結局今までと同じ 7.3.2をしばらく使うことにしました。 Linuxの中をごちゃごちゃ触ったことが、結構勉強に なりました土日をつぶしてしまいましたが、こうや ってレベルアップして行くものなんでしょうか。 いろいろ教えて頂いてありがとうございました。

その他の回答 (2)

回答No.3

関連付けを考えて順番に削除する必要がありますので、#2の方法ではダメです。

  • cynthia4
  • ベストアンサー率51% (186/358)
回答No.2

# rpm -aq | grep postgresql | xargs rpm -e で、 これで、ひっかかったものを先に消す。

関連するQ&A

  • postgreSQLでのユーザ作成

    宜しくお願い致します。 postgresql7.2 でlinuxアカウントに登録されていない ユーザを作成しました。(createuser hoge) その後 "psql -U hoge DB名" でアクセスすると psql: FATAL 1: user "hoge" does not exist になってしまいます。 linuxアカウントに登録されていないユーザで DBにアクセスする事は可能なのでしょうか? それとも必ずlinuxアカウントに登録されている ユーザ名で作成する必要があるのでしょうか? ご教授下さい。m(__)m

  • RPM版PostgreSQLのアンインストールについて

    みなさん、こんばんは。 さっそくですが、質問があります。 現在サーバーを構築しているのですが、その中にpostgreSQLを入れて動かしたいのです。 使用OSはRedhat Linux 7.1JのFTP版で、始めからインストールされているpostgreSQLのRPM版をアンインストールして、最新版をインストールし直したいと 思っています。 (最新版はRPMのではなく、postgresql-7.1.3.tar.gzをインストールするつもりです。) そこで、rpm -eコマンドでpostgreSQLをアンインストールしたいのですが、 postgresql-7.0.3-8とpostgresql-devel-7.0.3-8を削除しようとしても下記の様なエラーが出て、アンインストールできません。 rpm -e postgresql-devel-7.0.3-8 とすると・・・・  エラー:これらのパッケージを削除すると依存性を破壊します。  postgresql-devel >= 7.0は perl-DBD-Pg-0.95-1に必要とされています。 rpm -e postgresql-7.0.3-8 とすると・・・  エラー:これらのパッケージを削除すると依存性を破壊します。  postgresql = 7.0.3はpostgresql-devel-7.0.3-8に必要とされています。  postgresqlはphp-pgsql-4.0.4pl1-9に必要とされています。  libpq.so はperl-DBD-Pg-0.95-1に必要とされています。  libpq.so はphp-pgsql-4.0.4pl1-9に必要とされています。 いったいどうやったら、削除できるのでしょうか? どなたか教えてください。

  • FedoraCore3でPostgreSQLを

    yum update postgresql でバージョンアップしたと単に service postgresql start が[失敗]というメッセージしか出さなくなりました 以前は[ok]とでていたので失敗しているようです 実際 su postgres をして psql -l としてもサーバにつながらないと言うメッセージが出てきます どうしたら解決できるでしょうか?

  • postgresのパスワードの変更?

    PHP+PostgreSQLで開発しているのですが、PostgreSQLのパスワードがわかりません。 まず、PostgreSQLのユーザー(postgres)を作成して、パスワードも設定しinitdbでデータベースを初期化しDBを作っていました。 そしてそのDBを作っていた人が突然夜逃げしてしまったのでpostgresのパスワードがわからなくなってしまい、そこでroot権限でパスワードをpasswdコマンドで変更したのですがDBにpostgresでアクセスできません。 [admin admin]$ su - postgres Password: [postgres pgsql]$ psql -d test Password:←ここでは新たに変更したパスワードを入力しました psql: FATAL 1: Password authentication failed for user "postgres" となります。initdb後にpostgresのパスワードを変更した場合は前に設定されていたパスワードを入力しなければならないのでしょうか? またパスワードを調べる手立てはないでしょうか? List of databases Name | Owner | Encoding -----------+----------+----------- test | postgres | SQL_ASCII template0 | postgres | SQL_ASCII template1 | postgres | SQL_ASCII DBの中はこのようになっています。 宜しくお願いします。

  • fedora14 postgresqlをいれる

    いつもお世話になっております。 fedora14デスクトップ版にpostgresqlをインストールしようとrpmパッケージを探しているのですが、見つかりません。 下記サイトでrpmを配布しているようなのですが、メールアドレスの入力を求められるため 利用できませんでした。 http://www.openscg.org/se/postgresql/packages.jsp システム->設定->ソフトウェアの追加と削除を起動し postgresql と入力するとかなりたくさんの項目がでてきてどれをいれたらよいのかわかりませんでした。 下位サイトから postgresql-9.1.2-1-linux.runをダウンロードしてsh ./postgresql-9.1.2-1-linux.run とターミナルでにゅうりょくしたのですが、 「./postgresql-9.1.2-1-linux.run: ./postgresql-9.1.2-1-linux.run: バイナリファイルを実行できません」 となり実行できませんでした。 http://www.enterprisedb.com/products-services-training/pgdownload postgresqlをfedoraに簡単にインストールするインストーラーのようなものはないのでしょ うか。 どなたかご教授よろしくお願いいたします。

  • PostgreSQLのリンクテーブル?について

    はじめまして、yossy136kgと申します。 下記の件、ご教授をお願いします。 ・TEST1というDBがあったとして、psqlより\dでテーブル一覧を参照すると、「No relations found.」と表示されます。 ・MS AccessからODBC経由でTEST1のDBのリンクテーブルを作成する際、別のDB(TEST2)のテーブルが参照できます。 例)TEST2.HOGE1、TEST2.HOGE2・・・ 【質問】 TEST1のDBからTEST2のDBのテーブルをリンクさせるようなことは可能なのでしょうか? ちなみにPostgreSQL8.2.3、CentOSです。

  • Linux上のpostgreSQLデータをWindowsでみたい

    サーバA(OS:Linux Fedora Core 4、データベース:PostgreSQL 8.0 で運用しているシステムがあり、毎日そのデータを下記のdumpコマンドで PostgreSQLの全データをバックアップしています pg_dumpall > postgres.out  サーバAを触るのは怖いので、別のマシンB(Windows-Xp)に postgresql-8.2.6をインストールしました。 このバージョンは、postgresqlとともに、pgAdmin3というGUIの管理 ツールもついていると聞きここに、サーバAからバックアップされている postgres.outをrestoreして pgAdmin3でデータベース・テーブル等をみようとしています (postgres.out)を使ってのリストアの仕方は (1)(postgres.out)をpostgresqlの/binディレクトリの中に入れる (2)psqlのメニューから次のコマンドを打つ psql -d manmg -f postgres.out   (3)pgAdmin3を立ち上げるとサーバAのDBは追加されているようなのですが  テーブルは(0)となって見えません マシンBの方のPostgreSQLについてはインストールしたままでサーバA のpostgresqlの設定等は何もしていません 何か設定する所はあるのでしょうか 上記手順でlinuxから吐出されたバックアップデータをWindowマシンに リストアする方法は間違っていないのでしょうか よろしくお願いします。

  • PostgreSQLのpsqlでユーザの扱いがうまくいかない

    こんにちは ただいま、PostgreSQL7.2.3をインストール(Redhat7.3)し、これからpsqlを使い、SQL操作をしようとしていたところですが、psqlと入力すると "psql: FATAL 1: Database "postgres" does not exist in the system catalog."となります。 PostgreSQLのユーザは "postgres","nobody"です。 現在、postgresからpostmaster -Sで起動しています. 下記に端末で行った作業内容をコピーしてみました。 今回インストールの参考にした書籍は"PHPxPostgreSQLで作る最強Webシステム」石井達夫著です。この本の手順に従ったつもりですが、うまくいきません。 [postgres@www root]$ postmaster -S [postgres@www root]$ psql -l List of databases Name | Owner | Encoding -----------+----------+---------- php | postgres | EUC_JP template0 | postgres | EUC_JP template1 | postgres | EUC_JP (3 rows) [postgres@www root]$ select dtname from php bash: syntax error near unexpected token `from' [postgres@www root]$ select dtname from template0 bash: syntax error near unexpected token `from' [postgres@www root]$ [postgres@www root]$ psql select dtname from php psql: warning: extra option from ignored psql: warning: extra option php ignored psql: FATAL 1: Database "select" does not exist in the system catalog. [postgres@www root]$ psql -l List of databases Name | Owner | Encoding -----------+----------+---------- php | postgres | EUC_JP template0 | postgres | EUC_JP template1 | postgres | EUC_JP (3 rows) [postgres@www root]$ psql psql: FATAL 1: Database "postgres" does not exist in the system catalog.

  • Windows上でのPostgreSQLで「createdb」コマンドが使えません。

    こんにちは。 現在、Windows2000にPostgreSQLをインストールし、 PHPと連携させたプログラムを組もうと思っています。 インストールまではうまくいったのですが、コマンドラインから実行するときに 「psql」コマンドは通るのに、「createdb」コマンドが使えず、DBを作ることができずに困っています。 PostgreSQLのヴァージョンは6.5で、 http://www.interwiz.koganei.tokyo.jp/software/PostgreSQL/ ここからダウンロードしたものを使っています。 いろいろネット上を検索してみたのですが、Windows+PosgreSQLという組み合わせ自体非常に少なく、ヒントを探しだせませんでした。 どなたか、ご教授いただければ幸いです。よろしくお願いいたします。

  • 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のタスクで毎日バックアップする運用を想定しています。