My configuration include a different catalog for every client, every catalog has its own MySql user and password.
"-C $cat" <- wasn't present.
But i can't understand why sometimes Bacula mess up with catalogs' usernames failing to backup.
19-set 08:20 this-director-dir JobId 1700: shell command: run BeforeJob "/etc/bacula/scripts/make_catalog_backup.pl CLIENT_A_catalog"
19-set 08:20 this-director-dir JobId 1700: BeforeJob: mysqldump: Got error: 1044: Access denied for user 'CLIENT_B_fd'@'localhost' to database 'CLIENT_A_catalog' when selecting the database
19-set 08:20 this-director-dir JobId 1700: Error: Runscript: BeforeJob returned non-zero status=2. ERR=Child exited with code 2
19-set 08:20 this-director-dir JobId 1700: Error: Bacula this-director-dir 5.0.2 (28Apr10): 19-set-2013 08:20:00
Build OS: x86_64-pc-linux-gnu debian 6.0.6
JobId: 1700
Job: CLIENT_A_catalog.2013-09-19_08.20.00_10
Backup Level: Full
Client: "this-director-fd" 5.0.2 (28Apr10)
FileSet: "CLIENT_A_catalog" 2013-02-19 08:20:00
Pool: "CLIENT_A_catalog" (From Job resource)
Catalog: "this-director_catalog" (From Client resource)
Storage: "CLIENT_A_catalog" (From Job resource)
Scheduled time: 19-set-2013 08:20:00
Start time: 19-set-2013 08:20:00
End time: 19-set-2013 08:20:00
Elapsed time: 0 secs
Priority: 11
FD Files Written: 0
SD Files Written: 0
FD Bytes Written: 0 (0 B)
SD Bytes Written: 0 (0 B)
Rate: 0.0 KB/s
Software Compression: None
VSS: no
Encryption: no
Accurate: no
Volume name(s):
Volume Session Id: 0
Volume Session Time: 0
Last Volume Bytes: 0 (0 B)
Non-fatal FD errors: 1
SD Errors: 0
FD termination status:
SD termination status:
Termination: *** Backup Error ***
As you can see, Bacula is trying to access "CLIENT_A_catalog" using "CLIENT_B_fd" credentials.
This is wrong, it should ever use CLIENT_A_fd to access CLIENT_A_catalog and CLIENT_B_fd to access CLIENT_B_catalog.
That's why the access denied error occurs.