sybdump is a (open source) command-line utility, which greatly simplifies manipulation of Sybase database dumps by relying on our 'pipe' plugin. (Yes, we give out the razor for free, so as to sell more blades.)
To obtain a more versatile dump, the utility will try to bring the database to single-user mode, sp_flushstats, and checkpoint. It is also smart enough to notice a cross-endian LOAD (or transfer) and tries to make the neccessary post-LOAD step (sp_post_xpload), if suggested by the LOADing server.
Once again, sybdump expects all Sybase servers it contacts to have the 'pipe' plugin installed. The examples below will not function without it.
This can be done by either piping the data through gzip:
sybdump -S SERVER1 DBFOO | gzip -9 > DBFOO.cmpor by using sybdump's -z flag:
sybdump -z9 -S SERVER1 DBFOO > DBFOO.cmp
Either way the resulting DBFOO.cmp is fully compatible with Sybase's own 'compress' plugin. You may wish to use sybdump as above, when the computer, on which sybdump will run, is faster, than the computer running the backup server...
bzip2 provides much better compression compared to gzip, but takes a lot more CPU time. It may make a difference between a dump fitting on a single tape or a DVD and requiring a split, so it has its uses. You may also opt for it, if you need to upload the dump over a slow connection, in which case that connection's bandwidth, rather than the compression throughput, is the bottleneck.
Whatever the reasons, if you have a bzip2-ed dump, you can load it by either bunzip2-ing it first:
bzip2 -d -c DBFOO.dmp.bz2 | sybdump -L -S SERVER1 DBFOOor by letting sybdump figure it out on its own:
sybdump -L -f DBFOO.dmp.bz2 -S SERVER1 DBFOO
Unlike in the examples above, in this case, no data is sent from a server to sybdump. Instead, the utility tells the loading server to await for the dump on a port number (picked by automatically), then tells the dumping server to send the dump to that port number on the loading server's system. It may sound complex, but the command line is simple:
sybdump -S SERVER1 -s SERVER2 DBFOO BACKUP_OF_DBFOO
While the Sybase-servers talk to each other, sybdump keeps you entertained with their progress-report messages...
The executables below may have been compiled from earlier versions of the source code. You are advised to build the utility from source yourself, or request it from us.