前言
前幾天導(dǎo)入一個大容量dmp數(shù)據(jù)文件,報一個600錯誤,咨詢網(wǎng)上的解決方法,按上面的處理一圈也沒有整好,最后咨詢組里一個大神,出現(xiàn)此錯誤 思路是,單個數(shù)據(jù)文件大小最大為32G,分析數(shù)據(jù)庫后解決如下:
錯誤情況:

解決方法:在保證我們導(dǎo)入sql無誤的情況下,檢查當(dāng)前用戶所在表空間:
select username,default_tablespace from user_users;

可以看到,我們當(dāng)前使用的是users表空間,下面檢查當(dāng)前使用表空間的使用率:
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_Pctfrom (select tablespace_name, sum(bytes) / 1024 / 1024 as MBfrom dba_free_spacegroup by tablespace_name) free,(select tablespace_name, sum(bytes) / 1024 / 1024 as MBfrom dba_data_filesgroup by tablespace_name) totalwhere free.tablespace_name = total.tablespace_name;
在未給表空間加dbf文件前,表空間使用率接近99%,自此分析出為什么oracle/16073.html">oracle報600錯誤了,數(shù)據(jù)文件爆滿溢出,導(dǎo)入數(shù)據(jù)后會被回滾的,解決方式就是加dbf數(shù)據(jù)文件.
alter tablespace USERS add datafile 'H:/APP/16489/ORADATA/ORCL/USERS03.DBF' size 3G autoextend on;
了解到我導(dǎo)入的數(shù)據(jù)文件較大,直接加了兩個30G的dbf文件,以備后患
alter tablespace USERS add datafile 'H:/APP/16489/ORADATA/ORCL/USERS05.DBF' size 30G autoextend on;
需要注意的是新增的dbf文件是會直接占用硬盤內(nèi)存的,看大家需求創(chuàng)建新DBF,不要創(chuàng)建一個過大而又用不完的.

增加dbf文件后表空間足夠裝下我們的數(shù)據(jù)了,執(zhí)行導(dǎo)入,無錯誤,導(dǎo)入成功。

總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對VeVb武林網(wǎng)的支持。
新聞熱點
疑難解答
圖片精選