Sybase ASE – Take backup for Cross-Platform Load in Quiescent State

It is possible to do a cross-platform dump and load procedure from any database dump that is at least at version 11.9.x, there are just some pre-requisites that must be met before the source database is dumped. The process requires that the database being dumped is in a quiescent state, i.e. there are no “open” or active transactions present in the log portion of the dump file and that all memory-resident database statistics are flushed to the stats tables before the dump is done.

1)Get rid of transaction log entries as we are going to do a full dump anyway:

dump transaction <DB Name> with truncate_only
go

2)Verify that the log is empty. There should be no more than 16 pages of reserved space:

use <DB Name>
go
sp_spaceused syslogs
go

3)In addition to setting to single user mode, set to truncate the log on checkpoint too (just in case):

use master
go
sp_dboption <DB Name>, 'trunc', true
go
sp_dboption <DB Name>, 'single', true
go
use <DB Name>
go
checkpoint
go

4)One more dump of transaction log to get rid of the option change entries – we just want the final checkpoint in the log:

dump tran <DB Name> with truncate_only
go

5)Clear out the database stats:

use <DB Name>
go
sp_flushstats
go

6)Wait for everything to settle at this point, then carry out a checkpoint:

checkpoint
go

7)Carry out the actual dump:

dump database  to '<Dumpfile_path_and_filename>'
go

One thought on “Sybase ASE – Take backup for Cross-Platform Load in Quiescent State

  1. Pingback: Sybase ASE | Oracle Database Internal Mechanism

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.