oracle新建临时表空间

生活 2019-02-16 20:00:13 563

本文收集整理关于oracle新建临时表空间的相关议题,使用内容导航快速到达。

内容导航:

  • Q1:oracle创建临时表空间的一些问题
  • Q2:ORacle中可以在临时表空间中创建临时表吗
  • Q3:Oracle如何更改用户的临时表空间
  • Q4:ORACLE 临时表空间还有45G,创建4G的表,提示表空间不足
  • Q5:如何查看oracle临时表空间当前使用了多少空间的大小
  • Q6:oracle删除临时表空间
  • Q7:oracle中表空间与临时表空间是什么意思?有什么作用?
  • Q1:oracle创建临时表空间的一些问题

    没有那个2,你是复制来的语句吧
    create temporary tablespace lswl_temp tempfile /var/u02/oradata/DBRAC/LSWL_TEMP.DBF size 50m autoextend on next 50m maxsize 20480m extent management local;

    Q2:ORacle中可以在临时表空间中创建临时表吗

    你试试不就知道了,不行的。

    WWW.YI;jITaO.cOM

    Q3:Oracle如何更改用户的临时表空间

    1、如果是多用户的情况下,反正没有数据,你不如把此用户删除,再重新建立,建立的时候,将此用户的临时表空间设置成新建的临时表空间。
    2、若是只有一个用户,那么使用以下命令,修改临时表空间即可
    Alter database default temporary tablespace temp;

    Q4:ORACLE 临时表空间还有45G,创建4G的表,提示表空间不足

    oracle 数据库版本?
    感觉应该是Oracle 10g ,10g有个BUG就是有时不会自动释放临时表空间。需要新建并重新指定表空间以来释放表空间。

    Q5:如何查看oracle临时表空间当前使用了多少空间的大小

    1、查看临时表空间 (dba_temp_files视图)(v_$tempfile视图)
    select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;
    select status,enabled, name, bytes/1024/1024 file_size from v_$tempfile;--sys用户查看
    2、缩小临时表空间大小
    alter database tempfile D:\ORACLE\PRODUCT\10.2.0\ORADATA\TELEMT\TEMP01.DBF resize 100M;
    3、扩展临时表空间:
    方法一、增大临时文件大小:
    SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ resize 100m;
    方法二、将临时数据文件设为自动扩展:
    SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp01.dbf’ autoextend on next 5m maxsize unlimited;
    方法三、向临时表空间中添加数据文件:
    SQL> alter tablespace temp add tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ size 100m;
    4、创建临时表空间:
    SQL> create temporary tablespace temp1 tempfile ‘/u01/app/oracle/oradata/orcl/temp11.dbf’ size 10M;
    5、更改系统的默认临时表空间:
    --查询默认临时表空间
    select * from database_properties where property_name=DEFAULT_TEMP_TABLESPACE;
    --修改默认临时表空间
    alter database default temporary tablespace temp1;
    所有用户的默认临时表空间都将切换为新的临时表空间:
    select username,temporary_tablespace,default_ from dba_users;
    --更改某一用户的临时表空间:
    alter user scott temporary tablespace temp;
    6、删除临时表空间
    删除临时表空间的一个数据文件:
    SQL> alter database tempfile ‘/u01/app/oracle/oradata/orcl/temp02.dbf’ drop;
    删除临时表空间(彻底删除):
    SQL> drop tablespace temp1 including contents and datafiles cascade constraints;
    7、查看临时表空间的使用情况(GV_$TEMP_SPACE_HEADER视图必须在sys用户下才能查询)
    GV_$TEMP_SPACE_HEADER视图记录了临时表空间的使用大小与未使用的大小
    dba_temp_files视图的bytes字段记录的是临时表空间的总大小
    SELECT temp_used.tablespace_name,
    total - used as "Free",
    total as "Total",
    round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
    FROM (SELECT tablespace_name, SUM(bytes_used) / 1024 / 1024 used
    FROM GV_$TEMP_SPACE_HEADER
    GROUP BY tablespace_name) temp_used,
    (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 total
    FROM dba_temp_files
    GROUP BY tablespace_name) temp_total
    WHERE temp_used.tablespace_name = temp_total.tablespace_name
    ORDER BY B.TABLESPACE, B.SEGFILE#, B.SEGBLK#, B.BLOCKS;
    希望能帮到您!

    Q6:oracle删除临时表空间

    首先查看temp是不是某些用户的默认表空间
    SELECT USERNAME,TEMPORARY_TABLESPACE FROM DBA_USERS;
    如果有用户的默认临时表空间是temp的话,建议进行更改
    alter user xxx temporary tablespace tempdefault;
    设置tempdefault为默认临时表空间
    alter database default temporary tablespace tempdefault;
    然后用你列出来的语句删除即可
    drop tablespace temp including contents and datafile;
    即便丢失了所有的临时表空间,只要不是数据库当中用到了order by、子查询、group by、distinct等需要消耗临时表空间的语句(而且要比较大才行,小的话就直接用pga的SORT_AREA区了),那么也不会对业务造成错误导致中断,发现问题之后只需要新建一个临时表空间就可以了。你要是了解备份恢复的话,实际上在进行备份的时候临时表空间都不会进行备份,而只是有一个创建临时表空间的语句而已。

    Q7:oracle中表空间与临时表空间是什么意思?有什么作用?

    表空间是数据库的逻辑划分,一个表空间只能属于一个数据库。所有的数据库对象都存放在指定的表空间中。但主要存放的是表, 所以称作表空间。Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临时表空间,可自动释放;而表空间中存储表数据、函数、过程、序列等。是随数据库永久存在的。

    相关文章
    oracle如何备份数据库2019-01-30
    查看oracle 数据库时间2019-02-01
    oracle怎么创建数据库2019-02-06
    oracle创建数据库实例2019-02-20
    oracle11g建立表空间2019-02-21
    安装oracle数据库步骤2019-03-17
    oracle设置唯一键约束2019-03-20
    oracle和mysql分页区别2019-03-23
    oracle数据库的数据类型2019-03-26
    如何彻底卸载oracle数据库2019-03-29