]> git.sur5r.net Git - bacula/bacula/blob - bacula/updatedb/update_postgresql_tables_10_to_11.in
baculum: Remove unused api endpoints
[bacula/bacula] / bacula / updatedb / update_postgresql_tables_10_to_11.in
1 #!/bin/sh
2 #
3 # Copyright (C) 2000-2015 Kern Sibbald
4 # License: BSD 2-Clause; see file LICENSE-FOSS
5 #
6 # Shell script to update PostgreSQL tables from version 2.0.0 to 3.0.0 or higher
7 #
8 echo " "
9 echo "This script will update a Bacula PostgreSQL database from version 10 to 11"
10 echo " which is needed to convert from Bacula version 2.0.0 to 3.0.x or higher"
11 echo " "
12 bindir=@POSTGRESQL_BINDIR@
13 PATH="$bindir:$PATH"
14 db_name=${db_name:-@db_name@}
15
16 if psql -f - -d ${db_name} $* <<END-OF-DATA
17 -- The alter table operation can be faster with a big maintenance_work_mem
18 -- Uncomment and adapt this value to your environment
19 -- SET maintenance_work_mem = '1GB';
20
21 BEGIN;
22 ALTER TABLE file ALTER fileid TYPE bigint ;
23 ALTER TABLE basefiles ALTER fileid TYPE bigint;
24 ALTER TABLE job ADD COLUMN readbytes bigint default 0;
25 ALTER TABLE media ADD COLUMN ActionOnPurge smallint default 0;
26 ALTER TABLE pool ADD COLUMN ActionOnPurge smallint default 0;
27
28 -- Create a table like Job for long term statistics
29 CREATE TABLE JobHisto (LIKE Job);
30 CREATE INDEX jobhisto_idx ON JobHisto ( starttime );
31
32 UPDATE Version SET VersionId=11;
33 COMMIT;
34
35 -- If you have already this table, you can remove it with:
36 -- DROP TABLE JobHistory;
37
38 -- vacuum analyse;
39 END-OF-DATA
40 then
41    echo "Update of Bacula PostgreSQL tables succeeded."
42 else
43    echo "Update of Bacula PostgreSQL tables failed."
44 fi
45 exit 0