在数据库打开的情况下备份(归档模式),把表空间或者数据库置于backup 模式下,
如:
SQL> alter database begin backup;
Database altered.
那么当把表空间或者数据库置于backup模式下,会发生什么?
1.表空间会发生checkpoint,j将内存中的dirty data全部写进数据文件中;
2.在数据文件头的SCN号会被冻结住;
3.在backup模式下,一个数据块发生了改变,那么整个数据块都会被写进重做数据流中。
所以在backup模式下,是允许用户向数据库中写数据的。
做个试验证明一下,表空间置于backup模式下,用户任然可以修改数据。
没有表空间置于backup 模式下:
打开第一个会话,用sys用户登录,创建一个用户p1,
SQL> create user p1 identified by p1_12345 default tablespace users;
User created.
SQL> grant connect,resource to p1;
Grant succeeded.
打开第二个会话,用p1用户登录,创建表fruit,