Wednesday, December 12, 2012

Starting SQL Anywhere 10.x on Ubuntu 12.04

Yes i know,

SQL Anyhwere 10 is out of the normal support cycle, so we won't get any new EBF for it.

Neverless we still have customers running SQL Anywhere on linux systems.
When you upgrade your Ubuntu 10.04 LTS to the 12.04 LTS version, then the database will no longer run.
On startup you will see a message telling you that there is not enough free memory available.

The cause is the switch from kernel 2.6.x to 3.x, which has some other memory handling.

You can find the original thread here in the sql aynwhere forum.

The simplest solution (beside upgrading to a new license of sql anywhere) is to start the database server with the architecture specified as kernel version 2.6.

Fortunally there is a tool which allows us to do this: setarch

So the command to start dbsrv10 looks like this:

setarch $(arch) --uname-2.6 /opt/sqlanywhere10/bin32/dbsrv10 @/opt/sqlanywhere10/databases.list