Bonjour,
j'ai une application java tournant sur tomcat sur un serveur d'application.
J'utilise une base de données PostGreSql, installée sur un serveur de base de données distant.
Pour faire de la maintenance, mon application utilise des outils du bin de postgresql, à savoir createdb, pg_dump, pg_restore dans du code ressemblant à :
Ma question : Suis-je obligé d'installer postgresql sur mon serveur d'application (pour l'instant, c'est la cas, et ça marche bien), ou une simple copie de certains fichiers du bin dans mon projet java pourrait suffire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 List<String> commd = new ArrayList<String>(); commd.add("pg_restore"); commd.add("-i"); // ignore la version commd.add("-h"); // adresse du serveur de bdd commd.add(mapParam.get("host")); commd.add("-p"); // port du serveur de bdd commd.add(mapParam.get("port")); commd.add("-c"); // recreer toutes les tables commd.add("-d"); // nom de la base de données commd.add(mapParam.get("dataBase")); commd.add("-U"); // utilisateur commd.add(NOM_UTIL); commd.add("-v"); // Mode verbeux (comentaire ...) commd.add(urlFile); ProcessBuilder PrcBld = new ProcessBuilder(commd); Map<String, String> Envm = PrcBld.environment(); Envm.put("PGPASSWORD", PWD_UTIL); try { Process process = PrcBld.start(); BufferedReader r = new BufferedReader(new InputStreamReader(process.getErrorStream())); String line = r.readLine(); while (line != null) { System.err.println(line); line = r.readLine(); } r.close(); final int dcertExitCode = process.waitFor(); .....
Merci !
Partager