欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

数据文件的后缀名_MySQL

程序员文章站 2022-04-28 18:25:25
...
今天看到生产系统表空间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.php.cn)!

相关标签: 数据文件,MySQL