Jor*_*hez 0 oracle-10g users impdp
我在创建 Oracle 10.2.0.4 实例和从其他环境导入转储时遇到问题。我在 AIX 下使用 Oracle。
我使用了 ksh 脚本,除了创建用户外,一切正常。
之后我创建了默认用户,用于连接到数据库和其他工作模块。尝试导入转储时出现问题。
export ORACLE_SID=HISTO;
sqlplus / as sysdba
CREATE USER ANC IDENTIFIED BY "xxxxxxx";
grant connect, create session, imp_full_database to ANC;
commit;
Run Code Online (Sandbox Code Playgroud)
尝试导入 de dump 时的错误如下。
用于加载转储的命令:nohup impdp ANC/xxxxxx DIRECTORY=MIG11G DUMPFILE=dump_histo.expdp LOGFILE=impdp_29102013.log schemas=HISTO &
nohup.out 文件的输出:
Import: Release 10.2.0.4.0 - 64bit Production on Lundi, 23 Décembre, 2013 18:51:22
Copyright (c) 2003, 2007, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Data Mining and Real Application Testing options
ORA-31626: job does not exist
ORA-31633: unable to create master table "ANC.SYS_IMPORT_SCHEMA_05"
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT", line 871
ORA-01950: no privileges on tablespace 'TOOLS'
Run Code Online (Sandbox Code Playgroud)
我的问题:没有让系统用户加载转储文件是否正常?
为什么转储文件加载失败?
小智 5
正如 FreshGrinchOfSO 所说,您收到的错误意味着用户 ANC 在 TOOLS 表空间上没有任何配额。从您的代码来看,您的默认永久表空间似乎是 TOOLS(而不是像往常一样的 USERS)。
SELECT * FROM database_properties WHERE property_name LIKE 'DEFAULT%TABLESPACE';
PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
------------------------------ -------------------- ----------------------------------------
DEFAULT_TEMP_TABLESPACE TEMP Name of default temporary tablespace
DEFAULT_PERMANENT_TABLESPACE USERS Name of default permanent tablespace
Run Code Online (Sandbox Code Playgroud)
否则,您可以像这样创建用户 ANC:
CREATE USER anc IDENTIFIED BY anc
DEFAULT TABLESPACE tools;
Run Code Online (Sandbox Code Playgroud)
要在 TOOLS 上验证 ANC 的配额,请使用以下查询:
SELECT tablespace_name, username, bytes, max_bytes FROM dba_ts_quotas;
Run Code Online (Sandbox Code Playgroud)
您将获得“未选择行”。要在 TOOLS 上为 ANC 分配配额,您可以按以下步骤操作:
expdp histo/passwd estimate_only=y NOLOGFILE=y
..
Total estimation using BLOCKS method: 1.256 KB
..
ALTER USER anc QUOTA 5m on tools; -- a x3, safety margin :-)
Run Code Online (Sandbox Code Playgroud)
然后执行导入:
impdp anc/anc directory=MIG11G dumpfile=dump_histo.expdp schemas=histo
Run Code Online (Sandbox Code Playgroud)
如果作业似乎已暂停,请检查警报日志文件中的错误。例如:
statement in resumable session 'ANC.SYS_IMPORT_SCHEMA_01' was suspended due to
ORA-01536: space quota exceeded for tablespace 'TOOLS'
Run Code Online (Sandbox Code Playgroud)
然后,需要增加配额,这样作业会自动恢复。
statement in resumable session 'ANC.SYS_IMPORT_SCHEMA_01' was resumed
Run Code Online (Sandbox Code Playgroud)
查看所有当前工作:
sqlplus / as sysdba
SQL> SELECT job_name, state FROM dba_datapump_jobs;
Run Code Online (Sandbox Code Playgroud)