Oracle利用数据泵迁移用户
2015-01-09 09:25
288 查看
一.利用数据泵将数据导出
1.1.确定字符集:
select * from v$nls_parameters;或
select userenv('language') from dual;
1.2.设置客户端字符集(Windows)
set NLS_LANG = NLS_LANGUAGE_NLS_TERRITORY.NLS_CHARACTERSET1.3.确定schema的对象所占用表空间
SQL> Select distinct segment_type,tablespace_name SQL> From dba_segments SQL> Where owner='NC2010'; SEGMENT_TYPE TABLESPACE_NAME ------------------ ------------------------------ TABLE NNC_DATA03 TABLE NNC_DATA02 LOBSEGMENT NNC_DATA01 INDEX NNC_INDEX01 INDEX NNC_DATA01 INDEX NNC_INDEX02 TABLE NNC_DATA01 LOBINDEX NNC_DATA01 INDEX NNC_INDEX03 9 rows selected. SQL>
1.4 查看用户默认表空间
select username,default_tablespace from user_users;1.5.用数据泵导出数据
--创建directory 并赋权 SQL> conn / as sysdba; SQL> create directory backup as 'e:\backup'; SQL> grant read,write on directory backup to NC60; SQL> select * from dba_directories --导出schema [oracle@localhost ~]$ expdp nc60/nc60 DIRECTORY=backup DUMPFILE=tianlesoftware.dmp SCHEMAS=NC60 logfile=exp.log; --注,如果源库与目的库oracle版本不同,导出时需指定version参数。
二.将dump文件导入RAC或单实例
2.1 确定字符集
select userenv('language') from dual;2.2 设置客户端字符集(linux)
export NLS_LANG = NLS_LANGUAGE_NLS_TERRITORY.NLS_CHARACTERSET2.3 检查RAC运行状态
2.4 创建相关用户和表空间
--查看数据文件 select file_name from dba_data_files; --创建表空间(与1.3查询结果相同) --SQL> create tablespace NNC_DATA01 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --SQL> create tablespace NNC_DATA02 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --SQL> create tablespace NNC_DATA03 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --SQL> create tablespace NNC_INDEX01 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --SQL> create tablespace NNC_INDEX02 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --SQL> create tablespace NNC_INDEX03 datafile '+DATA/orcl/datafile/tianlesoftware.dbf' size 50m; --创建用户 SQL> create user NC60 identified by NC60 default tablespace NNC_DATA01 temporary tablespace temp; --赋予权限 Grant resource,connect,dba to NC60;
2.5 创建导入directory
SQL> create directory backup as '/backup';SQL> Grant read,write on directory backup to NC60;
2.6 导入数据
[oracle@rac1 u01]$ export ORACLE_SID=orcl1[oracle@rac1 u01]$ impdp nc60/nc60 DIRECTORY=BACKUP DUMPFILE=NC60.dmp SCHEMAS=NC60 logfile=impdp.log;
注,如果源库与目的库oracle版本不同,导入时需指定version参数。
相关文章推荐
- oracle 10g 利用exp 和 imp exp 移动某个用户的数据
- 利用Sqoop把Oracle数据迁移到HDFS、Hive
- ORACLE常用命令总结-用户如何有效地利用数据字典
- Oracle利用外部表实现数据的迁移
- Oracle逻辑迁移某业务用户及数据
- 利用oracle冷备份做数据迁移与恢复
- oracle expdp impdp 数据迁移 备份恢复某个用户数据
- 用户如何有效地利用oracle数据字典
- Oracle_利用exp和imp迁移数据
- 【Oracle】利用管道导入用户数据
- oracle用户数据迁移
- 如何迁移Oracle的数据文件
- Oracle中用户数据的备份(导入新用户)
- Oracle数据文件位置迁移笔记
- 写LINUX shell脚本 自动备份ORACLE用户下的表 保留30天数据
- 编写OracleMembershipProvider,让SharePoint2007使用Oralce中的用户数据实现Form验证。 (第五天)
- 如何利用oracle中的数据字典
- 用户如何有效地利用数据字典
- 用户如何有效地利用数据字典
- 编写OracleMembershipProvider,让SharePoint2007使用Oralce中的用户数据实现Form验证。 (第四天)