-r database option

Starts the named database as read-only. No changes to the database(s) are allowed: the database server does not modify the database file(s) and transaction log files. The -r database option must be specified after the database-file, and applies only to that database.

Syntax
{ dbsrv11 | dbeng11 } [ server-options ] database-file -r ...
Applies to

All operating systems and database servers.

Remarks

Opens all database files (the main database file, dbspaces, transaction log, and transaction log mirrors) as read-only with the exception of the temporary file when the option is specified before any database names on the command line. If the -r option is specified after a database name, only that specific database is read-only. You can make changes on temporary tables, but ROLLBACK has no effect, since the transaction and rollback logs are disabled.

A database distributed on a CD-ROM device is an example of a database file that cannot be modified. You can use read-only mode to access this sort of database.

If you attempt to modify the database, for example with an INSERT or DELETE statement, a SQLSTATE_READ_ONLY_DATABASE error is returned.

Databases that require recovery cannot be started in read-only mode. For example, database files created using an online backup cannot be started in read-only mode if there were any open transactions when the backup was started, since these transactions would require recovery when the backup copy is started.

You cannot start a database in read-only mode if auditing is turned on.

See also
Example

To open two databases in read-only mode

dbeng11 -r database1.db database2.db

To open only the first of two databases in read-only mode.

dbeng11 database1.db -r database2.db