• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

对Oracle数据库中某个用户数据的复制

mysql 搞代码 4年前 (2022-01-09) 14次浏览 已收录 0个评论
文章目录[隐藏]

http://blog.sina.com.cn/s/blog_68c266e701016dy3.html 将一台计算机(暂且称为计算机A)上oracle数据库中的task用户的所有表复制到另外一台计算机(暂且称为计算机B)的oracle数据库中。注意:为了不修改程序等其他项,在计算机B的oracle中创建的表空间、

http://blog.sina.com.cn/s/blog_68c266e701016dy3.html

将一台计算机(暂且称为计算机A)上oracle数据库中的task用户的所有表复制到另外一台计算机(暂且称为计算机B)的oracle数据库中。注意:为了不修改程序等其他项,在计算机B的oracle中创建的表空间、用户等应该和计算机A中的一样(oracle数据库中用户名为task,密码为task,表空间为users)。

1复制前的准备工作

1.1首先以sys或者system的身份登录

安装了oracle10g之后,在开始-所有程序-找到oracle10g的相关启动程序。双击SQL Plus进行登陆,或者用PLSQL Developer登陆。在此我们使用的是图形化界面的PLSQL Developer,操作起来比较方便。

1.2创建表空间 (由于计算机A上的oracle数据库用的是users表空间,所以在此不用创建表空间,如果Aoracle用的不是系统自带的表空间,则要创建。)

在创建表空间之前应该先查询计算机A中kby表空间的大小。

selecttablespace_name,sum(bytes)/1024/1024 from dba_data_files wheretablespace_name=’kby’ group bytablespace_name;

通过查询,查询结果如图1-5所示。

图1-5 表空间大小查询结果

从图中可以看出,KBY的全部表空间为100M,但是还有99M空闲。接下来在计算机B的oracle数据库中创建表空间。同时在左边的Objects下的表空间Tablespace文件夹下找到KBY表空间。

createtablespace kby datafile ‘d:\task\kby.dbf’ size 10M autoextend onnext 10m maxsize 100m extent management local;

1.3 创建新用户task,并和表空间建立关系

createuser task identified by cloud default tablespaceusers;

创建成功会提示 User created,同时在左边的Objects下的用户Users文件夹下找到TASK用户。

1.4 给用户授权

grantconnect,resource,dba to task;

在命令窗口输入以上命令,就会出现Grantsucceeded提示。

2 导出数据库中task用户的所有表

方法1:打开DOS的命令窗口,输入命令如下,运行结果如图1-9和1-10所示。

exp task/task@orcl file=c:\task\task.dmp full=y

图1-9

图1-10

此时在c:\task文件夹下可以看到task.dmp文件。

方法2:使用PLSQL Developer导出

说明:

1.expuserid=system的用户/system用户的密码@服务器名,owner用来指定执行导出操作的方案。

2.查询数据库服务名:

方法一:select valuefrom v$parameter where name =’service_name’;
方法二:show parameter service_name;

方法三:select name fromv$database;

方法三:在参数文件中查询。查看tnsnames.ora 的连接,有个SID,SID就是服务名了。

在此,我们用第二种方法,用system登陆,如图1-12所示。

1-12服务器名的查询

3 导入从计算机A中导出的文件

方法一:进入DOS命令窗口,输入命令,运行结果如图1-14所示。

imptask/task@orcl file=c:\task\task.dmp full=y

图1-14

导入完成之后,用户task登陆,在Objects中可以看到task用户的tables文件夹中有很多表,与计算机Aoracle数据库task用户的表相同,导入成功。

方法二本文来源gaodai$ma#com搞$代*码*网:跟导出一样,可以使用PLSQLDeveloper导入,task用户登陆,然后点击tools ->importtables-> Oracle Export选择选项,导入task.dmp文件。

注:如果有什么问题,可以提问哦!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:对Oracle数据库中某个用户数据的复制

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址