Làm cách nào để gỡ cài đặt các phiên bản cụ thể của Postgres?


11

Trên Ubuntu 14.04 tôi đã thực hiện điều này để có được những bài đăng mới nhất:

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade

Sau đó, tôi đã cài đặt phiên bản 9.4:

sudo apt-get install postgresql-9.4

Tuy nhiên, dường như bây giờ tôi có ba phiên bản:

sudo service postgresql stop

 * Stopping PostgreSQL 9.3 database server  [ OK ]
 * Stopping PostgreSQL 9.4 database server  [ OK ]
 * Stopping PostgreSQL 9.5 database server  [ OK ]

Làm thế nào tôi chỉ có thể giữ 9,4 và gỡ cài đặt những cái khác? Cảm ơn

CẬP NHẬT:

Theo đề xuất trong các bình luận, tôi đã gỡ cài đặt 9.3 và 9.5.

Nhưng khi tôi làm điều này:

sudo service postgresql status
9.3/main (port 5432): down
9.4/main (port 5434): online
9.5/main (port 5433): down

Cho đến nay rất tốt, nhưng khi tôi chuyển sang postgres:

sudo su postgres

và làm một psql, tôi gặp lỗi:

psql: could not connect to server: No such file or directory
    Is the server running locally and accepting
    connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Làm thế nào bạn cài đặt 9.3 và 9.5?
Rinzwind

9.3 được cài đặt theo mặc định vào 14.04. 9.5 đã được cài đặt ngay khi tôi thêm PPI ở trên. Nó vừa cài đặt máy chủ mới nhất.
Houman

Postgres không phải là một phần của Ubuntu mặc định ;-) Nhưng sau đó tôi cho rằng sudo apt-get remove postgresql-9.3sẽ xóa 9.3 (sau khi tắt máy chủ 9.3)
Rinzwind

Cảm ơn tôi đã làm theo lời khuyên của bạn, xin vui lòng xem câu hỏi cập nhật.
Houman

Tôi tìm thấy nó. Giải pháp là thanh lọc tất cả mọi thứ như đã nói ở đây: Askubfox.com/a/334730/58150
Houman

Câu trả lời:


7

Các phiên bản khác nhau của PostgreSQL được đặt trong các gói postgresql-9. *.

  1. Vì vậy, bạn nên loại bỏ hai gói của bạn:

    sudo apt-get purge postgresql-9.3 postgresql-9.5
    
  2. Sau đó, bạn nên loại bỏ các thư mục cấu hình không cần thiết:

    rm -r /etc/postgresql/9.3/ /etc/postgresql/9.5
    
  3. Và từ / var / lib / thư mục nếu bạn có:

    /var/lib/postgresql/*
    

Tôi hy vọng nó sẽ giúp bạn.


1

Thêm câu trả lời rất muộn nhưng có thể giúp mọi người ở đây.

Câu trả lời ngắn: Lỗi cho biết postgres được cấu hình trên cổng sai (không phải mặc định). Sử dụng đúng cổng

Câu trả lời dài: Khi bạn cài đặt nhiều phiên bản Postgresql, tất cả chúng bắt đầu chạy các cụm postgres trên cổng khác nhau. Trong đầu ra của bạn, phiên bản postgres sau đang chạy: 9.3 --> 5432, 9.4 -->5434, 9.5 --> 5433.

sudo service postgresql status
9.3/main (port 5432): down
9.4/main (port 5434): online
9.5/main (port 5433): down

Bạn có thể gỡ bỏ cài đặt các phiên bản khác sử dụng sudo apt-get purge postgresql-9.x9.xlà phiên bản của bạn tuy nhiên trong trường hợp của bạn phiên bản (9.4) trong đó đã có mặt trên hệ thống của bạn được cấu hình để chạy trên cổng 5434. Do đó, lỗi Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?một cách hoàn hảo chỉ psql rằng theo mặc định cố gắng để kết nối với cổng 5432mà không có lâu hơn có bất kỳ postgres đính kèm.

Hai giải pháp ở đây :

  • Sử dụng psql -p 5434tùy chọn cổng tức là (-p / - port) trong lệnh psql.
  • Hoặc định cấu porthình giá trị cấu hình máy chủ postgres của bạn /etc/postgresql/9.5/main/postgresql.confđể phục vụ trên 5432. Đừng quên khởi động lại postgres sau khi thay đổi.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.