]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/cats/update_sqlite3_tables.in
Add new upgrade script from DB vers 12 to 13
[bacula/bacula] / bacula / src / cats / update_sqlite3_tables.in
1 #!/bin/sh
2 #
3 # Shell script to update MySQL tables from Bacula Enterprise version 2.6.x to 4.0.x
4 #  or Bacula Community version 5.0.x to 5.2.x
5 #
6 echo " "
7 echo "This script will update a Bacula MySQL database from version 12 to 13"
8 echo "  which is needed to convert from Bacula Enterprise version 2.6.x to 4.0.x"
9 echo "  or Bacula Community version 5.0.x to 5.2.x"
10 echo " "
11
12 bindir=@SQL_BINDIR@
13 PATH="$bindir:$PATH"
14 cd @working_dir@
15 sqlite=@DB_TYPE@
16 db_name=@db_name@
17
18 DBV=`${sqlite} ${db_name} $sbin/regress.db <<END
19 select VersionId from Version;
20 END`
21 if [ $DBVERSION != 12 ] ; then
22    echo " "
23    echo "The existing database is version $DBVERSION !!"
24    echo "This script can only update an existing version 12 database to version 13."
25    echo "Error. Cannot upgrade this database."
26    echo " "
27    exit 1
28 fi
29
30 ${sqlite} $* ${db_name}.db <<END-OF-DATA
31 BEGIN;
32
33 CREATE TABLE RestoreObject (
34    RestoreObjectId INTEGER,
35    ObjectName TEXT DEFAULT '',
36    RestoreObject TEXT DEFAULT '',
37    PluginName TEXT DEFAULT '',
38    ObjectLength INTEGER DEFAULT 0,
39    ObjectFullLength INTEGER DEFAULT 0,
40    ObjectIndex INTEGER DEFAULT 0,
41    ObjectType INTEGER DEFAULT 0,
42    FileIndex INTEGER UNSIGNED DEFAULT 0,
43    ObejctCompression INTEGER DEFAULT 0,
44    JobId INTEGER UNSIGNED REFERENCES Job NOT NULL,
45    PRIMARY KEY(RestoreObjectId)
46    );
47 CREATE INDEX restore_jobid_idx ON RestoreObject (JobId);
48
49 UPDATE Version SET VersionId=13;
50 COMMIT;
51
52 END-OF-DATA