项目开发中难免遇到会让备份数据库和数据库导入的问题,今天获得一个dmp文件,为了方便在本地开发于是在本地安装的虚拟机vm12中安装了win7并安装了Oracle11g服务端,将其导入到本地oracle数据库中
导入的命令是
impdp share/share directory=dump_dir dumpfile=share.dmp remap_schema=share:test remap_tablespace=share:test logfile=impdp.log
上面的命令是最终的命令,如果上来就在命令行执行上面的命令则会报错,错误的界面忘了截图了
报错原因可能是
1.directory目录未创建
2.表空间对应不上
3.schema对应不上
首先说明一下上面的参数
directory:存放dmp文件的目录,不管导入导出都要创建此目录
dumpfile:导入或者导出的dmp文件
remap_schema:源库与导入的数据库对应的schema
remap_tablespace:源库与导入的数据库对应的表空间
logfile:导入过程中生成的日志文件,如果自己不命名会自动生成import.log日志文件
另外还有include exclude参数用于过滤要导入的表
所以导入之前未见目录的先创建目录
使用管理员登录 sqlplus "/as sysdba"
如果没有创建用户先创建用户并授权
create user test identified by 123456 default tablespace test;
grant connect, resource, dba to test;
创建目录
select * from dba_directories;//查询创建的目录
create directory dump_dir as 'E:/dump';
grant read, write on directory dump_dir to test;
dump_dir为自定义目录名称
as后的目录自己手动创建,然后将对应的dmp文件放入里面执行上面完整的命令即可