暂无图片
imp命令如何导入已经切割的dmp文件?
我来答
分享
U
user_yitai
2024-03-05
imp命令如何导入已经切割的dmp文件?

假如使用exp命令导出多个连续dmp文件,file1.dmp,file2.dmp,file3.dmp,file4.dmp

使用imp命令如何将这几个连续dmp文件一起倒入。避免每次系统提示手动输入下一个dmp文件名称。

现在使用的方法为imp aaa/aaa file=/local/dmp/file1.dmp log=file.log fromuser=useraaa touser=userbbb ignore=y 等待第一个file1文件倒入成功后根据提示输入第二个file2名称倒入。太麻烦了

我来答
添加附件
收藏
分享
问题补充
5条回答
默认
最新
subverter

你是如何exp导出来的(file=file%U.dmp),就用imp(file=file%U.dmp)如何导进去,而不是一个一个导入。

暂无图片 评论
暂无图片 有用 3
打赏 0
user_yitai
题主
2024-03-05
%U的序号不是01,02类型样式吗?这个是1,2的序号类型
user_yitai
题主
2024-03-05
刚刚试了试file=file1.dmp,file2.dmp,file3.dmp这样也可以。
lianR

你可以使用一个脚本来自动化这个过程。在这个脚本中,你可以使用一个循环来遍历所有的dmp文件,并使用imp命令将它们导入。以下是一个简单的bash脚本示例:

```bash
#!/bin/bash

for  file  in  /local/dmp/*.dmp
do
    imp  aaa/aaa  file=$file  log=file.log  fromuser=useraaa  touser=userbbb  ignore=y
done
```

这个脚本会遍历/local/dmp/目录下的所有.dmp文件,并使用imp命令将它们导入。你可以根据你的需要修改这个脚本。

注意:这个脚本假设你的Oracle数据库在你的bash  shell环境中是可用的,而且你有足够的权限来执行imp命令。如果你的环境不同,你可能需要修改这个脚本以适应你的环境。

另外,这个脚本没有处理任何错误。如果imp命令失败,脚本会继续尝试导入下一个文件。如果你需要处理错误,你可能需要添加一些错误检查和处理代码。

暂无图片 评论
暂无图片 有用 4
打赏 0

在Oracle数据库中,可以使用imp(导入)命令来导入已经切割的dmp文件。下面是使用imp命令导入切割的dmp文件的一般步骤:

  1. 确保你已经安装了Oracle客户端或者在服务器上有Oracle数据库实例。

  2. 打开命令行终端或者命令提示符。

  3. 使用以下命令格式运行imp命令:

    sql复制代码

    imp username/password@database file=<path_to_dmp_files> log=<path_to_log_file>
    复制
    • username:要导入到的数据库用户的用户名。
    • password:相应用户的密码。
    • database:要导入的数据库实例的连接字符串。
    • file:切割的dmp文件的路径和文件名。
    • log:日志文件的路径和文件名,用于记录导入过程。
  4. 根据需要,可以添加其他参数来指定导入选项,例如fromusertouser来指定源用户和目标用户,ignore来处理已存在的对象等。这些参数的具体使用方式可以参考相关的Oracle文档。

  5. 运行imp命令后,它将开始导入切割的dmp文件中的数据和对象到指定的数据库实例中。导入的进度和结果将会在日志文件中进行记录。

请注意,在使用imp命令之前,确保你已经具备适当的权限以及正确的数据库连接配置。此外,根据Oracle版本的不同,一些参数的名称和用法可能会有所差异,请查阅相关的官方文档以获得更详细的信息。

暂无图片 评论
暂无图片 有用 0
打赏 0
jieguo

file=file1.dmp,file2.dmp,file3.dmp用逗号隔开列出来就行了。

暂无图片 评论
暂无图片 有用 1
打赏 0
CHEN Y.F.

impdp username/password DIRECTORY=directory_name DUMPFILE=file1.dmp,file2.dmp,file3.dmp,file4.dmp LOG=log_file_name

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
大家遇到过这个问题吗?ohasd有2个状态,现在集群执行crsctl stat res -t是hang住的?
回答 1
使用命令crsctlstatusrestinit看看哪些服务有问题
oracle 无法启动,从实体机复制到虚拟机的,启动状态是 started
回答 2
已采纳
正确答案✅:你这个started状态代表是数据库启动到了nomount状态,需要执行alterdatabasemount;之后,再次执行alterdatabaseopen;即可打开数据库。或者直接sh
Oracle19C报错问题
回答 1
已采纳
这个问题我遇到过!可以参考MOS:RequirementsforInstallingOracleDatabase/Client19conOL8orRHEL864bit(x8664)(DocID2668
oracle中什么情况下数据文件里面的块的scn大于该数据数据文件头的scn??????
回答 1
异常断电,BUG,文件损坏,都有可能出现。
一主机多实例以SYS用户OS认证SQLPLUS登录问题
回答 2
已采纳
sqlplus/assysdba这种是服务器认证,不需要密码,@tnsname连接是需要用户名密码的,解决方法二选一,tnsnames.ora做好解析1、每次输入用户名密码sqlplussys/xxx
模拟故障ORA-00600: internal error code, arguments: [2662]
回答 3
11204打了补丁了吧?应该是minimumgigascn参数和10015event都用不了了。只能用oradebug,可以参考崔华的文章:数据恢复:隐含参数minimumgigascn被废弃后如何调
Oracle外键是否应该加索引?
回答 5
已采纳
Oracle外键不加索引是导致死锁的一个最主要的原因。这是因为,无论是更新父表主键,还是删除父表中的记录,都会在子表上加一个表锁(在这条语句完成前,不允许对子表做任何修改)。这会导致大量的数据被锁住,
在抓取awrrpt报告时报错,报错如图所示
回答 5
那就是没有生成awr报告,还有begin和end是必须输的。
存储有一个out MyCURSOR.cur_EFOUT的游标 ,那么我的Job需要怎么调用,直接写SQL调用吗?
回答 1
已采纳
你目前采取的方式就OK了,如果不想再嵌套一个存储过程,你可以把你这个新的存储过程里的代码,去掉createorreplaceprocedure…is,在首行加上declare,把这一整段都放到job中
mysql和oracle有ss()这个函数吗?
回答 2
已采纳
应该是自定义函数。mysql(root@localhost)[(none)]16:49:37&gt;selectss();ERROR1305(42000):FUNCTIONssdoesnotexist