cancel
Showing results for 
Search instead for 
Did you mean: 

Error: created by a different version of the software

Former Member
0 Kudos
3,969

I have an old Installation of SQL Anywhere 5.5 on Windows Server 2003. This has to be upgraded to a newer Version of Windows. I copied the datafile and the logfile of the old server to a new server.

I tried to attach the files to a SQL Anywhere 16 Installation and now to a SQL Anywhere 12 Installation. It says:

"Unable to start specified database: 'd:\\sybase\\ksl.db' was created by a different version of the software"

How can I move this old database to a new Server?

Accepted Solutions (0)

Answers (3)

Answers (3)

Breck_Carter
Participant

I tested this command file on a version 5.5 database file in c:\\sybase\\ksl.db

...which is on a different drive because my 😧 drive is a DVD 🙂

REM This command file runs unload-reload-all-in-one-dbunload-step, 
REM then starts dbeng16 and dbisql so you can make sure the new 
REM database is up and running.

REM Be sure to stop *all* database engines on the computer you're using, 
REM before starting the upgrade.

REM dbunload...
REM -an ...  where to put new database
REM -ap ...  new database page size
REM -c ...   old database startup connection string
REM -o ...   where to put unload console display text file
REM -v       verbose mode for console display

PAUSE MAKE SURE YOU DO NOT HAVE ANY ENGINES RUNNING.

CD /D c:\\sybase

"%SQLANY16%\\bin64\\dbunload.exe"^
  -an kslnew.db^
  -ap 4096^
  -c "DBF=ksl.db; UID=dba; PWD=sql;"^
  -o dbunload_ksl_messages.txt^
  -v

PAUSE ...dbunload/reload is done; start dbeng16

"%SQLANY16%\\bin64\\dbspawn.exe"^
  -f "%SQLANY16%\\bin64\\dbeng16.exe"^
  -o dbeng16_kslnew_messages.txt^
  kslnew.db 

PAUSE ...dbeng16 is running; start dbisql

"%SQLANY16%\\bin64\\dbisql.exe"^
  -c "ENG=kslnew; DBN=kslnew; UID=dba; PWD=sql;" 

PAUSE ...dbisql is running 
Former Member
0 Kudos

Thanks a lot, Breck, I could unload the data. A view can't be compiled and a few triggers have to be created. But I'll deal with this later on.

I can't start the DB engine and get the following error.

D:\\SYBASE12>"%SQLANY12%\\Bin32\\dbspawn.exe" -f ""%SQLANY12%\\Bin32\\dbeng12.exe" -o dbeng12_kslnew_messages.txt kslnew.db SQL Anywhere Start Server In Background Utility Version 12.0.1.4436 DBSPAWN ERROR: -80 Unable to start database server

D:\\SYBASE12>

Former Member
0 Kudos

It works now! You really made my day

I had an Apostrophe too much in the string, that's all. Server is running now. I'll now compare the new database to the old database.

Thank you for your help! It's very much appreciated!

Breck_Carter
Participant

I didn't think there would be any apostrophe memes... and I was wrong!

...but, at least your puppy is safe 🙂

MarkCulp
Participant

SQL Anywhere version 10 and above cannot start databases build in earlier versions (i.e. version 9 or below). You must rebuild the database.

See the documentation for more information on how to rebuild your database.

Former Member
0 Kudos

Thank you both. That means I copy the database and log files from the old server to the new server and use dbunload.exe on the new server?

VolkerBarth
Contributor

Yes, the unload must be done with the new SQL Anywhere Version. Note, from 5.5 to 16 is a huge step, so there might be several behaviour changes to consider...