oracle 老用户数据导入新建用户

时间:2023-03-09 04:08:08
oracle 老用户数据导入新建用户

$sqlplus/nolog          #使用PLSQL进入oracle
SQL>conn/as sysdba    #进入sysdba权限
CREATE DIRECTORY datadir1 AS '/home/oracle/dump_dir'; #数据库定义目录变量

mkdir -p /home/oracle/dump_dir #宿主机创建创建系统真实目录
GRANT READ,WRITE ON DIRECTORY datadir1 TO xxx ;

GRANT READ,WRITE ON DIRECTORY datadir1 TO yyy ; #授权给userxx变量目录权限 exp 和imp  2个用户A.B都需要操作
grant EXP_FULL_DATABASE to XXX; #授权给XXX所有数据库导出权限
alter user XXX account unlock; #解锁scott

chmod 777 /home/oracle/dump_dir #对真实目录读写权限开放
expdp 用户/密码@p2p DIRECTORY=datadir1 DUMPFILE=full.dmp FULL=y LOGFILE=datadir1:expschema.log #导出环境用户数据到指定位置

impdp 用户/密码@p2p DIRECTORY=datadir1 DUMPFILE=full.dmp REMAP_SCHEMA=A用户:B用户   EXCLUDE=USER full=y

\\\    remap_schema当你从A用户导出的数据,想要导入到B用户中去,就使用这个:remap_schema=A:B

EXCLUDE  排除表

创建表时会报如下错误:'no privileges on tablespace 'USERS'

原因在于users表空间中没有为bryan用户提供配额空间(在此默认的表空间为users)

GRANT UNLIMITED TABLESPACE TO bryan;