当前位置: 首页 > news >正文

Oracle报错ORA-01653: 表xx无法通过 8192在表空间中扩展

向Oracle 19g数据库中批量插入数据,当插入近2亿条数据后,报出如下错误:
ORA-01653: 表xx无法通过 8192 (在表空间 xx_data 中) 扩展

查看表空间,发现表空间大小已达到32G,表空间无法进行自动扩展了。(初始空间为20G)


  1. 查看Oracle的 DB_BLOCK_SIZE

    # sys 登陆 oracle
    SQL> select value from v$parameter where name ='db_block_size';
    VALUE
    ---------------------------------------------------------------
    8192
    

    本机数据库的数据块大小为8K,得出本机Oracle 单个表空间数据文件的最大值为:4194304 * 8/1024 = 32768M (32G);
    所以既使创建表空间时设置了 autoextend on maxsize unlimited,其最大空间也是不会超过32G。

    1. 在初始建库时,DB_BLOCK_SIZE要根据实际需要,设置为 4K、8K、16K、32K、64K等几种大小;
    2. ORACLE的物理文件最大只允许4194304(2^22)个数据块;
  2. 查看表空间

    # 查看表空间
    select * from   dba_tablespaces;# 查看表空间是否自动增
    SELECT FILE_NAME,TABLESPACE_NAME,AUTOEXTENSIBLE FROM dba_data_files;# 表空间文件位置
    select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_files order by file_id;  
    

    列出所有表空间的使用情况:

    SELECT a.tablespace_name "表空间名称", total / (1024 * 1024) "表空间大小(M)", free / (1024 * 1024) "表空间剩余大小(M)", (total - free) / (1024 * 1024 ) "表空间使用大小(M)", total / (1024 * 1024 * 1024) "表空间大小(G)", free / (1024 * 1024 * 1024) "表空间剩余大小(G)", (total - free) / (1024 * 1024 * 1024) "表空间使用大小(G)", round((total - free) / total, 4) * 100 "使用率 %" FROM (SELECT tablespace_name, SUM(bytes) free FROM dba_free_space GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) total FROM dba_data_files GROUP BY tablespace_name) b WHERE a.tablespace_name = b.tablespace_name ;
    

    在这里插入图片描述

解决

  1. 查看表空间是否自动增长

    SELECT FILE_NAME,TABLESPACE_NAME,AUTOEXTENSIBLE FROM dba_data_files;-- 查看表空间是否自动增长
    

    在这里插入图片描述

  2. 如果报错的表空间没有开启自动增加 ,则开启

    ALTER DATABASE DATAFILE '/ora11g/data/oradata/lfzldb/LFZL.DBF' AUTOEXTEND ON NEXT 1024M ;	-- 每次自动增长1024M
    
  3. 当自动增长表空间也无效的情况

    当表空间为最大值,100%没办法自增的时候,这时可以考虑新增一个数据文件

     Alter tablespace 表空间名 add datafile '数据文件路径' size 数据文件大小M autoextend on next 每次自增长大小M Maxsize UNLIMITED --例Alter tablespace LFZL add datafile '/ora11g/data/oradata/lfzldb/LFZL2.DBF' size 10240M autoextend on next 1024M Maxsize UNLIMITED
    

    添加成功后,查看情况
    在这里插入图片描述

http://www.lryc.cn/news/501082.html

相关文章:

  • 【C语言】库函数常见的陷阱与缺陷(3):内存分配函数
  • Vue前端实现预览并打印PDF文档
  • CSS学习记录07
  • 喆塔科技携手国家级创新中心,共建高性能集成电路数智化未来
  • 基于单片机的汽车雨刷器装置
  • 013-SpringBoot 定义优雅的全局异常处理方式
  • nginx 网页正常访问 F5 404
  • Idea Spring Initializr没有 Java 8选项解决办法
  • 【Leetcode Top 100】104. 二叉树的最大深度
  • C#实现一个HttpClient集成通义千问-开发前准备
  • 使用ssh免密登录实现自动化部署rsync+nfs+lsync(脚本)
  • 若依集成更好用的easyexcel
  • 去除背景 学习笔记
  • 我们来学mysql -- 隔离级别简介(原理篇)
  • 机器学习(4)Kmeans算法
  • Oracle之表空间迁移
  • 域渗透入门靶机之HTB-Cicada
  • ue5 motion matching
  • 【从零开始的LeetCode-算法】383. 赎金信
  • 记录模板学习(持续更新)
  • Android hid 数据传输(device 端 )
  • MaxEnt模型在物种分布模拟中如何应用?R语言+MaxEnt模型融合物种分布模拟、参数优化方法、结果分析制图与论文写作
  • 第3章:文本样式 --[CSS零基础入门]
  • mysql 架构详解
  • 无代码探索AI大模型:腾讯云函数计算的卓越实践
  • 解决Ubuntu在VMware关机时,老是一个光标在那里闪动几分钟,才能关机的问题
  • word poi-tl 图表功能增强,插入图表折线图、柱状图、饼状图
  • 常见网络钓鱼类型
  • 数字图像处理考研考点(持续更新)
  • Spring Cloud Alibaba:一站式微服务解决方案