oracle在导入数据时报600错误的解决方法
前言
前几天导入一个大容量dmp数据文件,报一个600错误,咨询网上的解决方法,按上面的处理一圈也没有整好,最后咨询组里一个大神,出现此错误 思路是,单个数据文件大小最大为32G,分析数据库后解决如下:
错误情况:
解决方法:在保证我们导入sql无误的情况下,检查当前用户所在表空间:
select username,default_tablespace from user_users;
可以看到,我们当前使用的是users表空间,下面检查当前使用表空间的使用率:
select total.tablespace_name, round(total.MB, 2) as Total_MB, round(total.MB - free.MB, 2) as Used_MB, round((1 - free.MB / total.MB) * 100, 2) as Used_Pct from (select tablespace_name, sum(bytes) / 1024 / 1024 as MB from dba_free_space group by tablespace_name) free, (select tablespace_name, sum(bytes) / 1024 / 1024 as MB from dba_data_files group by tablespace_name) total where free.tablespace_name = total.tablespace_name;
在未给表空间加dbf文件前,表空间使用率接近99%,自此分析出为什么oracle报600错误了,数据文件爆满溢出,导入数据后会被回滚的,解决方式就是加dbf数据文件.
alter tablespace USERS add datafile 'H:\APP\16489\ORADATA\ORCL\USERS03.DBF' size 3G autoextend on;
了解到我导入的数据文件较大,直接加了两个30G的dbf文件,以备后患
alter tablespace USERS add datafile 'H:\APP\16489\ORADATA\ORCL\USERS05.DBF' size 30G autoextend on;
需要注意的是新增的dbf文件是会直接占用硬盘内存的,看大家需求创建新DBF,不要创建一个过大而又用不完的.
增加dbf文件后表空间足够装下我们的数据了,执行导入,无错误,导入成功。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对安科网的支持。
相关推荐
bfcady 2020-08-16
Hody 2020-08-16
FightFourEggs 2020-08-16
流云追风 2020-07-04
dataminer 2020-06-25
lklong 2020-11-22
oraclemch 2020-11-06
shilukun 2020-10-10
周嘉笙 2020-11-09
zhuzhufxz 2020-09-16
数据库设计 2020-08-16
yanghuatong 2020-08-16
dbasunny 2020-08-16
罗罗 2020-08-16
ihuaqiang 2020-08-16
choice0 2020-07-30
娜娜 2020-07-28
solarspot 2020-07-28
踩风火轮的乌龟 2020-07-26
娜娜 2020-07-20
xwb 2020-07-19
娜娜 2020-07-18
娜娜 2020-06-22
zhangchaoming 2020-06-21