Java PostgresSQL backup e restore?

4 respostas
swingpostgresqlprogramaçãojava
L

Alguém poderia me disponibilizar, ou me ajudar a fazer backup e restore em Java, a interface eu penso desta maneira como a imagem logo abaixo.

Eu vi alguns exemplos na internet, mas se tratava de MySQL e não PostgresSQL.

###Alguém pode me dar uma força?

4 Respostas

R

Começou a construir seu código disso? começa por ai.

Segue alguns itens que você precisa estudar:


Runtime.getRuntime().exec("comando");
L

Então eu comecei sim, segue meu código abaixo. Só gostaria de ter a opção de escolher o local onde será gravado o arquivo de backup em vez de setar em uma String.

public class PostgresBackup {

public static void realizaBackup() throws IOException, InterruptedException{

final List comandos = new ArrayList();

<a href="//comandos.add">//comandos.add</a>(“C:\Program Files (x86)\PostgreSQL\8.4\bin\pg_dump.exe”);

<a href="//comandos.add">//comandos.add</a>(“C:\Program Files\PostgresPlus\8.4SS\bin\pg_dump.exe”);

comandos.add(C:\Program Files\PostgreSQL\9.4\bin\pg_dump.exe);    // esse é meu caminho

comandos.add("-i");

comandos.add("-h");

comandos.add(localhost);     //ou  comandos.add(“192.168.0.1”);

comandos.add("-p");

comandos.add(5432);

comandos.add("-U");

comandos.add(postgres);

comandos.add("-F");

comandos.add(c);

comandos.add("-b");

comandos.add("-v");

comandos.add("-f");

comandos.add(C:\Users\LEANDRO-PC\Desktop\BACKUP_AUTOBRILHO\autobrilho.backup);   // eu utilizei meu C:\ e D:\ para os testes e gravei o backup com sucesso.

comandos.add(autobrilho);

ProcessBuilder pb = new ProcessBuilder(comandos);

pb.environment().put(PGPASSWORD, 933556);      //Somente coloque sua senha

try {

final Process process = pb.start();

final BufferedReader r = new BufferedReader(

new InputStreamReader(process.getErrorStream()));

String line = r.readLine();

while (line != null) {

System.err.println(line);

line = r.readLine();

}

r.close();

process.waitFor();

process.destroy();

JOptionPane.showMessageDialog(null,Backup realizado com sucesso.);

} catch (IOException e) {

e.printStackTrace();

} catch (InterruptedException ie) {

ie.printStackTrace();

}

}

public static void main(String[] args) {

try {

PostgresBackup.realizaBackup();

} catch (IOException e) {

e.printStackTrace();

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}
R

Use um JFileChooser:
https://docs.oracle.com/javase/tutorial/uiswing/components/filechooser.html

L

consegui realizar o backup Rodrigo, obrigado pelas dicas.

Criado 5 de abril de 2017
Ultima resposta 7 de abr. de 2017
Respostas 4
Participantes 2