以前導入一個大容量dmp數據文件,報一個600錯誤,諮詢網上的解決方法,按上面的處理一圈也沒有整好,最後諮詢組裏一個大神,出現此錯誤 思路是,單個數據文件大小最大爲32G,分析數據庫後解決以下:sql
錯誤狀況:數據庫
解決方法:在保證咱們導入sql無誤的狀況下,檢查當前用戶所在表空間:oracle
select username,default_tablespace from user_users;spa
能夠看到,咱們當前使用的是users表空間,下面檢查當前使用表空間的使用率:blog
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數據文件.table
alter tablespace USERS add datafile 'H:\APP\16489\ORADATA\ORCL\USERS03.DBF' size 3G autoextend on;sed
瞭解到我導入的數據文件較大,直接加了兩個30G的dbf文件,以備後患
alter tablespace USERS add datafile 'H:\APP\16489\ORADATA\ORCL\USERS05.DBF' size 30G autoextend on;file
須要注意的是新增的dbf文件是會直接佔用硬盤內存的,看你們需求建立新DBF,不要建立一個過大而又用不完的.select
增長dbf文件後表空間足夠裝下咱們的數據了,執行導入,無錯誤,導入成功。