十一、oracle 数据库管理员
一、数据库管理员 每个oracle数据库应该至少有一个数据库管理员(dba),对于一个小的数据库,一个dba就够了,但是对于一个大的数据库可能需要多个dba分担不同的管理职责。那么一个数据库管理员的主要工作是什么呢: 1.安装和升级oracle 数据库 2.建库,表空间,表,视图,索引… 3.制定并实施备份和恢复计划 4.数据库权限管理,调优,故障排除 5.对于高级dba,要求能参与项目开发,会编写sql 语句、存储过程、触发器、规则、约束、包 二、管理数据库的用户主要是sys和system(sys好像是董事长,system好像是总经理,董事长比总经理大,但是通常是总 经理干事) 在前面我们已经提到这两个用户,区别主要是: 1.最重要的区别,存储的数据的重要性不同 sys:所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle 的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper角色或权限,是oracle权限最高的用户。 system:用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有dba,sysdba 角色或系统权限。 注意:sysdba可以建数据库,sysoper不能建数据库 2. 其次的区别,权限的不同。 sys用户必须以as sysdba或as sysoper形式登录。不能以normal方式登录数据库。 system如果正常登录,它其实就是一个普通的dba用户,但是如果以as sysdba登录,其结果实际上它是作为sys用户登录的,从登录信息里面我们可以看出来。 sysdba和sysoper权限区别图,看图: sysdba>sysoper>dba 可以看到:只要是sysoper拥有的权限,sysdba都有;蓝色是它们区别的地方。(它们的最大区别是:sysdba可以创建数据库,sysoper不可以创建数据库) dba权限的用户 dba用户是指具有dba角色的数据库用户。特权用户可以执行启动实例,关闭实例等特殊操作,而dba用户只有在启动数据库后才能执行各种管理工作。(相当于说dba连startup和shutdown这两个权限都没有)。 两个主要的用户,三个重要权限,他们的区别和联系,大家要弄清楚。 三、管理初始化参数 1)、管理初始化参数(调优的一个重要知识点,凭什么可以对数据库进行调优呢?是因为它可以对数据库的一些参数进行修改修正) 初始化参数用于设置实例或是数据库的特征。oracle9i提供了200多个初始化参数,并且每个初始化参数都有默认值。 2)、显示初始化参数:show parameter 3)、如何修改参数 需要说明的是如果你希望修改这些初始化的参数,可以到文件D:\oracle\admin\myoral\pfile\init.ora文件中去修改。