]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/cats/update_sqlite_tables.in
ebl fix segfault with debug mode
[bacula/bacula] / bacula / src / cats / update_sqlite_tables.in
1 #!/bin/sh
2 #
3 # shell script to update SQLite from version 2.0 to 3.0
4 #
5 echo " "
6 echo "This script will update a Bacula SQLite database from version 10 to 11"
7 echo " which is needed to convert from Bacula version 2.0.x to 3.0.x or higher"
8 echo "Depending on the size of your database,"
9 echo "this script may take several minutes to run."
10 echo " "
11
12 bindir=@SQL_BINDIR@
13 cd @working_dir@
14 sqlite=@DB_TYPE@
15 db_name=@db_name@
16
17 ${bindir}/${sqlite} $* ${db_name}.db <<END-OF-DATA
18 BEGIN TRANSACTION;
19
20 -- Create a table like Job for long term statistics
21
22 CREATE TABLE JobHistory (
23    JobId INTEGER,
24    Job VARCHAR(128) NOT NULL,
25    Name VARCHAR(128) NOT NULL,
26    Type CHAR NOT NULL,
27    Level CHAR NOT NULL,
28    ClientId INTEGER REFERENCES Client DEFAULT 0,
29    JobStatus CHAR NOT NULL,
30    SchedTime DATETIME NOT NULL,
31    StartTime DATETIME DEFAULT 0,
32    EndTime DATETIME DEFAULT 0,
33    RealEndTime DATETIME DEFAULT 0,
34    JobTDate BIGINT UNSIGNED DEFAULT 0,
35    VolSessionId INTEGER UNSIGNED DEFAULT 0,
36    VolSessionTime INTEGER UNSIGNED DEFAULT 0,
37    JobFiles INTEGER UNSIGNED DEFAULT 0,
38    JobBytes BIGINT UNSIGNED DEFAULT 0,
39    JobErrors INTEGER UNSIGNED DEFAULT 0,
40    JobMissingFiles INTEGER UNSIGNED DEFAULT 0,
41    PoolId INTEGER UNSIGNED REFERENCES Pool DEFAULT 0,
42    FileSetId INTEGER UNSIGNED REFERENCES FileSet DEFAULT 0,
43    PriorJobId INTEGER UNSIGNED REFERENCES Job DEFAULT 0,
44    PurgedFiles TINYINT DEFAULT 0,
45    HasBase TINYINT DEFAULT 0,
46    PRIMARY KEY(JobId) 
47    );
48 CREATE INDEX inx61 ON JobHistory (Name);
49
50 UPDATE Version SET VersionId=11;
51
52 COMMIT;
53
54 END-OF-DATA