您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 甲骨文数据库oracle个人学习(OCP-042)
甲骨文数据库oracle个人学习(OCP-042)bybingosummer一、创建oracle数据库1.数据库制定计划1)组成表空间的多个数据文件实际存储在哪些磁盘驱动器上。2)制定备份策略,通过变更数据库的逻辑存储结构或设计可以提高备份效率。2.典型的数据库类型:1)数据仓库:长期存放数据2)事务处理数据库:处理数量很多但规模通常较小的事务。ATM.结账收款系统3)通过数据库3.删除数据库1)数据库必须装载且已关闭2)必须以独占方式而不是以共享模式装载数据库3)数据必须装载为Restricted4)删除语句Dropdatabase,会删除数据文件、重做日志文件、控制文件和初始化参数文件。对归档日志、数据库副本或备份不起作用。5)如果数据文件保存在RAW设备中,则不会删除RAW设备专用文件。二、管理ORACLE实例1.启动和停止dababasecontrol1)emctlstart|stop|statusdbconsole2)执行程序emctl在$oracle_home/bin路径下2.从SQL*PLUS下调用SQL脚本1)sqlplushr/hr@script.sql2)sql@script.sql3.初始化参数文件1)服务器参数文件spfilesid.ora路径:$ORACLE_HOME/dbs2)文本初始化文件initsid.ora路径:$ORACLE_HOME/dbs4.关闭数据库1)sqlshutdownabort|immediate|transactional|normal5.启动数据库1)sqlstartupforce|restrict|mount|open|nomount6.预警日志记录:/u01/app/oracle/admin/orcl/bdump/alert_sid.log7.动态性能视图1)建立在根据数据库服务器内的内存结构构建的虚拟表基础上。2)DICT和DICT_COLUMNS视图包含这些动态性能视图的名称。3)几种常用性能视图:①.v$fixed_table了解所有性能视图名称②.V$SQL③.V$SESSION④.V$DATAFILE查看数据库数据文件的状态⑤.V$LOCK三、ORACLE存储结构1.数据库块:内容1)块头:段类型(表、索引),数据块地址、表目录、行目录和事务处理查处插槽。2)行数据3)空闲空间:位于上述两者之间2.表空间和数据文件:1)一个数据库最多可以包含65534个数据文件。2)至少两个表空间SYSTEMSYSAUX3)一个数据库至少有一个表空间,一个表空间至少一个数据文件。4)事件记录:对表空间对象所做的更改会写入重做日志,如果未启用事件记录,则使用SQLLOADER的任何直接加载和直接加载INSERT操作都不会写入到重做日志。3.预置表空间1)system2)sysaux3)temp4)undotbs15)users6)example4.查看表空间信息1)表空间信息①.dba_tablespaces②.v$tablespace2)数据文件信息①.dba_data_files②.v$datafile3)临时文件信息①.dba_temp_files②.v$tempfile5.ASM自动存储管理1)将文件系统与卷管理器纵向集成在一起。2)提供冗余的数据副本来提供容错能力。数据管理是通过为数据类选择期望的可靠性和性能特性实现的。3)概念:①.数据库文件可作为ASM文件进行存储,其层次上端是ASM磁盘组。任何单个ASM文件只能包含在一个磁盘组中。但一个磁盘组可能包含属于多个数据库的文件。一个数据库可能使用多个磁盘组中的存储空间。②.ASM磁盘按分配单位进行分区,每个分配单位为一兆字节。4)功能和特点①.将文件划分为区,并均匀分布在所有磁盘上。②.使用索引技术跟踪每个区的位置。③.为每个文件提供镜像冗余④.仅支持ORACLE数据库文件类型。⑤.支持RAC,不再需要使用集群逻辑卷管理器或集群文件系统四、管理用户安全1.数据库用户账户要访问数据库,用户必须指定有效的数据库用户帐户,而且还要根据该用户帐户的要求成功通过验证。每一个数据库用户都有自己的数据库帐户。这是Oracle的最佳实践建议,这样可避免存在潜在的安全漏洞,为特定的审计活动提供有意义的数据。但是,在极少数情况下,若干用户会共享一个公用数据库帐户。此时,操作系统和应用程序必须为数据库提供足够的安全性。每一个用户帐户包括:1)唯一的用户名:用户名不能超过30个字节,不能包含特殊字符,而且必须以字母开头。2)验证方法:最常见的验证方法是口令,但是OracleDatabase10g支持其它多种验证方法,包括生物统计学验证、证书验证和标记验证。3)默认表空间:如果用户未指定其它表空间,则可在这个表空间中创建对象。请注意,具有默认表空间并不意味着用户具有在该表空间创建对象的权限,也不意味着用户具有该表空间(用于创建对象)中的空间限额。这两项需要另外单独授权。4)临时表空间:用户可在其中创建临时对象(如排序和临时表)的表空间。5)用户概要文件:分配给用户的一组资源与口令的限制。6)使用者组:由资源管理器使用。7)锁定状态:用户只可访问“未锁定”帐户。2.预定义账户:SYS和SYSTEM1)默认情况下,SYS和SYSTEM帐户授予了数据库管理员(DBA)角色。此外,SYS帐户还具有ADMINOPTION的所有权限,而且拥有数据字典。要连接到SYS帐户,必须使用ASSYSDBA子句(不管SQLPLUS后跟的是其他用户,如sqlplustom/tomassysdaba,sysdba是一种权限,同sysoper)。任何授予了SYSDBA权限的用户均可通过使用ASSYSDBA子句连接到SYS帐户。只有授予了SYSDBA或SYSOPER权限的“授权”用户才可以启动或关闭数据库实例。注意:sqlshowparametero7显示O7_DICTIONARY_ACCESSIBILITY参数值。该参数为true,表示any的范围包括sys的对象,可以使用connsys/pass登录而不加assysdba选项,进入的是数据库的sys,是数据库的拥有者.而不是操作系统的sys,conn/assysdba等于原来的internal.若该参数为false,表示any的范围剔除sys的对象Selectanytable/Dropanytable等系统权限2)默认情况下,SYSTEM帐户授予了DBA角色,而不是SYSDBA权限。3)最佳实践提示:如果应用最少权限原则,则不在例行程序操作中使用这些帐户。需要DBA权限的用户另外拥有授予了所需权限的独立帐户。例如,Jim有一个名为jim的低权限帐户及一个名为jim_dba的授权帐户。使用此方法可应用最少权限原则,不需要共享帐户,而且可审计各项操作。4)SYS和SYSTEM帐户是数据库中必需存在的帐户,不能将其删除。SYS是操作系统级别的认证用户(即,可以登录到系统,就可以以SYS用户连接数据库)5)SYSTEM没有关闭、启动实例的权限。可以承担日常的管理任务,如创建表空间。6)密码文件$orache_home/dbs/orapworadb7)授权用户:grantsysdbatouser_namerevokesysdbafromuser_nameselect*fromv$PWFILE_USERS查看管理员密码文件授权情况3.验证用户:验证指的是对要使用数据、资源或应用程序的用户、设备或其它实体的身份进行验证。通过对该身份进行验证可建立一种信任关系,从而可进一步执行交互。通过验证可将访问和操作与特定的身份联系起来,从而实现可靠性。完成验证后,验证流程可允许或限制该实体许可的访问和操作的级别。创建用户时,必须确定要使用的验证方法,以后可修改此方法。1)口令:又称为Oracle数据库验证。创建的每一个用户都有一个关联口令,用户尝试建立连接时,必须提供这个口令。设置口令时,可以使该口令立即失效,这会强制用户在首次登录后更改口令。如果决定要使用户口令失效,请确保用户能够更改口令。有些应用程序不具备此功能。①.在(客户机/服务器之间和服务器/服务器之间)建立网络连接期间,系统总是先通过使用修改过的数据加密标准(DES)算法,以自动透明方式对口令加密,然后通过网络发送这些口令。2)外部验证:又称操作系统验证。用户可以在不指定用户名或口令的情况下连接到Oracle数据库。使用外部验证时,数据库依赖于基础操作系统或网络验证服务来限制对数据库帐户的访问。数据库口令不会用于此类登录。如果操作系统或网络服务允许的话,可以使用外部验证来验证用户。如果要执行此操作,请设置OS_AUTHENT_PREFIX初始化参数,并在Oracle用户名中使用此前缀。OS_AUTHENT_PREFIX参数定义了一个前缀,Oracle数据库会在每个用户的操作系统帐户名之前添加此前缀。为了实现与Oracle软件早期版本的向后兼容,此参数的默认值为OPS$。用户尝试建立连接时,Oracle数据库会将带前缀的用户名与数据库中的Oracle用户名进行比较。例如,假定OS_AUTHENT_PREFIX设置如下:OS_AUTHENT_PREFIX=OPS$如果某个用户的操作系统帐户名为tsmith,它需要连接到Oracle数据库而且已由操作系统验证,那么Oracle数据库会检查是否存在一个对应的数据库用户OPS$tsmith,如果存在这样的用户,则允许该用户建立连接。在用户(已由操作系统验证)的所有引用中必须包含OPS$tsmith中显示的前缀。注:在某些操作系统中,OS_AUTHENT_PREFIX初始化参数的文本是区分大小写的。有关此初始化参数的详细信息,请参阅特定操作系统的Oracle文档。3)全局验证:使用OracleAdvancedSecurity选项时,可通过全局验证(一种严格的验证方法)并使用生物统计学、x509证书、标记设备和OracleInternetDirectory来识别用户。4.管理员验证1)操作系统安全性2)管理员安全性①.通过口令文件或操作系统验证SYSDBA和SYSOPER连接。②.对于sysdba\sysoper,操作系统验证优先于口令文件验证③.口令文件验证会按名称记录DBA用户。④.操作系统验证并不记录具体用户。5.权限:1)系统权限①.SYSDBA&SYSOPER:使用这两个权限可以在数据库中执行关闭、启动、恢复及其它管理任务。使用SYSOPER用户可执行基本操作任务,但不能查看用户数据。②.RESTRICTEDSESSION:使用此权限您可以登录,即使数据库是在受限模式下打开的。③.GRANTANYOBJECTPRIVILEGE:使用此权限,您可以授予对他人所拥有的对象的对象权限。④.ALTERDATABASE和ALTERSYSTEM:这些权限的作用很强,可用于修改数据库和Oracle实例,如重命名数据文件或刷新缓冲区高速缓存。2)对象权限6.撤销具有ADMINOPTION的对象权限1)不能级联收回权限(被二次授予他人的权限)7.撤销具有GRANTOPTION的对象权限1)能级联收回权限(被二次授予他人的权限)8.保护角色1)alterrolerole_nameidentifiedbypassword2)setrolerole_name[identifiedbypassword]3)alteruseruser_namedefaultrolenone4)alteruseruser_namedefaultrolerole_name5)select*fromdba_roles6)select*fromdba_role_privs7)select*fromdba_sys_privs五、管理用户方案1.定义1)方案是指由特定用户拥有的数据库对象的集合,方案对象是指直接引用数据库数据的逻辑结构。2)方案不一定需要与单个表空间直接相关。可以定义一些配置,以使一个方案中的对象可以保存在不同的表空间中,一个表空间也可
本文标题:甲骨文数据库oracle个人学习(OCP-042)
链接地址:https://www.777doc.com/doc-14427 .html