怎么将oracle数据库的数据迁移

本文详细介绍如何使用Oracle数据库命令行工具进行数据的导出与导入,包括设置目录、授予权限、导出数据、创建表空间、导入数据等步骤。

打开要导出数据的PC,进入cmd界面

 

先进入数据库输入sqlplus,账号system密码508956.有权限的账户密码

 

2.

create directory dir_555 as 'd:/asd169';

到随便一个地方创建一个文件夹,随便起名asd169(不要有中文),自己手动创建

给文件夹一个DIR名字,这里是dir_555

 

 

 

输入Grant read,write on directory dir_555 to kbstest54;

给用户读写权限

 

回到CMD,不要在SQL模式下

expdp kbstest54/kbstest54@orcl DIRECTORY=dir_555 dumpfile=fu222.dmp schemas=kbstest54 logfile=kbstest54.log;

(expdp 账户/密码 数据库的名字 之前写的标记的名字 给DUMPFILE起文件名(随意), 要导出的方案的列表 (登录方案) LOG名字(如果你要导出日志))

directory=dir_dp必须放在前面,如果将其放置最后,会提示 ORA-39002: 操作无效

 

 

指令成功

 

 

没有提示错误

打开文件夹看到这两个文件

 

导出完成

复制这两个文件

 

 

在要导入数据的电脑上创建一个文件夹,起名asd69,我们选择同样的名字和地址

 

数据库创建用户

 

用户名和表空间名字必须和原数据库一致

如果EM打不开,下面是例句

create tablespace xiaoitest datafile 'D:\data' size 500m;建立表空间和地址,大小。一般设定10G,追加1G。

alter user kbstest54 default tablespace xiaoitest;给用户指定表空间

 

复制完成后,

 

进入CMD界面,进入数据库,用SYSTEM,给这边的文件夹一个DIR名字

create directory dir_555 as 'd:/asd169';

 

 

 

给用户文件夹的读写权限Grant read,write on directory dir_222 to kbstest54;

 

 

要导入日志必须修改注册表(此处修改的是计算机的注册表,改一次就行)

运行 - regedit -查找 键值 NLS_LANG 将字符集 SIMPLIFIED CHINESE_CHINA.ZHS16GBK 修改为AMERICAN_AMERICA.AL32UTF8

注册表路径:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG(或者直接搜索NLS_LANG)

 

准备工作做完,开始导入,退出SQL,在cmd下输入

impdp kbstest54/kbstest54 directory=dir_555 dumpfile=fu222.dmp schemas=kbstest54 logfile=kbstest54.log;

 

 

 

统计两边的表数量,进入用户名KBSTEST54

select count(table_name) from user_tables;(直接使用这一句)

 

 

表数量一致没有丢失。

完成

 

此处注意:用界面登录oracle数据库,只能用sys用户名;在cmd里面登录oracle数据库,只能用system用户名登录

 

转载于:https://www.cnblogs.com/xcgz/p/5644086.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值