Oracle重新导入数据

    xiaoxiao2023-10-02  155

    一、登入账号

    Oracle用system账号登入,密码Ss123456(根据自己数据库设置来)

    二、删除用户

    drop user IFINCARSX cascade;

    注意:删除用户时该用户不能有在登入的状态。检查方法如下:

      select saddr,sid,serial#,paddr,username,status from v$session where username is not null;

    使用下面的sql语句删除session.如果出现删了又有新的情况注意检查是否有地方在不断建立数据库连接,清理相关session后再使用上面的drop语句删除用户。

    alter system kill session '135,89' ;

    三、删除表空间

    drop tablespace IFINCARZX_DATA including contents and datafiles cascade constraint;

    四、创建新的表空间

    create tablespace IFINCARZX_DATA logging datafile 'E:\soft\Oracle\product\11.2.0\dbhome_1\oradata\IFINCARSXDATA\IFINCARSXDATA.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local;

    此处的IFINCARSXDATA.dbf是表空间文件,指定路径名称后会自动生成。

    五、在新的表空间下创建指定用户

    create user IFINCARSX identified by IFINCARSX default tablespace CastPMS_DATA temporary tablespace temp;

    六、授予用户权限

    grant connect,resource,dba to IFINCARSX;

    七、删除旧的导包目录,生成新的导包目录

    DROP DIRECTORY DMPDIR; CREATE OR REPLACE DIRECTORY DMPDIR AS 'E:\';

    导包目录可以随便定,建立好以后将dmp包放在该目录下面

    八、开始导包

    用管理员省份打开cmd,输入以下指令:

    impdp IFINCARSX/IFINCARSX directory=DMPDIR table_exists _action=replace DUMPFILE=IFINCAR20190522.dmp full=y

    注意:此处的DMPDIR为之前生成的导包目录名称,DUMPFILE的值只能为包的名称,不能包含路径。输入命令回车后等待导入成功!

    九、乱码问题

      在导包时可能会遇到乱码的问题。注意检查两处地方。

    第一处:

     

    第二处:

          打开cmd窗口,在命令行输入 “chcp 65001” 。(65001代表编码格式为utf-8)

    最新回复(0)