Subject RE: [firebird-support] Firebird 2.52 gbak fails to do a restore - error trigger (3)
Author Svein Erling Tysvær
Unlike Vlad, Helen and Thomas, I know next to nothing about problems like yours (I'm good at SELECTs, which is way different from corrupted backups). Hence, listen more to them than to me.

>gbak: restoring privilege for user SYSDBA
>gbak: ERROR:action cancelled by trigger (3) to preserve data integrity
>gbak: ERROR: table/procedure has non-SQL security class defined
>gbak:Exiting before completion due to errors

I read this as attempting to grant SYSDBA something that is impossible. E.g. it wouldn't surprise me if InterBase 6 allowed you to grant EXECUTE to a table (EXECUTE only makes sense to grant to a procedure), and that Firebird barks since is stricter regarding syntax than IB 6 was.

Now, I don't know how to restore a database without grants specified to the table (others may know), but I'd recommend you to try restoring using the -o switch (one table at a time), possibly also using the -i (set indexes inactive) and -n (check constraints disabled) switches.

But as I said, this is rambling and guesswork, as opposed to Vlad's, Helen's and Thomas' knowhow.

Set

PS! Firebird 2.5 is a considerably better database than InterBase 6.0 was (although 2.5.1 had a flaw that almost required backup/restore when upgrading to 2.5.2 or higher)