




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle多租户
使用OracleDatabase12c
简化整合BrynLlewellyn资深产品经理数据库服务器技术部Oracle总部以下内容旨在概述产品的总体发展方向。该内容仅供参考,不可纳入任何合同。
其内容不构成提供任何材料、代码或功能的承诺,并且不应该作为制定购买决策的依据。此处所述有关Oracle产品的任何特性或功能的开发、发布以及相应的日程安排均由Oracle自行决定。议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例压力提高敏捷性降低成本资本成本运营成本不中断运转DBA面临的挑战:修补和升级供应压力需求提高敏捷性性能和可扩展性降低成本资本成本运营成本可靠性和可用性不中断运转安全性和租户隔离DBA面临的挑战:修补和升级供应无需更改应用程序压力需求趋势提高敏捷性性能和可扩展性私有云降低成本资本成本运营成本可靠性和可用性大规模的高性能服务器(Exadata)不间断运行安全性和租户隔离虚拟化DBA面临的挑战:打补丁和升级供应无需更改应用程序简化标准化服务自助服务行业现状私有数据库云架构
OracleDatabase11g专用数据库共享服务器和操作系统虚拟机共享服务器模式整合共享服务器、操作系统和数据库提高整合度私有数据库云架构
OracleDatabase12c专用数据库共享服务器和操作系统虚拟机共享服务器多租户数据库共享服务器、操作系统和数据库提高整合度Oracle数据库架构需要内存、进程和数据库文件系统资源ERP内存后台进程数据库文件CRM内存后台进程数据库文件DW内存后台进程数据库文件容器数据库新的多租户架构仅在多租户容器级别才需要内存和进程系统资源ERP内存后台进程数据库文件CRM内存后台进程数据库文件DW内存后台进程数据库文件新的多租户架构仅在多租户容器级别才需要内存和进程系统资源容器数据库议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例多租户架构多租户容器数据库(CDB)的组件多租户容器数据库根12.1HCM12.1DW12.1CRM12.1ERP12.1可插拔数据库(PDB)PDBRootCDB多租户架构多租户架构目前最多可以支持252个PDBPDB的使用感觉和操作与非CDB相同对连接的客户端用户而言,无法分清使用的是PDB还是非CDB数据库链接拔出/插入只需从旧CDB拔出……拔出/插入……然后插入到新CDB中……在CDB之间移动PDB的一种简单情况是移动PDB的元数据拔出的PDB携带者自身的信息、补丁、加密密钥信息等等拔出/插入示例alterpluggabledatabaseHCMunpluginto'/u01/app/oracle/oradata/…/hcm.xml'createpluggabledatabaseMy_PDBusing'/u01/app/oracle/oradata/…/hcm.xml'插入拔出公共数据字典在12.1之前:随着时间减弱创建数据库成熟的数据库添加表、代码、数据OBJ$TAB$SOURCE$…Oracle数据和用户数据OBJ$TAB$SOURCE$…EMPDEPT…OBJ$TAB$SOURCE$…多租户修复:
水平分区的数据字典只保留Oracle系统定义数据字典随着客户的元数据不断减弱水平分区的数据字典OBJ$TAB$SOURCE$…EMPDEPT…OBJ$TAB$SOURCE$…Oracle提供的对象,例如,视图、PL/SQL等等,通过对象的“stubs”在所有PDB之间共享数据库中虚拟化多租户架构—
动态性PDB共享公共SGA和
后台进程前台会话只看到自己连接到的PDB多租户的可伸缩性添加其他PDB时,只需增加少量内存CDB中的文件每个PDB都有自己的一组表空间,其中包括SYSTEM和SYSAUXPDB共享UNDO、REDO
以及控制文件和(s)pfile文件默认情况下,CDB有单个TEMP表空间,但是PDB可以创建自己的表空间命名空间用户本地用户是客户在非CDB中创建的用户的继承者本地用户只在PDB中定义本地用户可以管理PDB公共用户在root中定义,并在每个PDB中体现公共用户可以登录到任何PDB,只要此用户在该PDB中具有“CreateSession”权限并因此可以管理该PDBOracle系统属于公共用户公共用户和权限可以在本地的PDB(或root)中授予公共用户权限,因此也可以在各个容器中分别授予另外,一般
还可以向公共用户授予系统权限—
从授权起,即在root和每个PDB中生效可以创建公共角色一般可以向公共用户授予公共角色在尝试执行SQL的容器中检查授权,仅考虑用户在该容器中具有的特权授权的检查方式与12.1之前版本中相同议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例使用多租户将多个数据库作为一个管理统一备份多个数据库;在可插拔数据库级别执行恢复DW12.1CRM12.1ERP12.1
一个备份在可插拔数据库级别下进行时间点恢复多租户容器数据库生产容器数据库使用多租户将多个数据库作为一个管理所有可插拔数据库使用同一备用数据库HCM12.1DW12.1CRM12.1ERP12.1备用容器数据库HCM12.1DW12.1CRM12.1ERP12.1多租户简化修补应用更改后,所有可插拔数据库都会更新就地升级
多租户容器数据库DW12.1CRM12.1ERP12.112.x12.x12.x多租户的升级提供灵活的数据库修补和升级选择原始容器数据库(12.1)升级后的容器数据库(12.X)DW12.xCRM12.xDW12.1CRM12.1ERP12.1利用扩展集群支持灵活的整合模式服务每个CDB实例有一个SGA通过变化的负载提高敏捷性节点1CDB实例1节点2CDB实例2多租户容器数据库(CDB)CRMBIHCMERPDW利用扩展集群支持灵活的整合模式服务每个CDB实例有一个SGA节点1CDB实例1节点2CDB实例2节点3CDB实例3通过变化的负载提高敏捷性多租户容器数据库(CDB)CRMBIHCMERPDW黄金级白银级青铜级RAC、DataGuard、每日增量备份DataGuard、每日增量备份每周执行完整备份随着PDB变成关键业务,PDB在SLA之间迁移通过可插拔移植性实现前所未有的敏捷性多租户的快速供应
可插拔数据库可以通过种子快速供应多租户供应可以从远程CDB克隆PDB可以从同一个CDB内克隆PDB快速克隆PDB克隆PDB示例createpluggabledatabaseHCMBIfromHCMcreatepluggabledatabaseHCMBIfromHCM@us.acme.db1远程(DB链接)本地PDB级别与CDB级别CDB常见操作的控制粒度单个Oracle软件版本DataGuard计划的RMAN备份有些参数/属性
例如,homogeneouscharacterset重做和撤销RMAN时间点恢复临时RMAN备份刷新共享池
IsPDB_Modifiable='TRUE'
的参数
CDB级别PDB级别多租户架构的优势降低资本支出和运营支出,提高敏捷性,简化使用容器数据库每个应用程序有独立的PDB应用程序无需更改即可运行快速供应(通过克隆)移植性(通过可插拔性)共享内存和后台进程每个服务器运行更多应用程序公共操作在CDB级别执行将多个数据库作为一个管理(升级、高可用、备份)粒度控制(如果适用)ContainerDatabase议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例管理共享资源多租户环境中的资源管理多租户容器数据库高优先级中优先级低优先级DWCRMERP在PDB之间管理资源使用资源管理器,可以控制CPUExadataI/O会话并行执行服务器通过配置策略可以控制资源利用方式即使在添加或者删除PDB的情况下也可以运行的默认配置针对“付出所得”的硬性限制在PDB之间管理资源基于两个概念的“行业标准”模型:大量共享分配给每个PDB可能会对每个PDB施加“上限”(也称为最高利用率限制)
管理CPU可拔插数据库共享有保障的CPU最大CPUHCM22/4=50%100%CRM11/4=25%100%ERP11/4=25%100%2个共享1个共享1个共享CDB资源计划使用共享
指定如何在PDB之间分配CPU议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例升级为多租户第1步:就地升级数据库10.2ERP11.1CRM11.2DW12.1ERP12.1CRM12.1DW容器数据库就地升级容器数据库升级为多租户第2步:插入已升级的数据库容器数据库12.1ERP12.1CRM12.1DW升级为多租户无需更改应用程序。第3步,更改应用程序以便配合多租户借助复制进行迁移通过种子克隆新PDB使用诸如OracleGoldenGate或DataPump等技术复制
12.1中的新功能,在单个expdb和impdb
命令中就能够最大限度的利用可传输表空间来完成用户要求的完整数据库导出和完整数据库导入。
(向后移植到11.2.0.3。)议题反思数据库云的架构多租户架构实现的功能管理共享资源升级为多租户用例生产容器数据库开发容器数据库1.多租户测试和开发灵活、及时地为可插拨数据库建立副本及快照DW12.1CRM12.1ERP12.1ERP开发副本ERP开发副本ERP开发副本2.整合不同的应用程序内存和进程分摊开销系统资源容器数据库RAC、DataGuard、每日增量备份DataGuard每日增量备份从标准规模和服务级别中选择3.自助式数据库即服务(DBaaS)✔黄金级白银级青铜级每周执行完整备份✔XLSXSMLRAC、DataGuard、每日增量备份DataGuard每日增量备份从标准规模和服务级别中选择3.自助式数据库即服务(DBaaS)✔黄金级白银级青铜级每周执行完整备份✔XLSXSML4.完美适用于
SaaS的多租户通过数据库而非应用程序实现多租户多租户容器数据库CUST7CUST6CUST5CUST4CUST3CUST2CUST15.完美适用于
ISV的多租户打包的应用程序和参考数据更容易分发ISV开发容器数据库ERPVer.2ERPVer.1.1ERPVer.1客户容器数据库(云)ERPVer.1用例开发/测试—
从这里开始!整合不同的应用程序私有云上的数据库即服务(DBaaS)软件即服务(SaaS)ISV:打包应用程序和数据的分发……等众多用例!Oracle多租户客户评价“Oracle多租户是一项技术进步。该技术不但使我们能够更好地控制模式和应用程序并将其隔离,而且使我们能够对发挥的性能作出明确的陈述并能够更好地管理更多数据库。”Carfax“Oracle多租户允许我们将数百个数据库整合到一个RAC环境数中每个据库又保持独立性,而之前我们必须将其放在单独服务器上。”LogicalTechnology“毫无疑问,OracleDatabase12c最吸引人的功能就是支持整合。Oracle多租户可以共享内存资源,由于这些数据库仍旧是单个数据库实例,因此能够简化管理。”Pythian“现在,借助于OracleDatabase12c,我们可以使用可传输导出/导入将整个数据库从一个实例复制到另一个实例。这能够最大程度缩短迁移客户端数据库时的停机时。”Accenture优势实现的功能最大程度降低资本支出每台服务器运行更多应用程序最大程度降低运营支出将多个数据库作为一个管理标准化过程和服务级别快速供应最大程度提高敏捷性为开发/测试而克隆通过“可插拔性”实现移植性借助RAC实现可伸缩性易于使用应用程序无需更改即可运行主要优点演讲完毕,谢谢观看!附录资料:不需要的可以自行删除oracle数据库培训内容*基本概念*Oracle的体系结构SQL*Plus的使用及常用命令*SQL*NET的配置和使用数据库的备份(exp/imp)其它常见问题一、基本概念什么是数据库:是存储在一起的相关数据的集合。这些数据无有害或不必要的冗余,为多种应用服务。数据的存储独立于使用它的应用程序。对数据库插入新数据、修改和检索原有数据均能用一种公用的和可控的方法进行。数据库能做什么:数据库的基本功能就是存储数据,而且能够为用户提供便捷、快速的查找、修改、添加和删除数据等功能。什么是SQL语言:是运用于数据库的语言。它除了具有数据库查询、插入、删除、修改等功能外,可以独立使用,也可以嵌入其它主语言中使用。它的语法类似于英语。什么是oracle:oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。二、Oracle的体系结构(1)物理结构
ORACLE数据库在物理上是存储于硬盘的各种文件。它是活动的,可扩充的,随着数据的添加和应用程序的增大而变化。datafilesredologfilescontrolfilesparameterfile
数据文件日志文件控制文件参数文件
datafilesredologfilescontrolfileparameterfiles*.dbf*.logInitoraid.ora*.ctl(2)session(连接)
Oracle是多用户、多任务、可分布式管理的数据库,同
时可有许多个用户对数据库操作。oracleuseruserusersession……
ORACLE数据库在逻辑上是由许多表空间构成。主要分为系统表空间和非系统表空间。非系统表空间内存储着各项应用的数据、索引、程序等相关信息。我们准备上马一个较大的ORACLE应用系统时,应该创建它所独占的表空间,同时定义物理文件的存放路径和所占硬盘的大小。Oracle数据存储单位a、block数据块:2k最小的I-O单位,伴随database产生而产生,不可变b、extent一组连续的数据块:是用户所能分配存储的最小单位c、segment段:有共同结构的一个或几个区域(extent)d、tablespace表空间:一组物理数据的逻辑组合,(象逻辑间数据仓库)e、file文件:属于某个表空间的物理文件f、database数据库:一组表空间所构成的逻辑的可共享的数据。(3)存储结构表空间tablespacesystemRBSnosystem把system表空间单独放在一个硬盘上做成一组镜像toolsuserstempapplicationdataapplicationindex分开存放减少争用segment段的分类data数据段存储对象object(table,view,index,sequence...)index索引段temporary临时段用做(join,groupby,orderbysorting操作)rollback回滚段用于记录修改前后信息bootstrap启动段存储数据字典系统信息不能读写,放在系统表空间内,约占40几个blockdatasegment中可能有十种不同类型的存储对象(1)table(2)view实为一个select语句(3)index(一个表不多于3个)(4)cluster(簇)(5)sequence序列(6)synonyms用于定义某个远程数据库同义词,实现分式数据库管理透明(7)snapsot快照(8)storedprocedure(function)(9)package程序包(10)dbtrigger数据触发器,处理updata,delete,insert中可能出现的问题常用的ORACLE的数据库字段类型字段类型中文说明限制条件其它说明CHAR固定长度字符串最大长度2000bytesVARCHAR2可变长度的字符串最大长度4000bytes可做索引的最大长度749DATE日期(日-月-年)LONG超长字符串最大长度2G(231-1)足够存储大部头著作RAW固定长度的二进制数据最大长度2000bytes可存放多媒体图象声音等LONGRAW可变长度的二进制数据最大长度2G同上NUMBER(P,S)数字类型P为整数位,S为小数位INTEGER整数类型小的整数FLOAT浮点数类型NUMBER(38),双精度REAL实数类型NUMBER(63),精度更高……三、SQL*Plus的使用及常用命令进入sql*plus;数据查询操作(select);改变数据操作(insert、update、delete);其它常用sql和sql*plus命令(spool、create、drop、desc、connect、grant……)。数据查询操作简单查询select列名1,列名2,列名3……from表名where条件orderby列名1,列名2……;逻辑运算符>>=<<=<>或!=其它(not)inis(not)betweenandandor单值函数nvl----空值替换函数abs---绝对值函数mod---求模函数power---求幂函数sqrt-----平方根函数exp,ln,log----对数函数sin,cos等----三角函数唯一性查询关键字:distinctselectdistinct列名from表名where条件;模糊查询select列名1,列名2,列名3……from表名where列名1like‘_%mm’orderby列名1,列名2……;关键字:(not)like通配符:%_联接查询select表名1.列名1,表名2.列名2,列名3……from表名1,表名2……where条件orderby表名1.列名1,表名2.列名2……;子查询单值子查询
多值子查询select列名1,列名2,列名3……from表名1where列名1=(select列名1from表名2where条件)orderby列名1,列名2……;select列名1,列名2,列名3……from表名1where列名1in(select列名1from表名2where条件)orderby列名1,列名2……;组值函数avg---平均值函数count---非空值数目max---最大值函数min---最小值函数sum---求和函数distinct---唯一性函数分组查询select列名1,列名2,sum(列名3)……from表名where条件groupby列名1,列名2……;关键字:groupby改变数据操作Insert插入操作insertinto表名1(列名1,列名2……)values(值1,值2……);注意:⑴值表中的数据用逗号间隔;⑵字符型和日期型要用单引号括起来;⑶缺省的日期格式为dd-man-yy。insertinto表名1usingselect列名1,列名2……from表名2where条件;Update修改操作可修改单个字段、修改多行、修改单个列。update表名set列名=值或表达式where条件;Delete删除deletefrom表名where条件;注意⑴不能只删除行的一部分⑵where子句决定哪一行将被删除。如里省略了where子句,则所有的行都将被删除。其它常用sql命令Createtable---创建表;例子Droptable---删除表,sql同时自动删除该表上的索引、特权,但并不删除相关的视图或同义词;Grant---授权Connect-----连上Oracle,做最基本操作resource----具有程序开发最基本的权限dba----------数据库管理员所有权限@-------运行指定的命令文件,作用等价于start命令;/---------运行sql缓冲区的命令,与run命令等价;Connect---退出当前账号,向指定的用户帐号登录;Desc-----显示指定表的结构;Exit-----中止sql*plus,返回操作系统;Spool---将屏幕显示内容输出到一个文件上;Spooloff--输出文件结束;其它常用sql*plus命令四、SQL*NET的配置和使用1配置网络协议TCP/IP
2测试网络是否连通3在Windows95上选择“开始”按钮,选定“程序”中的“OracleforWindows95”下的“SQL*NetEasyConfiguration”,在“SQL*NetEasyConfiguration”窗口中选择“AddDatabaseAlias”,在“ChooseDatabaseAlias”对话框中“DatabaseAlias”项中键入数据库别名,按“OK”按钮确认。
在“ChooseTCP/IPHostNameandDatabase”对话框中的TCP/IPHostname项中键入SERVER的IP地址,在“DatabaseInstance”项中键入Oracle的实例名。在“ConfirmAddingDatabaseAlias”对话框中可以看到你新增加的数据库别名。按“YES”按钮,按“OK”,退出“SQL*NetEasyConfiguration”。五、数据库备份(exp/imp)EXPORT将数据库中数据备份成一个二进制系统文件称为“导出转储文件”(EXPORTDUMPFILE),并将重新生成数据库写入文件中。它有三种模式:a.用户模式:导出用户所有对象以及对象中的数据;b.表模式:导出用户所有表或者指定的表;c.整个数据库:导出数据库中所有对象。IMPORT导入:导入的过程是导出的逆过程,这个命令先读取导出来的导出转储二进制文件,并运行文件,恢复对象用户和数据。数据库导出过程exp80用户名/密码Enterarrayfetchbuffersize:4096>exportfile:expdat.dmp>(1)Entiredatabase(2)Users(3)Table:(2)Users>Exportgrants:yes>Exporttabledata:yes>Conpressextents:yes>Usertobeexport>……Exportingtable、synonyms、view、grant等……Exportterminatedsuccessfullywithoutwarning.导出选项关键字内容USERID运行导出命令的帐号的用户名/口令。BUFFEER用来取数据行的缓冲区的大小。FILE导出转储文件的名字COMPRESS导出是否应该压缩有碎片的段成一个范围GRANTS导出时否要导出数据库对象上的授权INDEXES是否要导出表上的索引ROWS是否应导出行。如它为‘N’,那么在导出文件中仅生成数据库对象的DDLCONSSTRAINTS是否导出表旧的约定条件FULL如设为‘Y’,那么将执行一个整个数据库导出操作OWNER要导出的一系列数据库帐号,然后执行这些帐号的USER导出操作TABLES要导出的一系列表;执行这些表的TABLE导出操作导出选项关键字内容RECORDLENGTH转储导出文件日志的长度(以字节为单位),通常都使用缺省,除非要在两个不同操作系统中传递导出文件INCTYPE正在执行的导出操作的类型(有效值有”COMPLETE“(缺省值),CUMULATIVE”和“IVCREMENTAL”)RECORD在增量导出类型中的一个标记,标明是否将日志存储到数据字典中日志导出的表中PARFILE要传递给导出的参数文件的名字。这个文件将包含所有参数的入口项ANALYZE标明是否将移对象的统计信息写入导出转储文件中CONSISTENT标明是否保留所有导出对象的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 财务制度合同管理范例
- 公司汽车租赁协议合同
- 有关个人和企业借款合同
- 小区门口门面租赁合同
- 进口销售合同
- 金融行业投资产品风险提示合同
- 湖南环境生物职业技术学院《ntroductontoMarketng》2023-2024学年第二学期期末试卷
- 运城师范高等专科学校《社会化阅读》2023-2024学年第二学期期末试卷
- 上海师范大学天华学院《展具设计》2023-2024学年第二学期期末试卷
- 中山职业技术学院《工程流体学》2023-2024学年第二学期期末试卷
- 幼儿园中班语言《拼小人》课件
- 侵权责任法教程完整版ppt全套教学教程课件(最新)
- 劳务派遣公司介绍ppt课件(PPT 35页)
- 纪检监察机关派驻机构工作规则PPT
- 最全麦当劳员工手册
- 洁净室管理培训
- 晶体学之晶体的宏观对称PPT课件
- 质量管理体系过程识别矩阵图及与条款对照表
- 加班调休单(最新版)
- 智慧金字塔立体篇第四册、第五册答案全解
- 导论公共财政学概论.ppt
评论
0/150
提交评论