崔旭_Oracle Database 12c 上手实验之升级、多租户管理、迁移和合并

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

OracleDatabase12c上⼿手实验之升级、多租户管理、迁移和合并个⼈人介绍2!• 姓名:崔旭• ⺴⽹网络ID:dbstyle• 获得认证:Oracle10g11gOCM• OCM联盟核⼼心成员• Oracle教学主管• 个⼈人技术Blog:• 微博:• 电话:138111068863!Oracle  Database  12c  升级⽅方法  Oracle  Database  12c  迁移⽅方法  Oracle  Database  12c  多租户管理  Oracle  Database  12c  合并⽅方法  4!使⽤用SQL⾃自动化升级5!• preupgrd.sql• 执⾏行预升级检查• 运⾏行在源数据库环境• 产⽣生修复脚本– preupgrade_fixups.sql– postupgrade_fixups.sql• 参考MOSNote:884522.1新预升级脚本更快速的升级-较少停机时间6!catctl.plscript3.sqlscript2.sqlscript1.sqlscript4.sqlscript5.sqlscript6.sqlscript6.sqlscript7.sqlscript8.sqlscript9.sqlscript10.sqlscript11.sql• catctl.pl• 运⾏行数据库并⾏行升级  • 升级速度提升35%  • 以由全球选定的Oracle  Database  11g  客户所使⽤用和证明  – Telco  billing  – 100  SAP  systems  – Large  DWH  新的并⾏行升级  更快速的升级-较少停机时间7!新的并⾏行升级  $$ORACLE_HOME/perl/bin/perlcatctl.pl-n8catupgrd.sql简单升级8!数据库升级助⼿手  • ⾃自动化预升级检查• 并⾏行升级  • 整合RMAN  • 保留还原点  • 活动和告警⽇日志  9!Oracle  Database  12c  升级⽅方法  Oracle  Database  12c  迁移⽅方法  Oracle  Database  12c  多租户管理  Oracle  Database  12c  合并⽅方法  多租户——结构10多租户——实现!• 多租户容器数据库(CDB)– 通过CDB进⾏行数据库管理• ⼀一个CDB可以包括⼀一个或多个可插拔数据库– 数据和代码位于PDB中– 应⽤用连接到PDB• 简单并且快速的开通,克隆,插⼊入,打补丁和升级CDB1  PDB$  SEED  CDB2  PDB$  SEED  PDB1  PDB2  PDB3  PDB1  多租户——内部!• ⼀一个SGA• ⼀一套backgroundprocesses• ⼀一个SPFILECDB  PDB$  SEED  PDB1  PDB2  PDB3  RedoControlFlashbackspfileCDB的创建!• 2种选择:– DBCA• 推荐⽅方法– 使⽤用CREATEDATABASE命令⾏行• 不建议,因为所有的选项都必须被创建,⽐比较复杂CREATEDATABASEcdb12  [...]ENABLEPLUGGABLEDATABASE  SEEDFILE_NAME_CONVERT=('/oradata/cdb12/','/oradata/pdbseed/')  SYSTEMDATAFILESSIZE125MAUTOEXTENDONNEXT10MMAXSIZE[…]使⽤用命令⾏行创建CDB• 管理脚本通过catcon.pl  调⽤用开始:  – catdb.sql  会使⽤用所有选项运⾏行所有脚本  – catcon.pl  有⽤用的选项:  • -u⽤用户名和可选密码  • -d包含执⾏行所需的所有脚本的⺫⽬目录  (默认:  当前⺫⽬目录)• -e开启输出• -s记录每⼀一个脚本的输出  • -l⽇日志记录的⺫⽬目录  (默认:  当前⽂文件夹)  • -b⽇日志⽂文件基本名称(强制选项)  $perlcatcon.pl-uSYS-d$ORACLE_HOME/rdbms/admin-e-s-bcreate_dictionarycatdb.sql14CDB和PDB• 将PDB插⼊入CDB:– 数据位于PDB– 会在CDB中创建引⽤用对象– ⼀一些数据字典对象从CDB中继承CDB$ROOT  PDB$SEED  OBJ$  TAB$  SOURCE$        PDB  EMP  DEPT  OBJ$  TAB$  SOURCE$  15CDB和PDB• 表空间– CDB$ROOT中的UNDO和TEMP表空间全局使⽤用– 每个PDB都有⾃自⼰己的TEMP– 所有的PDB都必须共享CDB中的undo            CDB$ROOT  PDB$SEED        PDB  SYSTEMSYSAUXSYSTEMSYSAUXSYSTEMSYSAUXDATA1DATA2TEMP_PDBTEMPUNDO16CDB和PDB• 公共⽤用户– 存在所有的CDB和所有当前和未来的PDB中– 所有oracle提供的⽤用户都是公共⽤用户• 本地⽤用户– 仅仅存在于⼀一个PDB中                                CDB$ROOT        PDB$SEED                                                                                                                    PDB  HUGOSYSC##ADMC##BOSSC##ADMC##BOSSAPPSYSCDB1createuserc##admidentifiedbytopsecret;17Oracle  Database  12c  升级⽅方法  Oracle  Database  12c  迁移⽅方法  Oracle  Database  12c  多租户管理  Oracle  Database  12c  合并⽅方法  创建新的可插拔数据库19!!▪ 通过PDB$SEED快速开通▪ PDB_FILE_NAME_CONVERTCDB  PDB$  SEED  PDB1  createpluggabledatabasePDB1  adminuseradm1identifiedbypwd;impdp▪ 通过impdp导⼊入数据– Dump⽂文件或者NETWORK_LINK– imp≤Oracle9i克隆可插拔数据库20!!• 快速PDB克隆– 本地:– 远程:      • Part  of  first  patch  set  for  Oracle  Database  12c  (12.1.0.2)  • Works  since  PSU3  for  Oracle  12.1.0.1  CDB1  PDB$  SEED  CDB2  PDB$  SEED  PDB1  PDB2  PDB1  createpluggabledatabasePDB2fromPDB1;createpluggabledatabase  PDB1fromPDB1@CDB1;升级并插⼊入PDB!• 数据库升级• 打开数据库到直读模式• 创建XML描述⽂文件• 关闭数据库• 插⼊入数据库• 执⾏行脚本CDB  PDB$  SEED  PDB1  execDBMS_PDB.DESCRIBE('PDB1.xml');DB1  createpluggabledatabasePDB1using('PDB1.xml')nocopytempfilereuse;start?/rdbms/admin/noncdb_to_pdb.sqlPDB1xmlReadOnly完全可传输的Export/Import!▪ 创建⼀一个新的数据库/PDBCDB  PDB$  SEED  PDB1  DB1  Database  Link  impdpoow/passwd@PDB1NETWORK_LINK=DB1VERSION=12FULL=YTRANSPORTABLE=ALWAYSMETRICS=YLOGFILE=oow_dir:src112fullimp.logTRANSPORT_DATAFILE='/oradata/ts1.dbf'…Read  Only  impdp▪ 创建到源数据库的DBlink▪ 表空间设置成只读–停⼯工时间!▪ 拷⻉贝数据⽂文件到⺫⽬目的地▪ 运⾏行impdp在NETWORK_LINK模式Oracle  Database  12c  升级⽅方法  Oracle  Database  12c  迁移⽅方法  Oracle  Database  12c  多租户管理  Oracle  Database  12c  合并⽅方法  升级:⼀一次所有− 运⾏行preupgrd.sql− 在新的Oracle_HOME下开启CDB为UPGRADE模式− 运⾏行catctl.pl-n⼀一起参与升级的PDB的数量,默认:cpu数量/2最⼤大32个-N每个PDB参与sql处理的线程数量,默认数量2,最⼤大8个− 重新编译CDB1  –  Oracle  12.1.0.2  PDB$SEED  PDB1  CDB1  –  Oracle  12.1.0.1  PDB$SEED  PDB1  PDB2  PDB3  PDB4  PDB2  PDB3  PDB4  UPGRADE  UPGRADE  UPGRADE  UPGRADE  UPGRADE  UPGRADE  catcon.pl-n1-e-butlrp-d'''.'''utlrp.sql24升级:⼀一次所有• 优点:  – 部署简单  • 缺点:  – 难以找到公共的停⼯工时间  – 每个PDB都有更多的停⼯工时间  – 升级的顺序  • 默认是按照con_id的顺序  • 包含列表    –c  后者排除列表  -­‐C  – 覆盖升级顺序  – 需要写脚本来多次调⽤用  catctl.pl  以控制顺序  CDB1  –  Oracle  12.1.0.2  PDB$  SEED  PDB1  CDB1  –  Oracle  12.1.0.1  PDB$  SEED  PDB1  PDB2  PDB3  PDB4  PDB2  PDB3  PDB4  UPGRADE  UPGRADE  UPGRADE  UPGRADE  UPGRADE  UPGRADE  25升级:每次⼀一个或更多• CDB1中:   要对XML  ⽂文件进⾏行备份!!!  • CDB2中:  ▪ SQLcreatepluggabledatabasepdb1using'/stage/pdb1.xml';  ▪ SQLalterpluggabledatabasepdb1openupgrade;  ▪ $ORACLE_HOME/perl/bin/perlcatctl.pl-c'PDB1'catupgrd.sql  ▪ $ORACLE_HOME/perl/bin/perlcatcon.pl-n1-e-butlrp          -­‐d  '''.'''    -c'PDB1'  utlrp.sql  ▪ SQL@preupgrd.sql  ▪ SQLalterpluggabledatabasepdb1close;  ▪ SQLalterpluggabledatabasepdb1unpluginto'/stage/pdb1.xml';CDB1  –  Oracle  12.1.0.1  PDB$SEED  CDB2  –  Oracle  1

1 / 28
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功