Permintaan saya (untuk membuat tabel baru dari tabel yang ada) membutuhkan waktu yang sangat lama. Jadi saya sudah membuat basis data jauh di kantor saya - lebih banyak RAM di sana.
Saya dapat terhubung ke database saya dari rumah seperti biasa dengan psql.
Bagaimana saya bisa memberi tahu server jarak jauh untuk menjalankan permintaan saya dari terminal tanpa harus menunggu jawaban?
(postgresql-9.2, linux enviroment)
Sunting: Saya terbuka untuk solusi lain, tidak perlu menggunakan psql
sumber
tmux
bekerja seperti ini: 'Apakah saya dapat mematikan mesin lokal saya, dan permintaan masih diproses di server jauh'?psql
apakah perangkat lunak klien itu berjalan di mesin lokal Anda, lalutmux
apakah membuatssh
koneksi ke mesin jarak jauh menjalankan server postgres? Jika itu masalahnya saya sayangnya menyadari ini tidak akan bekerja dengan contoh Redshift tanpa menjalankan EC2 juga.Anda dapat mencoba mengirim
psql
ke latar belakang:Atau, dengan menghubungkan ke DB lokal, Anda dapat menggunakan
dblink
untuk mengirim kueri ke DB jarak jauh:Perhatikan bahwa
dblink_send_query
hanya dapat mengirim satu permintaan pada suatu waktu. Jadi, jika Anda ingin menjalankan beberapa pernyataan SQL, ini bukan solusi Anda.Atau, Anda dapat memulai
pg_agent
pekerjaan di server jauh, yang tidak memerlukan intervensi manual, oleh karena itu keadaan kotak rumah Anda tidak berpengaruh dalam menjalankan pekerjaan Anda. Hal yang sama dapat dicapai dengan menyiapkancron
(atau bahkan lebih baik,at
- terima kasih, Erwin) menjalankan skrip Anda.Selain itu, jika Anda memiliki pekerjaan yang berjalan lama yang Anda mulai secara manual, Anda dapat memulai
screen
sesi di server dan menjalankan file dari sana. Dalam hal ini, Anda dapat keluar dan pulang, dan skrip akan tetap berjalan.sumber
at
perintah mungkin melayani Anda lebih baik daripada cron.