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 à :

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();
 
.....
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 ?

Merci !