Welcome 微信登录

首页 / 数据库 / MySQL / ORA-01653: unable to extend table X by Y in tablespace

最近几天遇到了好几次Oracle的这个问题了,场景不太一样而已(注意:标题上的Y的单位是KB):1.insert into table1 values(...) select (...) from table2:(会占用temp tablespace,如果table2数据很大,temp tablespace不够大的话,可能会报出上面的问题)2.update table1 set is_deleted="Y":(因为在table1上建有物化视图,而这个视图要新增对应的物化视图的log表,由于这个log表对应的tablespace满了,导致上面的问题)3.insert into table1 values(...):(最正常不过的insert语句,由于table1对应的tablespace满了,导致上面的问题)在网上找了一下相关的资料,摘抄了下三个关键的sql记录一下,以备后面的不时之需:•查询表空间相关信息SELECT a.tablespace_name ,
     a.bytes / 1024 / 1024                             "表空间大小(M)",
     ( a.bytes - b.bytes ) / 1024 / 1024               "已使用空间(M)",
     b.bytes / 1024 / 1024                             "空闲空间(M)",
     Round(( ( a.bytes - b.bytes ) / a.bytes ) * 100, 2) "使用比率"
FROM (SELECT tablespace_name,
             SUM(bytes) bytes
        FROM dba_data_files
        GROUP  BY tablespace_name) a,
     (SELECT tablespace_name,
             SUM(bytes) bytes,
             Max(bytes) largest
        FROM dba_free_space
        GROUP  BY tablespace_name) b
WHERE  a.tablespace_name = b.tablespace_name
ORDER  BY ( ( a.bytes - b.bytes ) / a.bytes ) DESC•查看表空间对应的datafile的信息SELECT file_name,
     tablespace_name,
     bytes / 1024 / 1024    "bytes MB",
     maxbytes / 1024 / 1024 "maxbytes MB"
FROM dba_data_files
WHERE  tablespace_name = "PSR_DATA";•查看表空间对应的datafile是否可以自动扩展(当然有些场景开启自动扩展功能可能会带来一些潜在的问题,所以不是所有的公司都开启这个)SELECT file_id,
     file_name,
     tablespace_name,
     autoextensible,
     increment_by
FROM dba_data_files
WHERE  tablespace_name = "PSR_DATA"
ORDER  BY file_id DESC;更多Oracle相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14CentOS上开启MySQL远程访问权限ORA-01017/ORA-02063 DbLink建立错误问题分析及解决相关资讯      ORA-01653  本文评论 查看全部评论 (1)
表情: 姓名: 字数


评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款