Atualmente, estou em uma VPN usando o RStudio, que está instalado na minha área de trabalho local para fazer algumas análises.
No entanto, para fazer análises, extraio dados do meu banco de dados que está instalado em um servidor remoto.
O que eu faço atualmente é
a) Conecte-se à VPN
b) Faça login no servidor remoto
c) Transfira a porta da conexão de banco de dados (ssh -L 8890:localhost:8890 test) para que eu possa usar o cliente de banco de dados ( pgadmin
) em meu laptop. Meu banco de dados é executado na porta 8890 no servidor, que eu reencaminho para 8890 localmente.
d) Inicie o estúdio R da minha área de trabalho local
e) Conecte-se à instância do banco de dados usando os detalhes abaixo (usando o código R conforme mostrado abaixo)
dbms = "postgresql" #Should be "sql server", "oracle", "postgresql" or "redshift"
user <- "test"
pw <- "test"
server <- "localhost/test"
port <- "8890"
connectionDetails <- createConnectionDetails(dbms=dbms, server=server, user=user, password=pw, schema=cdmSchema, port=port)
conn <- connect(connectionDetails)
Embora o procedimento acima funcione bem, o processo é interrompido sempre que há um problema de conexão com a Internet.
Como posso usar o tmux nesta configuração para evitar isso?
Se algo interromper a conexão entre sua estação de trabalho e o servidor remoto, você deverá restabelecer a conexão. Tmux não vai ajudar com isso.
Se você tiver acesso total ao servidor remoto, poderá executar toda a sua carga de trabalho nele, e qualquer análise iniciada no servidor remoto continuará a ser executada mesmo se a estação de trabalho local for interrompida.
Não tenho certeza de quais são suas regras de VPN, mas pode ser mais fácil descobrir por que sua conexão continua sendo interrompida e corrigir isso.