搜索
首页数据库mysql教程Oracle技术之用RMAN克隆数据库

源库RHEL4.5:192.168.137.199 GLOBAL_NAME=WENDING.LK Oracle_SID=WENDING 克隆库RHEL4.5:192.168.137.200 GLOBAL_NAME=STRM.L

源库RHEL4.5:192.168.137.199 GLOBAL_NAME=WENDING.LK Oracle_SID=WENDING

克隆库RHEL4.5:192.168.137.200 GLOBAL_NAME=STRM.LK ORACLE_SID=STRM

1. 全备份源库

$ sqlplus '/as sysdba'

记下备份前的SCN,规复的时间就规复到这个点。

SQL> select DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER from dual;

GET_SYSTEM_CHANGE_NUMBER

------------------------

181557

SQL> exit

$ mkdir -p /orahome/backup

$ cd /orahome

$ vi backup.rcv

run{

allocate channel c1 type disk;

backup full database format '/orahome/backup/db_t%t_s%s_p%p.bak';

backup archivelog all format '/orahome/backup/arch_u%u.bak';

backup current controlfile format '/orahome/backup/cf_u%u.bak';

release channel c1;

}

$ nohup rman target / @backup.rcv log backup.log &

$ tail -50f backup.log

参照源库参数文件新建一个克隆库参数文件:

SQL> create pfile = '/orahome/backup/initSTRM.ora' from spfile;

得到源库数据文件的编号和寄放职位 信息,是为了预备克隆库参数db_file_name_convert或rman规复时set newname的设置:

$ sqlplus '/as sysdba'

SQL> col name format a60

SQL> set lines 1024

SQL> select file#,name from v$datafile union all select file#,name from v$tempfile;

FILE# NAME

---------- ------------------------------------------------------------

1 /orahome/oradata/WENDING/system.dbf

2 /orahome/oradata/WENDING/undotbs1.dbf

3 /orahome/oradata/WENDING/sysaux.dbf

4 /orahome/oradata/WENDING/users01.dbf

1 /orahome/oradata/WENDING/temp01.dbf

SQL> exit

拷贝备份文件到克隆库主机的同一职位 ,确保克隆库主机也有目次 /orahome/backup。

$ cd /orahome/backup

$ scp *.bak 192.168.137.200:/orahome/backup

$ scp initSTRM.ora 192.168.137.200:/orahome/backup

2. 克隆库预备事变

克隆库上设置干系 的环境 变量:

$ vi .bash_profile (思量 从源库主机拷贝一份,,然后批改ORACLE_SID参数值)

export ORACLE_BASE=/u01/app/oracle;

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1;

export ORACLE_SID=STRM;

export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"

export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

$ . .bash_profile

3. 批改克隆库参数文件

$ vi /orahome/backup/initSTRM.ora

:%s/WENDING/STRM/g

一样平常批改以下参数:

audit_file_dest,background_dump_dest,core_dump_dest,user_dump_dest,db_name,db_unique_name,log_archive_dest_1,control_files.

并确保以下参数:

*.remote_login_passwordfile = exclusive

*.DB_FILE_NAME_CONVERT = '/orahome/oradata/WENDING/', '/orahome/oradata/STRM/'

4. 按照步调 3批改的路径信息在克隆库主机新建须要的目次

$ mkdir -p /orahome/flash_recovery_area

$ mkdir -p /orahome/arch/STRM

$ mkdir -p /orahome/oradata/STRM/

$ mkdir -p /u01/app/oracle/admin/STRM/adump

mkdir -p /u01/app/oracle/admin/STRM/bdump

mkdir -p /u01/app/oracle/admin/STRM/cdump

mkdir -p /u01/app/oracle/admin/STRM/dpdump

mkdir -p /u01/app/oracle/admin/STRM/udump

5. 在克隆库创建 一个新的password文件

(unix/Linux下暗码文件技俩必需是orapw

$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=iamwangnc force=y

6. 克隆库startup nomount

$ sqlplus '/as sysdba'

SQL> create spfile from pfile='/orahome/backup/initSTRM.ora';

SQL> startup nomount;

SQL> exit

7. 克隆库用rman规复

$ cd /orahome

$ vi recover.rcv (由于源库在全备后还也许发生归档文件,以是规复的时间要设置set until值,不然会发生过错 RMAN-06025)

run{

allocate auxiliary channel c1 type disk;

# set until time '2008-11-21.11:33:31';

# set until sequence 21254 thread 1;

set until scn 181557;

duplicate target database to STRM

LOGFILE

group 1 ('/orahome/oradata/STRM/REDO01.DBF') SIZE 50M,

group 2 ('/orahome/oradata/STRM/REDO02.DBF') SIZE 50M,

group 3 ('/orahome/oradata/STRM/REDO03.DBF') SIZE 50M;

}

其它set newname和LOGFILE后头的文件职位 信息可以按照本身必要 设定。

起头规复:(wending.lk是源库做事名,确保源库的监听已经启动)

$ nohup rman target sys/iamwangnc@192.168.137.199:1521/wending.lk auxiliary / @recover.rcv log recover.log &

$ tail -50f recover.log

database opened

Finished Duplicate Db at 2008-11-21 13:02:39

规复数据库时发生如下过错:RMAN-06025: no backup of log thread 1 seq 21255 scn 4144283685 found to restore

多次执行备份﹐然后克隆﹐发现有时候出错﹐有时候不出错。非常费解。后来在仔细观察发现,在短缺末了一个归档日记文件会出错。而这个日记文件是在备份之后产

生的﹐目标数据的备份中没有。把这个文件传递到目标主机就可以了。而假如产生备份之后﹐短时间之内克隆﹐原数据库没有归档文件﹐则不会出现错误。这个在很多

操纵文档中﹐没有讲到。

8. 测试克隆库

$ sqlplus '/as sysdba'

SQL> select status from v$instance;

SQL> archive log list;

linux

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
与其他RDBM相比,MySQL如何处理并发?与其他RDBM相比,MySQL如何处理并发?Apr 29, 2025 am 12:44 AM

MySQLhandlesconcurrencyusingamixofrow-levelandtable-levellocking,primarilythroughInnoDB'srow-levellocking.ComparedtootherRDBMS,MySQL'sapproachisefficientformanyusecasesbutmayfacechallengeswithdeadlocksandlacksadvancedfeatureslikePostgreSQL'sSerializa

MySQL与其他关系数据库相比如何处理交易?MySQL与其他关系数据库相比如何处理交易?Apr 29, 2025 am 12:37 AM

mysqlHandLestActionSefectefectionalytheinnodbengine,supportingAcidPropertiessimilartopostgresqlesqlandoracle.1)mySqluessRepeTableReadAbleDasthEdefaultIsolationLelealevel,该canbeadjustEdToreDtoreDtoreadCommententCommententCommententCommententCommittedForHigh-TrafficsCenarios.2)

MySQL中有哪些数据类型?MySQL中有哪些数据类型?Apr 29, 2025 am 12:28 AM

MySQL的数据类型分为数值、日期和时间、字符串、二进制和空间类型。选择正确的类型可以优化数据库性能和数据存储。

在MySQL中编写有效的SQL查询的最佳实践是什么?在MySQL中编写有效的SQL查询的最佳实践是什么?Apr 29, 2025 am 12:24 AM

最佳实践包括:1)理解数据结构和MySQL处理方式,2)适当索引,3)避免SELECT*,4)使用合适的JOIN类型,5)谨慎使用子查询,6)使用EXPLAIN分析查询,7)考虑查询对服务器资源的影响,8)定期维护数据库。这些做法能使MySQL查询不仅快速,还具备可维护性、可扩展性和资源效率。

MySQL与PostgreSQL有何不同?MySQL与PostgreSQL有何不同?Apr 29, 2025 am 12:23 AM

MySQLisbetterforspeedandsimplicity,suitableforwebapplications;PostgreSQLexcelsincomplexdatascenarioswithrobustfeatures.MySQLisidealforquickprojectsandread-heavytasks,whilePostgreSQLispreferredforapplicationsrequiringstrictdataintegrityandadvancedSQLf

MySQL如何处理数据复制?MySQL如何处理数据复制?Apr 28, 2025 am 12:25 AM

MySQL通过异步、半同步和组复制三种模式处理数据复制。1)异步复制性能高但可能丢失数据。2)半同步复制提高数据安全性但增加延迟。3)组复制支持多主复制和故障转移,适用于高可用性需求。

您如何使用解释性语句分析查询性能?您如何使用解释性语句分析查询性能?Apr 28, 2025 am 12:24 AM

EXPLAIN语句可用于分析和提升SQL查询性能。1.执行EXPLAIN语句查看查询计划。2.分析输出结果,关注访问类型、索引使用情况和JOIN顺序。3.根据分析结果,创建或调整索引,优化JOIN操作,避免全表扫描,以提升查询效率。

您如何备份并还原MySQL数据库?您如何备份并还原MySQL数据库?Apr 28, 2025 am 12:23 AM

使用mysqldump进行逻辑备份和MySQLEnterpriseBackup进行热备份是备份MySQL数据库的有效方法。1.使用mysqldump备份数据库:mysqldump-uroot-pmydatabase>mydatabase_backup.sql。2.使用MySQLEnterpriseBackup进行热备份:mysqlbackup--user=root--password=password--backup-dir=/path/to/backupbackup。恢复时,使用相应的命

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SecLists

SecLists

SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

Atom编辑器mac版下载

Atom编辑器mac版下载

最流行的的开源编辑器