如何将Linux服务器上的数据库拷贝到另一个服务器上(使用expdp/impdp命令)

1.xshell下载及安装:xshell官网下载及安装

2.在xshell中新建会话:教你怎么使用xshell远程连接linux服务器

3.与数据库所在服务器建立连接
    1)登陆系统用户root
    2)切换系统用户:输入su - oracle,切换系统用户为oracle(注意,“-”和“oracle”中间有一个空格)
如何将Linux服务器上的数据库拷贝到另一个服务器上(使用expdp/impdp命令)
    3)连接数据库:
    输入sqlplus /nolog来启动sqlplus,然后输入conn database_username/database_password来连接数据库。
    如果是数据库管理员,可以直接通过输入sqlplus / as sysdba来连接数据库。
如何将Linux服务器上的数据库拷贝到另一个服务器上(使用expdp/impdp命令)
    4)创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等数据库管理员创建。(这个逻辑目录指定了导出文件的保存位置)(点击查看更多directory操作
    create directory dpdata1 as '/home/oracle';
    5)查看数据库的表空间名称。
    select username,default_tablespace from user_users;
    (查看当前用户的角色  --  select * from user_role_privs;
        查看当前用户的系统权限  --  
select * from user_sys_privs;
        查看当前用户和表级权限  --  select * from user_tab_priv
s
        查看用户下所有的表  --  select * from user_tables)
    6)按用户导出数据,一般情况下,按用户导出的数据就够用了,scott是用户名,tiger是密码。
    注意,如果是本地数据库不要加@orcl!!
    expdp scott/[email protected] schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
4.通过xftp工具来将服务器上的导出文件expdp.dmp传到本地,再传到目标服务器。
    通过点击xshell上的这个按钮可以直接获取下载地址进行下载,下载安装后再点击就会自动启动xftp并且连接好当前服务器。
如何将Linux服务器上的数据库拷贝到另一个服务器上(使用expdp/impdp命令)
    xftp:(点击查看xshell如何关联xftp快速上传和下载文件
如何将Linux服务器上的数据库拷贝到另一个服务器上(使用expdp/impdp命令)
5.在目标服务器将刚才的expdp.dmp文件导入到目标数据库中。
    1)通过新建会话来连接目标服务器,切换到oracle会话。

    su - oracle
    2)使用数据库管理员来连接数据库。
    
sqlplus / as sysdba
    3)创建逻辑目录。(点击查看更多directory操作
    create directory dpdata1 as '/home/oracle';
    4)创建新的数据库用户并授权。(点击查看更多用户操作和权限说明
    create user 用户名 identified by 口令[即密码];
    grant connect, resource to 用户名;
    5)创建表空间,一般不创建,使用默认表空间即可。
    (点击查看如何创建表空间
    6)查看当前表空间的名称。(点击查看更多select操作
    select username,default_tablespace from user_users;
    7)如果当前表空间的名称和导出数据库的表空间的名称不一样,有两种方式解决:(默认表空间的名称是USERS)
    (注意:要导的数据库表空间和需要导入的数据库表空间的名称必须相同!!)
    方式一:更改当前表空间的名称。
    alter tablespace  USERS rename to TEST;
    方式二:在导入数据库的时候在impdp语句的末尾加上参数remap_tablespace=source:target
    source -- 导出dmp文件的表空间名
    target -- 要导入数据的表空间名

    8)通过impdp命令按用户名导入数据库到目标数据库。
    impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;
    (注意:如果导入失败必须删除表空间和用户名后再重新导入,默认表空间删除的时候需要在用户名后面添加dascade
    (点击查看如何删除表空间和用户及级联关系
6.导入完成后输入exit,退出

补充:Linux常用命令大全