• ORACLE-DataGuard系列:逻辑standby搭建_oracle

    ORACLE-DataGuard系列:逻辑standby搭建_oracle

    ??? 准备: ??? 确认对象和语句能被standby支持 ??? 确保primary库中各表的行可被唯一标识 ??? 环境: ??? 操作系统:RED HAT LINUX ENTERPRISE 5 ??? ORACLE:?? 11.2.0.1.0 ??? PRIMARY: ??? IP:??? 192.168.1.11 ??? SID:? test ??? DB_UNIQUE_NAME:test ??? 安装路径:/oracle/oracle/product/11.2.0/dbhome_1 ??? 本地归档路径:/oracle/oradata/test/archive ??? PHYSICS STANDBY: ??? IP:??? 192.168.1.12 ??? SID:? dgtest ??? DB_UNIQUE_NAME:dgtest ??? 安装路径:/oracle/oracle/product/11.2.0/dbhome_1 ??? 本地归档路径:/oracle/oradata/dgtest/dgtest/archive ??? LOGICAL STANDBY: ??? IP:??? 192.168.1.15 ??? SID:? logicdg ??? DB_UNIQUE_NAME: logicdg ??? 安装路径:/oracle/oracle/product/11.2.0/dbhome_1 ??? 本地归档路径:/oracle/oradata/logicdg/local-archive ??? 本例测试采用物理standby转逻辑standby的方式在一个已经存在的dataguard环境中新增一台逻辑standby. ??? 原dataguard环境可参考: ??? http://xin23.blog.51cto.com/1827266/504066 ??? 创建新物理standby的过程亦可参照此文。此处不再赘述。 ??? 则目前环境为: ??? primary:192.168.1.11 ??? physics: 192.168.1.12 ??? logical:? 192.168.1.15 (目前为物理standby.待转换) ??? 1.修改primary初始化参数文件(仅列出修改部分) ??? *.log_archive_dest_state_2=defer ??? *.log_archive_dest_state_3=defer ??? *.log_archive_config='dg_config=(test,dgtest,logicdg)' ??? *.log_archive_dest_2='service=test12 arch valid_for=(online_logfiles,primary_role) db_unique_name=dgtest' ??? *.log_archive_dest_3='service=test15 arch valid_for=(online_logfiles,primary_role) db_unique_name=logicdg' ??? *.fal_server=test11 ??? *.fal_client=test12 ??? *.standby_file_management=auto ??? *.db_file_name_convert='/oracle/oradata/test','/oracle/oradata/dgtest/dgtest','/oracle/oradata/test','/

  • Oracle导入导出数据库的语法_oracle

    Oracle导入导出数据库的语法_oracle

    ??? 导读:oracle中除了在Oracle编辑器中用图形化的方式导入导出文理文件的数据方式外,还可以采用命令行的方式导入导出数据库,其语法实示例如下: ??? imp [username[/password[@service]]] ??? 步骤:1、首先在进入 dos, 然后切换到 oracle 数据库物理文件所在的目录即(dmp文件所在的目录)。接下来输入下述语句! ??? imp username/password@service file=psmis.dmp fromuser=psmis touser=psmis log=psmis.log 下面就语句的语法做一下解释: ??? imp :是导入数据库的语法前缀; ??? username/password@service:意思是登陆指定的service; ??? file :指的是已经分离的oracle数据库物理文件; ??? fromuser:指的是来源用户; ??? touser:指的是目标用户; ??? log:指的是当前目录下的日志文件; ??? 在 dos 中查看oracle中的imp,exp命令: ??? imp help=y ??? exp help=y ??? 1. 导出表数据: ??? 文件名以backup_yyMMddHHmm.dmp 表示 ??? dateString=`date +%y%m%d%H%M` ??? #echo $dateString ??? su - oracle -c "exp userid/password tables=table1,table2 file= path/backup_$dateString.dmp BUFFER=8192 grants=y compress=N" ??? compress:N表明导出来的文件不需要压缩放在一个数据块中,当数据库中的表数据特别大的时候,若放在不同的数据库,在恢复的时候会有问题。 ??? 导出的数据包括表创建语句,序列,触发器等。 ??? 2. 导入表数据 ??? 表导入的过程:创建表,导入数据,创建序列 ??? echo backup file:$1 ??? fileName=$1 ??? echo $fileName ??? #if [ "$fileName" = ""] ??? #then ??? # echo "请指定备份恢复的文件名,请指定绝对文件路径" ??? # exit 0; ??? #fi ??? #echo fileName=$fileName ??? su - oracle -c "imp userid/password file=$fileName show=n buffer=2048000 ignore=Y commit=y grants=y full=y" ??? ignore:Y表明忽略表创建的过程,只是将表中的数据导入表中。

更多...

加载中...