RDS for SQL Server で ALTER DATABASE SET ONLINE が実行できないのはなぜですか
困っていた内容
RDS for SQL Server のデータベースを ALTER DATABASE SET OFFLINE でオフラインに変更しました。
その後、ALTER DATABASE SET ONLINE でオンラインに戻そうとしたところ、マスターユーザーであるにもかかわらず権限エラーとなり実行できません。
どう対応すればいいの?
RDS for SQL Server では、ALTER DATABASE SET ONLINE の代わりに RDS 専用のストアドプロシージャ rdsadmin.dbo.rds_set_database_online を使います。
EXEC rdsadmin.dbo.rds_set_database_online 'データベース名';
SQL Server メソッド Amazon RDS 方法 ALTER DATABASE db_name SET ONLINE; EXEC rdsadmin.dbo.rds_set_database_online db_name
RDS はマネージドサービスであるため、一部の操作は標準の SQL Server とは異なる方法で提供されます。
マネージド型サービスの操作性を実現するために、Amazon RDS では DB インスタンスへのシェルアクセスはできません。また、上位の権限を必要とする特定のシステムプロシージャやシステムテーブルへのアクセスが制限されます。
ALTER DATABASE SET ONLINE もその一つにあたるため、上記のストアドプロシージャをご利用ください。
参考情報








