Sybase – How to get logsegments off the data devices

sybase

I'm running Sybase ASE 15.7 and coming up to speed to clean up a database server installed by a non-DBA.

I have a database that has the following device configuration:
Sybase database device listing

I want to have data1 and tlogs1 devices hosting only Data and Log respectively so that I don't encounter any anomalies in the event of a database restore due to a device failure.

How can I correct this configuration?

Note: The remove button is always grayed out.

Best Answer

I was unable to fix the database in place, but I did manage to solve this misconfiguration by:

  • Creating a new database with my optimal device layout
  • Migrating the schema via DDL generation scripts using ddlgen.bat
  • Using bcp to migrate the table data

Note: You could use Sybase Central's DDL generator, but it doesn't include table's indexes for some reason.

When done, I have well documented database schema scripts to place in source control.