关于为RDS部署数据,导入导出等操作,更多详细内容可参见[官方文档]。
为RDS部署数据,有一点需要注意,RDS数据库只打开了1521端口,所以所有操作都只能通过1521端口的数据库连接进行。
在源数据库中:
--查看数据库目录:
select * from dba_directories t;
--数据导出(操作系统命令行执行,而不是数据库SQL命令行):
expdp TESTDB/TESTDB schemas=TESTDB dumpfile=expdp.dmp directory=DATA_PUMP_DIR
在目标数据库,也就是RDS数据库中:
--创建表空间:
create tablespace TESTDB;
--创建用户
create user TESTDB identified by TESTDB default tablespace TESTDB;
--给用户授权
grant connect, resource, dba to TESTDB;
在源数据库中:
--建立dblink
create database link to_rds connect to TESTDB identified by TESTDB
using ‘(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=<dns or ip address of remote db>)(PORT=1521))(CONNECT_DATA=(SID=orcl)))‘
注意将HOST对应的位置设置为服务器IP地址或域名。
--复制库文件到RDS库:
BEGIN
DBMS_FILE_TRANSFER.PUT_FILE(
source_directory_object => ‘DATA_PUMP_DIR‘,
source_file_name => ‘EXPDP.DMP‘,
destination_directory_object => ‘DATA_PUMP_DIR‘,
destination_file_name => ‘EXPDP_COPIED.DMP‘,
destination_database => ‘to_rds‘
);
END;
/
--导入库(操作系统命令行执行,而不是数据库SQL命令行):
impdp TESTDB@ORCLRDS DUMPFILE=EXPDP_COPIED.DMP DIRECTORY=DATA_PUMP_DIR full=y
--删除dblink
drop database link TO_RDS;
版权声明:本文为博主原创文章,未经博主允许不得转载。
亚马逊AWS学习——为oracle类型的RDS数据库部署数据
原文地址:http://blog.csdn.net/dongdong9223/article/details/47426575