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

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » データベースの起動とデータベースへの接続 » データベース・サーバ » データベース・オプション

 

-r データベース・オプション

指定されたデータベースを読み込み専用として起動します。データベースへの変更はできません。つまり、データベース・サーバはデータベース・ファイルやトランザクション・ログ・ファイルを変更しません。-r データベース・オプションは、database-file の後に指定する必要があり、そのデータベースだけに適用されます。

構文
{ dbsrv11 | dbeng11 } [ server-options ] database-file -r ...
適用対象

すべてのオペレーティング・システムとデータベース・サーバ

備考

コマンド・ラインでどのデータベース名よりも前にオプションを指定した場合、テンポラリ・ファイルを除くすべてのデータベース・ファイル (メイン・データベース・ファイル、DB 領域、トランザクション・ログ、トランザクション・ログ・ミラー) が読み込み専用モードで開きます。あるデータベース名の後ろに -r オプションを指定した場合、そのデータベースだけが読み込み専用になります。テンポラリ・テーブルに変更を加えることはできますが、トランザクション・ログとロールバック・ログが無効化されているため、ROLLBACK を実行しても効果はありません。

変更が不可能なデータベース・ファイルの例として、CD-ROM によって配布されるデータベースがあります。このようなデータベースには読み込み専用モードでアクセスできます。

INSERT 文や DELETE 文などを使ってデータベースを変更しようとすると、SQLSTATE_READ_ONLY_DATABASE エラーが発生します。

リカバリを必要とするデータベースは、読み込み専用モードでは起動できません。たとえば、オンライン・バックアップを使って作成したデータベース・ファイルは、バックアップの開始時に開いているトランザクションがあると、読み込み専用モードで起動できません。これは、バックアップ・コピーの開始時に、これらのトランザクションがリカバリを必要とするためです。

監査がオンである場合、データベースを読み込み専用モードで起動することはできません。

参照

2 つのデータベースを読み込み専用モードで開くには、次のように指定します。

dbeng11 -r database1.db database2.db

2 つのうち最初のデータベースだけを読み込み専用モードで開くには、次のように指定します。

dbeng11 database1.db -r database2.db