做了几个小的操作,感觉有点迷惑?
步骤如下:
SQL> connect sys/system@repm as sysdba
已连接。
SQL>
SQL> select * from xys.tt;
AA BB CC
---------- ---------- ----------
test test test
test5test5test5
test2test2test2
test1test1test1
test3test3test3
SQL> alter tablespace users begin backup;
表空间已更改。
SQL> insert into xys.tt values('a' , 'a' , 'a');
已创建 1 行。
SQL> commit;
提交完成。
SQL> create table xys.t_ttt(aa varchar2(10)) tablespace users;
表已创建。
SQL> alter tablespace users end backup;
表空间已更改。
SQL> alter system checkpoint;
系统已更改。
SQL> insert into xys.tt values('b' , 'b' , 'b');
已创建 1 行。
SQL> select * from xys.tt;
AA BB CC
---------- ---------- ----------
test test test
test5test5test5
test2test2test2
test1test1test1
test3test3test3
a
a
a
b
b
b
已选择7行。
SQL> commit;
提交完成。
SQL>
1、执行alter tablespace users begin backup以后,还可以操作表空间,此时的操作应该在缓冲吧,没有写入数据文件吧?
2、insert into xys.tt values('b' , 'b' , 'b'); 插入数据以后,没有提交,也应该在缓冲吧,如果commit以后,是不是立即写入数据文件
总之数据库什么时候把缓冲里的东西写入数据文件?
|