Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 10.0.1 » QAnywhere » Setting Up QAnywhere Messaging » Setting up client-side components

Setting up client-side components Next Page

Setting up the client message store

The client message store is a SQL Anywhere database on the remote device. The application connects to this message store using the QAnywhere API.

The client message store must be used exclusively for QAnywhere applications. However, you can run another database within the database server. This is useful if you have a QAnywhere client message store and a MobiLink synchronization client running on the same device.

Using a relational database as a message store provides a secure and high-performance store.

See Creating a secure client message store.

To create a client message store
  1. Create a SQL Anywhere database.

    See Creating a database.

  2. Initialize each client message store by running the QAnywhere Agent (qaagent) with the following options:

  3. If you used the -mu option to create a user name, you need to add the name to the server message store. This can be done automatically using the mlsrv10 -zu+ option, or can be done in other ways.

    See Registering QAnywhere client user names.

  4. Change the default passwords and take other steps to ensure that the client message store is secure.

    See Creating a secure client message store.

You can also upgrade a client message store that was created in a previous version of QAnywhere.

See -su option and -sur option.


The easiest way to create and maintain your client message store is in Sybase Central. From the QAnywhere plug-in task pane, choose Work With a Client Message Store.

Creating client message store IDs

If you do not specify a client message store ID, then the first time you run qaagent after you run qaagent with -si, the device name is assigned as the client message store ID. The ID appears in the QAnywhere Agent window.

You may find it convenient to specify an ID manually. You can do so in the following ways:

See QAnywhere Agent.

Client message store IDs must differ by more than case. For example, don't have two message store IDs called AAA and aaa.

The client message store ID has a limit of 128 characters.

Transaction logs

It is recommended that you use a transaction log, both because a SQL Anywhere database runs most efficiently when using one and because transaction logs provide protection if there is database failure. However, the transaction log can grow very large. For this reason, the QAnywhere Agent by default sets the dbsrv10 -m option, which causes the contents of the transaction log to be deleted at checkpoints. This is recommended. If you specify the StartLine parameter in the qaagent -c option, you should specify -m.

Protecting your client message stores

For information about backup and recovery, see Designing a backup and recovery plan.

Example of creating a client message store

The following command creates a SQL Anywhere database called qanyclient.db. (The dbinit -i and -s options are not required, but are good practice on small devices.)

dbinit -i -s qanyclient.db

The following command connects to qanyclient.db and initializes it as a QAnywhere client database:

qaagent -si -c "DBF=qanyclient.db"

See Initialization utility (dbinit) and QAnywhere Agent.