- Saya
apt-get
menginstal Postgres 9.2.4 (menggunakan PPA). - Saya dulu
pg_dropcluster --stop 9.2 main
menghapus cluster database default, karena saya bermaksud membuat cluster baru pada volume SSD yang terpisah (volume penyimpanan blok Rackspace) yang baru saja dipasang. - Saya membuat cluster baru yang datanya berada di volume SSD saya dan memulainya (
ps
menunjukkan semua proses Postgres normal berjalan untuk cluster baru dan saya dapat membuka shell Postgres dan menjalankan SQL - yaitu, itu berjalan dengan baik). Sekarang ketika saya menjalankanpg_lsclusters
tidak ada yang terdaftar.
The main
Cluster terdaftar baik-baik saja sebelum saya dihapus. Mengapa cluster baru saya tidak muncul, bahkan ketika sedang berjalan? Saya bahkan telah me-reboot server (untuk berjaga-jaga).
postgresql
postgresql-9.2
orokusaki
sumber
sumber
pg_wrapper
)initdb -D /the/dir/
- Saya pikir saya baru menyadari bahwa saya seharusnya menggunakanpg_createcluster -d /the/dir/
seharusnya tidak? Apakah keduanya sama, minus data meta ekstra apa pun yang disimpan Postgres tentang cluster? (Saya di Ubuntu 12.04.2)pg_ctlcluster 9.2 mycluster start
pg_wrapper
Anda harus melakukannya secara konsisten.Jawaban:
Untuk menggunakan alat-alat umum postgres ini dengan sebuah cluster, mereka harus digunakan secara konsisten. Anda akan menggunakan
pg_createcluster -d /path/to/data
, bukaninitdb
.pg_createcluster
menambahkan clusterpostgres-common
untuk memfasilitasi operasi praktis ini. Ini adalah pembungkus, seperti halnyapg_ctlcluster
, di sekitar alat tingkat bawah (misalnya,initdb
danpg_ctl
), menyediakan akses dari satu tempat ke tempat operasi pada semua cluster Anda. Ini juga memiliki beberapa default, seperti lokasi log yang dikonfigurasi secara otomatis berdasarkan nama cluster. ini berarti Anda tidak perlu menggunakan-l /var/log/my-custom.log
saat Anda membuat atau memulai server.sumber