作者:幸福欧旭旭_320 | 来源:互联网 | 2017-05-12 16:11
今天看到生产系统表空间99了,果断给表空间加数据文件。没问题,果断搞定。晚上回味的时候,一身冷汗。生产系统RAC,加数据文件是在共享存储。路径加对了,但是数据文件的后缀名加错了!原来的数据文件名
今天看到生产系统表空间99了,果断给表空间加数据文件。没问题,果断搞定。
晚上回味的时候,一身冷汗。生产系统RAC,加数据文件是在共享存储。路径加对了,但是数据文件的后缀名加错了!
原来的数据文件名:
+data/datafile/xxxxxx.dat
我加的数据文件:
+data/datafile/xxxxxx.dbf
业务不会就这样跪了吧????
果断做了测试:
创建一个包含.dbf和.dat的表空间,并在该表空间中创建测试表
create tablespace dxmy datafile '/u01/app/oracle/oradata/single1/dxmy001.dat' size 2m autoextend off;
alter tablespace dxmy add datafile '/u01/app/oracle/oradata/single1/dxmy002.xo' size 2m autoextend off;
alter tablespace dxmy add datafile '/u01/app/oracle/oradata/single1/dxmy003.dbf' size 4m autoextend off;
create table tab_test (id number,name varchar2(100)) tablespace dxmy;
插入数据:
declare
begin
for i in 1 .. 100000 loop
insert into tab_test values (i,i||'dxmy');
end loop;
commit;
end;
查看表所占空间:
select owner,
table_name,
NUM_ROWS,
BLOCKS * 8192 / 1024 / 1024 "Size M",
EMPTY_BLOCKS,
LAST_ANALYZED
from dba_tables
where table_name = 'TAB_TEST';
OWNER TABLE_NAME NUM_ROWS Size M EMPTY_BLOCKS LAST_ANALYZED
LM TAB_TEST 200000 4.859375 0 2015/12/10 6:29:07
发现已经大于1M了,说明三个数据文件都是在用的。
也就是说,Oracle用数据文件,只要数据文件属于该表空间,就能用,不管后缀名。
PS:如果查表所占空间无数据,执行表分析语句就好。
exec dbms_stats.get_tables_stats(ownname => '',tabname => '');
以上就是数据文件的后缀名_MySQL的内容,更多相关内容请关注PHP中文网(www.php1.cn)!