oracle导入数据 在别处拷贝来的dmp文件,想导入到自己机器上的oracle数据库里,请问需要怎么 *** 作

oracle导入数据 在别处拷贝来的dmp文件,想导入到自己机器上的oracle数据库里,请问需要怎么 *** 作,第1张

dos下用imp命令,例如
imp username/password@实例名 file=你的dmp文件 [fromuser=导出时的username]
[touser=导入时的username] [tables=表名1,表名2等等 ]
方括号里的可以不写,没有tables= 表示导入全部
oracle中imp命令详解
Oracle的导入实用程序(Import utility)允许从数据库提取数据,并且将数据写入 *** 作系统文
件。imp使用的基本格式:imp[username[/password[@service]]],以下例举imp常用用
法。
1 获取帮助
imp help=y
2 导入一个完整数据库
imp system/manager file=bible_db log=dible_db full=y ignore=y
3 导入一个或一组指定用户所属的全部表、索引和其他对象
imp system/manager file=seapark log=seapark fromuser=seapark
imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)
4 将一个用户所属的数据导入另一个用户
imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy
imp system/manager file=tank log=tank fromuser=(seapark,amy) touser=(seapark1, amy1)
5 导入一个表
imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)
6 从多个文件导入
imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4) log=paycheck,filesize=1G full=y
7 使用参数文件
imp system/manager parfile=bible_tablespar
bible_tablespar参数文件:
#Import the sample tables used for the Oracle8i Database Administrator's
#Bible
fromuser=seapark touser=seapark_copy file=seapark log=seapark_import

移动到另外一个位置的话需要修改数据库的控制文件,这种 *** 作都比较危险,不建议在没有经验的情况下进行尝试,磁盘快满了的话 可以定期清理各种日志文件比如$ORACLE_BASE/admin/$ORACLE_SID/ 路径下的各种dump日志,还有$ORACLE_HOME/network/log里面的监听日志,另外再进行表空间的创建或数据文件的添加时,另外指定一个路径即可。

Oracle 数据库迁移文档可以按如下格式进行写:
一、需求分析:
数据库所有文件(数据文件、日志文件、临时文件、控制文件)都存放在光纤存储中,但是光纤存储使用时间过长,超过3年,经常出现一些问题,而且光纤存储需要厂家维护,维护方面不是很方便,需要将数据库文件迁移到nas存储中。
二、 *** 作步骤:
1:具体需求
2:保存现有数据文件、控制文件、临时文件、日志文件位置
3:停止监听,并关闭数据库
4:移动所有数据文件、控制文件、临时文件、日志文件到新的位置
5:启动数据库到nomount状态,并更改控制文件位置,关闭数据库
6:启动数据库到mount状态
7:更改数据文件、临时文件、日志文件位置
7:打开数据库
8:重启验证

假设要将SQL Server中的Northwind数据库中的Products表导出到Oracle的Scott用户 首先需要有安装SQL Server企业版 1.打开工具: 开始->程序-> 导入和SQL Server数据导出数据 2.下一步,选择数据源 [数据源]选择“用于SQL Server的Microsoft OLE DB提供程序”,这应该是缺省值。 [服务器]选择要导出数据的服务器,如果是本机,选择(local) [数据库]选择要导出的数据所在的库,这里选择Northwind 3.下一步,选择目的 [目的]选择Microsoft ODBC for Oracle [DSN]选择用户/系统DSN一项,然后在下拉列表框中找一个已经连接到了Scott用户的DSN名称。 如果下拉列表中没有,点下拉列表框右侧的[新建],出现创建新数据源界面。 接下来选择系统数据源,下一步,在驱动程序列表中选择Microsoft ODBC for Oracle 下一步,完成,出现Microsoft ODBC for Oracle安装界面 [数据源名称]随便输入,比如sss [说明]可以不填 [用户名称]填入要SQL Server数据导出到的Oracle用户名称,这里是scott [服务器]填入要连接到Oracle服务器所使用的服务名,比方说使用sqlplus scott/tiger@server1可以连接到数据库,那么这里就填入server1。如果本机就是服务器,使用sqlplus scott/tiger即可连接到数据库,这里空着不填即可。 这样就创建好了一个数据源sss,保证下拉列表框中选择了sss一项。 [用户名]填入SQL Server数据导出到的Oracle用户名称,这里是scott [密码]填入SQL Server数据导出到的Oracle用户使用的密码,这里是tiger 4.下一步,指定表复制或查询 如果要导出的内容是整个表,选择[从源数据库复制表和视图] 如果要导出的内容是表的一部分列,行,可以选择[用一条查询指定要传输的数据],这时需要写出一个查询语句 这里选择第一项[从源数据库复制表和视图] 5.下一步,选择源表和视图 点中要导出的表Products一行的复选框,目的、转换两栏就会出现内容。 目的可以用来选择表名。转换可以用来修改列的数据类型或是整个建表的SQL语句 6.下一步,保存、调度和复制包 选中立即运行 7.下一步,正在完成DTS导入/导出向导 8.完成 提示“成功地将n个表从Microsoft SQLServer复制到了Oracle” 9.完成,关闭导入导出程序 注意:因为oracle的表名都是大写的,而SQL的表可能是大小混写的,所以导入后在oracle里查不到该表,比如这个Products表在oracle里查询就应该写成select from scott."Products";为了方便查询可以通过批量修改表名为大写以便后面导数据的工作。

如果你熟悉Oracle的架构,那么答案是在A SHutDown Instance COPY所有的密码文件,pfile。spfile,建立一样的instanse用的目录, 所有数据文件,redo文件,控制文件到B机器上,用ORADIM建立服务(假设是Windows) 启动 完成如果你不熟悉ORACLE的架构1 在B机器上按你A机器上一样的名字,地方 方法 建立一个instance 2 AB两台机器的instance全部关闭3 A机器上的所有数据文件,redo文件,控制文件COPY到B机器 覆盖4 启动B数据库 OK 完成

可用图形界面或者命令导入:

图形界面需要借助第三方工具plsql,方法如下:

1、登录到要导入的数据库及用户。

2、依次点击“工具”——“导入表”。

3、上方选择“oracle导入”,下方找到dmp的文件,然后点击“导入”等待完成即可。

命令导入:

1、win键+R键,进入命令提示符。

2、进到dmp文件所在文件夹:

3、输入如下命令:

imp 被导入用户名/密码@实例名 file=文件名dmp log=日志dmp fromuser=导出用户 touser=导入用户

输入后按回车键,等待导入完成即可。

说明:第三点中中文部分,请根据实际情况填写。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/yw/13337321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-17
下一篇 2023-07-17

发表评论

登录后才能评论

评论列表(0条)

保存