文档章节

导出Windows服务器下的Oracle数据库并导入到Linux服务器下的Oracle数据库中

DavidBao
 DavidBao
发布于 2015/06/03 13:43
字数 1664
阅读 15
收藏 0

说明:

1、Windows Oracle数据库

操作系统:Windows Server 2008 R2

IP地址:192.168.0.128

Oracle数据库版本:Oracle11gR1

SID:orcl

端口:1521

Oracle相关账号:

账号:system 密码:123456

账号:OSYUNWEI 密码:OSYUNWEI

账号:OSYUNWEILOG 密码:OSYUNWEILOG

2、Linux Oracle数据库

操作系统:CentOS 5.9 64位

Oracle数据库版本:Oracle11gR1

Oracle数据库安装目录:/data/oracle/

IP地址:192.168.0.198

SID:orcl

端口:1521

Oracle相关账号:

账号:system 密码:123456

3、客户端

操作系统:Windows Server 2003 R2

IP地址:192.168.0.74

Oracle客户端版本:win32_11gR1_client

具体操作:

一、从客户端登录Windows Oracle数据库服务器导出Oracle数据库

导出Oracle数据库到本地D:\backup目录中

开始-运行-cmd 确定,打开命令操作界面

输入:

exp OSYUNWEI/OSYUNWEI@192.168.0.128/orcl owner=OSYUNWEI grants=y file=D:\backup\OSYUNWEI.dmp log=D:\backup\OSYUNWEI.log

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

回车,出现下面界面,正在导出数据,直到操作完成。

备注:

owner=OSYUNWEI #导出此用户的所有数据

grants=y #导出该用户下的表赋予其他用户的操作权限

file=D:\backup\OSYUNWEI.dmp #导出的路径

log= D:\backup\OSYUNWEI.log #导出时的操作日志

以相同的方法导出用户OSYUNWEILOG的数据

开始-运行-cmd 确定,打开命令操作界面

输入:

exp OSYUNWEILOG/OSYUNWEILOG@192.168.0.128/orcl owner=OSYUNWEILOG grants=y file=D:\backup\OSYUNWEILOG.dmp log=D:\backup\OSYUNWEILOG.log

回车,出现下面界面,正在导出数据,直到操作完成。

二、从客户端登录Linux Oracle数据库服务器导入Oracle数据库

1、从客户端登录Linux Oracle数据库服务器

开始-运行-cmd 确定,打开命令操作界面

输入:

sqlplus system/123456@192.168.0.198:1521/orcl

回车,出现下面界面说明连接成功

2、创建表空间

创建表空间OSYUNWEI_DATE

在操作界面输入下面的命令

CREATE TABLESPACE OSYUNWEI_DATE

DATAFILE '/data/oracle/oradata/OSYUNWEI_DATE.DBF' SIZE15000MREUSE AUTOEXTEND ON NEXT5MMAXSIZE UNLIMITED

LOGGING

ONLINE

BLOCKSIZE 8K

EXTENT MANAGEMENT LOCAL AUTOALLOCATE

SEGMENT SPACE MANAGEMENT AUTO;

备注:

OSYUNWEI_DATE #表空间名称

/data/oracle/oradata/OSYUNWEI_DATE.DBF #表空间路径

15000M #表空间大小

继续创建表空间:OSYUNWEILOG_DATE

CREATE TABLESPACE OSYUNWEILOG_DATE

DATAFILE '/data/oracle/oradata/OSYUNWEILOG_DATE.DBF' SIZE25000MREUSE AUTOEXTEND ON NEXT5MMAXSIZE UNLIMITED

LOGGING

ONLINE

BLOCKSIZE 8K

EXTENT MANAGEMENT LOCAL AUTOALLOCATE

SEGMENT SPACE MANAGEMENT AUTO;

3、创建临时表空间

创建临时表空间

CREATE TEMPORARY TABLESPACE OSYUNWEI_TEMP

TEMPFILE '/data/oracle/oradata/OSYUNWEI_TEMP.DBF'

SIZE1000M

AUTOEXTEND ON

NEXT50Mmaxsize2048m

EXTENT MANAGEMENT LOCAL;

继续创建临时表空间

CREATE TEMPORARY TABLESPACE OSYUNWEILOG_TEMP

TEMPFILE '/data/oracle/oradata/OSYUNWEILOG_TEMP.DBF'

SIZE1000M

AUTOEXTEND ON

NEXT50Mmaxsize2048m

EXTENT MANAGEMENT LOCAL;

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

4、创建用户,并指定该用户的表空间以及临时表空间

CREATE USER OSYUNWEI IDENTIFIED BY OSYUNWEI

DEFAULT TABLESPACE OSYUNWEI_DATE

TEMPORARY TABLESPACE OSYUNWEI_TEMP

PROFILE DEFAULT;

备注:

创建用户:OSYUNWEI 密码:OSYUNWEI

用户表空间:OSYUNWEI_DATE

用户临时表空间:OSYUNWEILOG_TEMP (也可以使用默认临时表空间TEMP)

继续创建用户OSYUNWEILOG

CREATE USER OSYUNWEILOG IDENTIFIED BY OSYUNWEILOG

DEFAULT TABLESPACE OSYUNWEILOG_DATE

TEMPORARY TABLESPACE OSYUNWEILOG_TEMP(也可以使用默认临时表空间TEMP)

PROFILE DEFAULT;

5、授予用户对表空间以及临时表空间的操作权限

GRANT CONNECT TO OSYUNWEI; #连接

GRANT RESOURCE TO OSYUNWEI;

GRANT UNLIMITED TABLESPACE TO OSYUNWEI; #不限制表空间

GRANT DBA TO OSYUNWEI; #授予用户DBA操作权限

GRANT CONNECT TO OSYUNWEILOG; #连接

GRANT RESOURCE TO OSYUNWEILOG;

GRANT UNLIMITED TABLESPACE TO OSYUNWEILOG; #不限制表空间

GRANT DBA TO OSYUNWEILOG; #授予用户DBA操作权限

6、从客户端导入备份数据到Linux Oracle数据库中

开始-运行-cmd 确定,打开命令操作界面

输入:

imp OSYUNWEI/OSYUNWEI@192.168.0.198/orcl ignore=y grants=y fromuser=OSYUNWEI touser=OSYUNWEI file=D:\backup\OSYUNWEI.dmp log=D:\backup\OSYUNWEI.log 

备注:

ignore=y  #不检查要导入的数据表结构,直接导入

grants=y  #导入相应用户权限

fromuser=OSYUNWEI #从原数据库OSYUNWEI用户导入数据

touser=OSYUNWEI #导入数据到新数据库用户OSYUNWEI中去

file=D:\backup\OSYUNWEI.dmp  #备份文件路

log=D:\backup\OSYUNWEI.log  #导入日志文件

以同样的方法导入OSYUNWEILOG的数据到Linux Oracle数据库中

imp OSYUNWEILOG/OSYUNWEILOG@192.168.0.198/orcl ignore=y grants=y fromuser=OSYUNWEILOG touser=OSYUNWEILOG file=D:\backup\OSYUNWEILOG.dmp  log=D:\backup\OSYUNWEILOG.log

三、从客户端连接Linux Oracle数据库

开始-运行-cmd 确定,打开命令操作界面

输入:

sqlplus OSYUNWEI/OSYUNWEI@192.168.0.198:1521/orcl

回车,出现下面界面,说明登录成功!

以同样的方法用OSYUNWEILOG用户登录数据库

sqlplus OSYUNWEILOG/OSYUNWEILOG@192.168.0.198:1521/orcl

出现下面的界面,登录成功!

扩展阅读:

1、Oracle11gR2中,当表无数据时,不分配segment,使用exp无法导出数据库中的空表

解决办法:

使用system账号登录数据库,执行以下代码

alter system set deferred_segment_creation=false scope=both; #默认参数为ture

2、Oracle数据库中解锁用户

使用systen账号登录数据库,执行以下代码

alter user OSYUNWEI account unlock; #解锁用OSYUNWEI

3、Oracle数据库修改用户默认表空间

用相应用户登录数据库

select a.property_name, a.property_value from database_properties a where a.property_name like '%DEFAULT%'; #查询用户信息

alter database default tablespace test; #修改用户默认表空间为test

alter database default temporary tablespace temp2; #修改用户默认临时表空间为temp2

4、关闭oracle登录密码大小写,即登录密码不区分大小写(方便使用Object Browser管理数据库)

使用system账号登录数据库,执行以下代码

SHOW PARAMETER SEC_CASE_SENSITIVE_LOGON #查询密码大小写是否开启

ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE; #关闭密码大小写

commit; #提交命令

系统运维  www.osyunwei.com  温馨提醒:qihang01原创内容 版权所有,转载请注明出处及原文链接

5、常用Oracle数据库操作命令

ALTER USER OSYUNWEI IDENTIFIED BY 123456; #修改用户OSYUNWEI密码为123456

DROP USER tztweb cascade; #删除用户,cascade参数表示级联删除

select * from dba_users; #查看用户信息

select username,password from dba_users; #查询用户和密码

select username,default_tablespace from user_users; #查看用户表空间

select * from user_role_privs; #查看用户角色

select * from user_sys_privs; #查看当前用户系统权限

select * from v$version; #查看数据库版本信息

select table_name from user_tables; #查看当前用户的表名

DROP TABLE XUESHENG; #删除表

drop tablespace USER_DATA; #删除表空间

drop tablespace USER_TEMP including contents and datafiles; #删除表空间,清空数据

GRANT CREATE DATABASE LINK TO OSYUNWEI; #数据库连接权限

GRANT SELECT ANY SEQUENCE,CREATE MATERIALIZED VIEW TO OSYUNWEI; #查询创建视图权限

GRANT ALL PRIVILEGES TO OSYUNWEI; #授权所有操作权限

REVOKE CONNECT, RESOURCE FROM OSYUNWEI; #取消授权

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; #修改密码默认180天过期为不限制

 

至此,导出Windows服务器下的Oracle数据库并导入到Linux服务器下的Oracle数据库中教程完成。

本文转载自:http://www.osyunwei.com/archives/5943.html

DavidBao
粉丝 114
博文 213
码字总数 126729
作品 0
昌平
私信 提问
加载中

评论(0)

oracle 问题

7------------- CentOS系统盘下载地址:http://ftp.twaren.net/Linux/CentOS/ 常用RPM包下载地址:http://rpmfind.net/linux/RPM/index.html 6------------- 某具体实例启动脚本文件: /$OR......

厚脸皮的tomsu
2009/08/31
228
0
解决Oracle 11g在用EXP导出时,空表不能导出

一、问题原因: 11G中有个新特性,当表无数据时,不分配segment,以节省空间 1、insert一行,再rollback就产生segment了。 该方法是在在空表中插入数据,再删除,则产生segment。导出时则可导...

yuanhotel
2016/01/08
109
0
oracle character

select * from nls_instance_parameters where parameter ='NLS_TERRITORY' or parameter ='NLS_LANGUAGE'; select * from nls_instance_parameters where parameter ='NLS_TERRITORY' or pa......

phacks
2014/08/18
121
0
Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

Oracle中对数据对象和数据的管理,无疑都是使用PL/SQL Developer来进行管理,该工具也提供给我们很多方便、快捷的操作,使得我们不再为Oracle本身丑陋、难用的UI而抱怨。由于我们一般都是建建...

长平狐
2012/06/11
128
0
Oracle如何实现创建数据库、备份数据库及数据导出导入的一条龙操作

Oracle中对数据对象和数据的管理,无疑都是使用PL/SQL Developer来进行管理,该工具也提供给我们很多方便、快捷的操作,使得我们不再为Oracle本身丑陋、难用的UI而抱怨。由于我们一般都是建建...

长平狐
2012/08/22
227
0

没有更多内容

加载失败,请刷新页面

加载更多

MySQL字符串截取的4个函数

1、从左开始截取字符串 left(str, length) 说明: left(被截取字段,截取长度) 例如: select left(content,200) as abstract from my_content_t 从左边(字符串开始位置)截取指定长...

fairy1674
29分钟前
65
0
Fedora 31 - 查杀木马

使用chkrootkit和rkhunter检查系统 #安装工具sudo dnf install chkrootkit rkhunter#修改配置##使用管理员邮箱地址sudo sed -i 's/^MAILTO=.*/MAILTO=admin@server.com/' /etc/sy......

wffger
37分钟前
54
0
检查目录是否存在,如果不存在则创建

我经常发现自己写的R脚本会产生大量输出。 我发现它更干净,可以将此输出放到自己的目录中。 我在下面编写的内容将检查目录是否存在并移入该目录,或者创建目录然后移入该目录。 有没有更好的...

javail
40分钟前
91
0
让你相见恨晚的Photoshop 使用技巧——用ps做后期渲染

无论是面对客户汇报方案还是在设计竞赛中脱颖而出,通过PS来渲染平面图都是至关重要的工作。无论何时,你的平面设计的出图质量便也是你的能力说明。 今天小编给大家带来真正的对建筑 / 规划/...

mac小叮当
43分钟前
80
0
推荐VSCode12个比较实用的插件

1、Auto Rename Tag ——自动重命名成对的HTML标记。假如你创建了一个<p>标记。现在你想更改它。有了这个软件,你只需要更改一个就行,另一个会自动修改。从理论上来说,使用这个软件可以把...

IT技术分享社区
48分钟前
102
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部