• 为ORACLE表空间或临时表空间增加数据文件


    背景:
    当通过ORACLE中的create table ... as select 语句创建一张新表时,新表的数据量为比较大,如10亿,这时SQL*Plus很可能就会提示“ORA-01653: ...”错误信息。这个错误信息暗示表空间大小不够,需要为表空间增加数据文件。

    分析:
    1. 查询表空间剩余字节大小
    SELECT TABLESPACE_NAME, SUM(BYTES)/1024/1024 AS "FREE SPACE(M)"
    FROM DBA_FREE_SPACE
    WHERE TABLESPACE_NAME = '&tablespace_name'
    GROUP BY TABLESPACE_NAME;
    注:如果是临时表空间,请查询DBA_TEMP_FREE_SPACE
    SELECT TABLESPACE_NAME, FREE_SPACE/1024/1024 AS "FREE SPACE(M)"
    FROM DBA_TEMP_FREE_SPACE
    WHERE TABLESPACE_NAME = '&tablespace_name';

    2. 如果不知道表空间数据文件目录规划,可以先查询出表空间所有数据文件
    SELECT TABLESPACE_NAME, FILE_ID, FILE_NAME, BYTES/1024/1024 AS "BYTES(M)"
    FROM DBA_DATA_FILES
    WHERE TABLESPACE_NAME = '&tablespace_name';

    注:如果是临时表空间,请查询DBA_TEMP_FILES
    SELECT TABLESPACE_NAME, FILE_ID, FILE_NAME, BYTES/1024/1024 AS "SPACE(M)"
    FROM DBA_TEMP_FILES
    WHERE TABLESPACE_NAME = '&tablespace_name';

    3. 为空间不足的表空间增加数据文件
    ALTER TABLESPACE &tablespace_name ADD DATAFILE '&datafile_name' SIZE 2G;
    注:如果要为临时表空间扩容,使用下面的语句
    ALTER TABLESPACE &tablespace_name ADD TEMPFILE '&datafile_name' SIZE 2G;

  • 相关阅读:
    ov5640调试过程
    关于OnPaint函数的工作原理(很详细,很实用) [转载]
    机器视觉网络资源
    (转)signaltap II数据用于仿真
    DataSocket简介
    datasocket使用网络传输图像
    共享变量/全局变量/datasocket
    [转载] 任意频率分频原理
    [转]影响FPGA设计中时钟因素的探讨
    生产者和消费者
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13315827.html
Copyright © 2020-2023  润新知