首页 > 代码库 > 数据库管理员<三>
数据库管理员<三>
数据库管理员
? 介绍
每个 oracle 数据库应该至少有一个数据库管理员(dba),对于一个小的数据库,一个 dba 就够了,但是对于一个大的数据库
可能需要多个 dba 分担不同的管理职责。那么一个数据库管理员的主要工作是什么呢:
? 职责
1.安装和升级 oracle 数据库
2.建库,表空间,表,视图,索引„
3.制定并实施备份和恢复计划
4.数据库权限管理,调优,故障排除
5.对于高级 dba,要求能参与项目开发,会编写 sql 语句、存储过程、触发器、规则、约束、包
Oracle 安装会自动的生成 sys 用户和 system 用户:
(1) sys 用户是超级用户,具有最高权限,该用户默认的密码是 change_on_install
(2)system 用户是管理操作员,权限也很大,默认的密码是 manager
? 管理数据库的用户主要是 sys 和 system
(sys 好像是董事长,system 好像是总经理,董事长比总经理大,但是通常是总经理干事)
在前面我们已经提到这两个用户,区别主要是:
1.最重要的区别,存储的数据的重要性不同
sys:所有 oracle 的数据字典的基表和视图都存放在 sys 用户中,这些基表和视图对于 oracle 的运行是至关重要的,由数据库
自己维护,任何用户都不能手动更改。sys 用户拥有 dba,sysdba,sysoper 角色或权限,是 oracle 权限最高的用户。
system:用于存放次一级的内部数据,如 oracle 的一些特性或工具的管理信息。system 用户拥有 dba,sysdba 角色或系统权
限。
看图:
sysdba 可以建数据库,sysope 不能建数据库
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 这两个权限都没有)
两个主要的用户,三个重要权限,他们的区别和联系,大家要弄清楚
管理初始化参数
? 管理初始化参数(调优的一个重要知识点,凭什么可以对数据库进行调优呢?是因为它可以对数据库的一些参数进行修改修
正)
初始化参数用于设置实例或是数据库的特征。oracle9i 提供了 200 多个初始化参数,并且每个初始化参数都有默认值。
? 显示初始化参数
(1) show parameter 命令
? 如何修改参数
需要说明的如果你希望修改这些初始化的参数,可以到文件 D:\oracle\admin\myoral\pfile\init.ora 文件中去修改比如要修
改实例的名字
数据库管理员<三>