ORACLEDBA(四).ppt_第1页
ORACLEDBA(四).ppt_第2页
ORACLEDBA(四).ppt_第3页
ORACLEDBA(四).ppt_第4页
ORACLEDBA(四).ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ORACLE DBA(四),用户认证、实例管理、数据字典,目标,Oracle的用户权限、认证 Oracle实例的管理 Oracle数据字典,回顾,DBA的职责: 安装和升级oracle服务器和应用程序工具 分配系统内存和计划将来数据库系统所需的内存 在应用程序开发人员设计了应用程序之后,创建主要的数据库存储结构(表空间) 在应用程序开发人员设计了应用程序之后,创建主要的对象(表、视图、索引) 如果需要,依据应用程序开发人员提供的信息修改数据库结构,回顾,注册用户和维护系统安全 保证遵守oralce许可协议条款 控制和监控用户对数据库的访问 监控和优化数据库的性能 计划备份和恢复数据库信息 在磁

2、盘上保存大容量存储的数据 备份和恢复数据库 联络oracle公司以获取技术支持,Oracle用户类型,Oralce用户类型 数据库管理员 安全顾问 网络管理员 应用程序开发人员 应用程序管理员 数据库用户,DBA的任务,数据库管理员的任务 1、评估数据库服务器的硬件设备 内容包括Oracle及其应用程序如何最大效用的使用可用的计算机资源。 有多少个磁盘驱动器可用于Oracle及其数据库 有多少内存容量可用于运行Oracle实例,DBA的任务,2、安装oracle软件 作为DBA,应安装oracle服务器软件,一些前台工具以及访问数据库所需的数据库应用程序。 在一些分布式进程安装中,数据库由中央

3、计算机控制,而数据库工具以及应用程序在远程计算机上执行。此时,还必须安装Oracle Net驱动程序,从而将远程计算机与执行oracle的计算机相连。,DBA的任务,3、规划数据库 作为DBA,需要规划如下内容: 数据库的逻辑存储结构 全部的数据库设计 数据库的备份策略 对数据库的逻辑存储结构如何影响系统的性能和各种数据库管理操作进行规划。例,在为数据库创建表空间之前,应该首先了解构成这个表空间的数据文件有多少个,每个表空间存储的信息是哪种类型以及数据文件物理存储在哪个磁盘驱动器等。 要考虑执行Oracle计算机的性能、在数据访问操作过程中数据库的性能、备份和恢复数据库进程的效率,DBA的任务

4、,4、创建和打开数据库 在完成数据库设计任务之后,可以开始创建数据库并打开。可使用oracle数据库配置助理在安装时创建数据库,也可用自己创作的脚本来创建数据库。,DBA的任务,5、备份数据库 在创建数据库结构之后,执行为数据库规划好的备份策略。 再创建任一重做日志文件,来获得第一个完整的数据库备份,并计划将来定期备份数据库。,DBA的任务,6、注册系统用户 在备份了数据库结构之后,可依照oracle许可协议注册数据库的用户,并为用户创建相应的角色以及为角色授权。 建立安全策略 管理用户和资源 管理用户权限和角色,DBA的任务,7、具体实施数据库的设计 在创建和启动数据库并注册了系统用户之后,

5、就可通过创建所需的表空间来实施计划好的逻辑结构数据库。 可为数据库创建各种对象。,DBA的任务,8、备份具有完整功能的数据库 现在数据库已全部实现,所以需要再次备份数据库。 除定期备份之外,应在每次对数据库实施修改后立即备份数据库。,DBA的任务,9、协调数据库的性能 优化数据库的性能是DBA的职责。 Oracle提供了数据库资源管理特性,允许DBA对各种用户组进行资源分配控制,Database Administrator Users,When a database is created, the user SYS and SYSTEM are created automatically an

6、d granted the DBA role. SYS pw: change_on_install Owner of the database data dictionary SYSTEM pw: manager Owner of additional internal tables and views used by oracle tools Notes: the version 10g is different.,Database Administrator Users,SYS 创建任一数据库时,都将自动创建用户SYS并授予DBA角色。 所有数据库的数据字典建立的基本表和视图存在SYS模式

7、中。SYS模式中的表只能由Oracle来操纵,任何用户或数据库管理员都不能修改这些表。 SYSTEM 用SYSTEM用户名创建显示管理信息的外部的表和视图以及各种oracle选项和工具使用的内部的表和视图。,管理权限,SYSDBA和SYSOPER权限。 SYSDBA和SYSOPER两种系统权限允许访问数据库实例。 数据库还未打开时也可访问,即对两种权限的控制已超出数据库本身的范围。,管理权限,Create user,CREATE USER user IDENTIFIED BY password | EXTERNALLY DEFAULT TABLESPACE tablespace TEMPORA

8、RY TABLESPACE tablespace 说明: BY password指定用户的口令, EXTERNALLY由操作系统认证 DEFAULT TABLESPACE指定默认的表空间,所有由该用户创建 的数据库对象默认情况下都建立在该表空间上,如果不指定,则 默认使用system表空间,Create user-e.g.,创建用户test,密码为test create user test identified by test 变动用户test,密码为newtest alter user test identified by newtest,删除用户,格式:DROP USER user CAS

9、CADE 说明: 1、删除用户及用户所拥有的数据库对象 2、当用户包含对象时,一定要使用CASCADE选项,用户帐号锁定/解锁/密码失效,锁定 ALTER USER username ACCOUNT LOCK; 解锁 ALTER USER username ACCOUNT UNLOCK; 密码失效 ALTER USER username PASSWORD expire;,Database Administrator Users,数据库没启动时候,特权用户,OS 方式登录,1.OS验证 Oracle安装之后默认情况下是启用了OS认证的,这里提到的os认证是指服务器端os认证。 OS认证的意思把登

10、录数据库的用户和口令校验放在了操作系统一级。如果以安装Oracle时的用户登录OS,那么此时在登录Oracle数据库时不需要任何验证 不论输入什么用户(哪怕这个用户如aaa在数据库中根本不存在),只要以sysdba权限连接数据库,都可以连接上,并且连接用户是sys,这样很方便,有时候,如果忘记了数据库的密码,而又想登录数据库,可以通过这种方式,前提是在数据库服务器上.,OS 方式登录,在win下修改oracle_home/NETWORK/admin/sqlnet.ora SQLNET.AUTHENTICATION_SERVICES= (NTS) =系统采用OS验证 SQLNET.AUTHENT

11、ICATION_SERVICES= (NONE) =系统采用口令文件验证,口令文件验证,2.口令文件验证 Oracle的口令文件的作用是存放所有以sysdba或者sysoper权限连接数据库的用户的口令,如果想以sysdba权限远程连接数据库,必须使用口令文件,否则不能连上。 由于sys用户在连接数据库时必须以sysdba or sysoper方式,也就是说sys用户要想连接数据库必须使用口令文件。,Database Administrator Users,orapwd file= password= entries= entries=max_users 其中entries指明了最多可以有多少

12、不同的users可以以sysdba或是sysoper连接DB。 注意:=前后没有空格,Database Administrator Users,是否使用口令文件,是通过oracle提供的一个参数 Remote_login_passwordfile来控制的,remote_login_passwordfile有none,shared,exclusive3个值。 none表示不使用口令文件,停用口令文件验证,Oracle数据库不允许远程SYSDBA/SYSOPER身份登录。 exclusive表示一个实例独占使用口令文件,也就是各自实例使用单独的口令文件。 shared表示多个实例共享一个口令文件。

13、唯一可通过认证的user是SYS,不能向shared password file中添加user。 SQL alter system set remote_login_passwordfile=exclusive scope=spfile; 向password file添加users:grant sysdba to xx对password file的维护主要是通过删除旧的file并重建。,例:,Create user XXX identified by XXX; Grant sysdba to XXX; 查看PWDorcl.ora 看有sysdba权限的用户:select * from v$pw

14、file_users; Revoke sysdba from XXX;,实例启动时,读入该文件. 一个oracle数据库中可以有多个初始化参数文件共存。 1)静态参数文件(PFILE),该文件为正文文件 InitSID.ora 2)动态服务器参数文件(SPFIEL),该文件为二进制文件 spfileSID.ora window - 读database目录下的spfile linux - 读dbs目录下的spfile,Oracle实例的管理-初始化参数文件,初始化参数文件包含: 实例名和与该实例相关的数据库名 控制文件名字和位置 系统全局区的配置 还原段(回滚段)的配置 该实例所能同时启动的进程

15、数 标准数据块的大小 是否允许DBA远程登录等,初始化参数文件,Create PFILE =pfile名 from SPFILE 目的:便于修改 SPIFLE不可手工修改,PFILE=SPFILE,Spool函数的使用 在windows下,使用spool命令 Spool c:test Show parameter ( any command) Spool off Linux下 命令test.txt,spool,Oracle收到startup命令,会去读参数文件中的配置 A、当有参数时,可以指定是由哪个pfile来启动 注:只能指定pfile,不指定spfile Startup pfile=pa

16、th B、当无参数时 按照如下顺序执行: 1)使用服务器上的spfileSID文件启动实例 2)若找不到,就用默认的SPFILE文件启动实例 3)若找不到,就用initSID文件启动实例 4)若找不到,就用默认的PFILE文件启动实例(init.ora.时间戳文件,在admin下),启动数据库 startup,Startup force RESTRICT PFILE=文件名 open recover database | mount | nomount Nomount : oracle 只启动实例并不打开数据库中的任何文件,连控制文件都不打开。 Oracle进行如下工作: 分配SGA,即配置所

17、有的内存缓冲区和相关的结构。 启动所需的全部后台进程 打开报警文件(alertSID.log)和追踪文件(trace)。,startup,Startup open, 相当于startup Oracle 还将进行如下的工作: 打开所有的联机数据文件 打开所有的联机重做日志文件 如果打开数据库时任何数据文件或联机重做日志文件不存在,oracle服务器将返回出错信息。,startup,为防止用户进程修改数据库中的数据,可以将数据库的状态置为只读 Alter database read only; 置回为正常的状态 Alter database read write; 只读状态的数据库用来:为了待机(

18、standby) 执行查询 使用本地管理的表空间来执行磁盘排序 将数据文件脱机和联机,但不能对表空间进行操作 执行数据库和表空间的脱机恢复,startup,当维护数据库结构或导入导出时,用限制模式启动数据库,具有restricted session系统权限的用户,才可以登录数据库。 一般,只有数据库管理员,才具有restricted session系统权限。 1)Startup restrict 2)Alter system enable restricted session; 注:在用命令2时,oracle只保证将来登录的数据库的用户有restricted session系统权限,在此之前已

19、登录的用户可继续工作,因此需要杀死用户进程。,将数据库置为限制模式,Windows下 例子: 1)用scott用户登录 2)用dos启动用sysdba用户登录sqlplus 3)select sid,serial#,username,type from v$session; 4)alter system kill session sid,serial#,杀死进程,关闭数据库,四种关闭数据库的方法: 关闭方式 A=ABORT I=IMMEDIATE T=TRANSACTIONAL N=NORMALSHUTDOWN 命令格式:shutdown noraml|transactional|immedi

20、ate|abort,1、shutdown normal 例:1)用scott用户登录数据库 2)再用sysdba登录shutdown。 =现象:scott不登出,无法shutdown结束。 2、shutdown transactional 例:1)用scott用户登录数据库 2 ) create table test ( a int ); 3) insert into test values (3); 4) 用sysdba登录shutdown transactional =现象:scott不commit,无法shutdown结束。,关闭数据库实例,数据字典简介,数据字典是由Oracle服务器创

21、建和维护的一组只读的系统表 数据字典中存放了有关数据库和数据库对象的信息 Oracle服务器依赖这些信息管理和维护oracle数据库 数据字典分为两大类 1、基表 2、数据字典视图,数据字典结构,基表 这些底层表保存相关数据库的信息。只有Oracle可以读写这些表。用户很少直接访问它们,因为它们是标准化的,而且大部分数据都以加密的格式保存。 用户可访问视图 这些视图汇总和显示保存在数据字典基表中的信息。这些表将基表转换为有用的信息,比如用户或表名、使用连接和WHERE子句来简化信息。大部分用户都只被赋予了这些视图的访问,而不是直接访问基表。 SYS,数据字典的拥有者 Oracle用户SYS拥有

22、所有的数据字典基表和用户可访问表。没有Oracle用户能够更新(UPDATE,DELET,INSERT)SYS模式包含的模式对象或任意行,因为那样的操作会破坏数据完整性。安全管理员必须严格控制这个中心帐号。 注意:修改或者操作数据字典表的数据能够对数据库操作的影响是持久和有害的。,数据字典简介,数据字典的基表没人能够看懂 用户通过访问数据字典视图得到数据库信息 数据字典视图通过运行catalog.sql脚本来产生 存于oracle_homerdbmsadmin,数据字典所存的信息,数据字典中存储了以下数据库信息: 数据库的逻辑结构和物理结构,如表空间和数据文件的信息 所有数据库对象定义的信息。

23、这些对象包括表、索引、视图、序列号、同义词、过程、函数、软件包和触发器等。 所有数据库对象的磁盘空间分配的信息,如对象所分配的磁盘空间和当前正在使用的磁盘空间 Oracle用户名 每个用户所授予的权限和角色 完整性约束的信息 列的默认值 审计信息等,数据字典的操作和使用,引起oralce服务器修改数据字典的SQL语句: DDL语句增加或减少表空间,增加或减少用户 DCL语句授予用户权限、回收用户权限等。 部分DML语句例如引起表磁盘存储空间扩展的insert或update语句。 一些数据字典视图可被所有用户访问 另一些只被DBA访问 数据字典是表或视图,因此可用SQL查询语句得到信息,数据字典

24、视图_以OBJECT为例,首先用DBA用户登录 1) user,数据字典视图,2) all,数据字典视图,3) dba,数据字典视图,因为user的用户是在查看自己的对象,因此没必要owner这列。ALL和DBA开始的数据字典比USER多了一列OWNER。 所有的数据字典都是静态视图,即当数据库发生变化时,Oracle服务器不会即时刷新这些视图中的信息。 当执行了Oracle的ANALYZE命令后,视图才被刷新。,数据字典视图,数据字典视图包含: 对象的属主 用户所拥有的权限 对象的创建时间 对象存储参数的设置 对象存储空间的使用情况等,格式化数据字典视图的输出,Col XX for aX Col =column For=format 例:col owner for a8,数据字典视图的使用,查询用户下有哪些表,数据字典视图的使用,查询哪些表可用,数据字典视图的使用,查询哪些表可用,类似于user_tables;,动态性能表(视图),有别于以上的静

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论