답변:
다른 솔루션을 사용할 수 있다고 말했기 때문에 screen 또는 tmux 와 같은 터미널 멀티플렉서를 보는 것이 좋습니다 . 제 생각에는 tmux는 고유 한 이름으로 인해 더 나은 선택입니다 (검색 엔진에서 관련 조회수를 얻는 것이 더 쉽습니다).
기본적으로 이런 종류의 소프트웨어를 사용하면 셸에서 분리 한 다음 세션을 다시 시작할 수 있습니다.
psql
클라이언트 소프트웨어 그게 전부는, 로컬 컴퓨터에서 실행 tmux
하고 있습니다 ssh
포스트 그레스 서버를 실행하는 원격 컴퓨터에 연결을? 이 경우 슬프게도 EC2를 실행하지 않으면 Redshift 인스턴스에서 작동하지 않는다는 것을 슬프게 깨달았습니다.
당신은 psql
배경으로 보낼 수 있습니다 :
psql -f your_sql_file.sql &
또는 로컬 DB에 연결 dblink
하면 원격 DB에 쿼리를 전달할 수 있습니다 .
SELECT dblink_connect('your_connection_name', 'your_connection_string');
SELECT dblink_send_query('your_connection_name', 'your_query');
참고 dblink_send_query
한 번에 하나 개의 쿼리를 보낼 수 있습니다. 따라서 여러 SQL 문을 실행하려는 경우 솔루션이 아닙니다.
또는 pg_agent
수동 개입없이 원격 서버에서 작업을 시작할 수 있으므로 홈 박스 상태가 작업 실행에 영향을 미치지 않습니다. 스크립트를 실행 하는 cron
(또는 더 나은 at
-Erwin) 작업 을 설정하여 도 마찬가지 입니다.
또한 수동으로 시작하는 장기 실행 작업이있는 screen
경우 서버 에서 세션을 시작하고 거기서 파일을 실행할 수 있습니다. 이 경우 로그 오프하고 집으로 돌아갈 수 있으며 스크립트는 계속 실행됩니다.
at
명령 이 cron보다 나은 기능을 제공 할 수 있습니다.
tmux
'나는 종료에 내 로컬 컴퓨터 수있을 것인가, 쿼리는 여전히 원격 서버에서 proccessed 얻을':이 방식으로 작동?