数据库管理员的职责:
1, 安装和升级oracle数据库
2, 建库,表空间,表,试图,索引
3, 制定并实施备份和恢复的计划
4, 数据库权限管理,调优,故障排除
5, 对于高级dba,要求能参与项目开发,会编写sql语句、存储过程、触发器、规则、约束、包
管理数据库的用户主要是sys和system
两用户区别:
1, 存储的数据的重要性不同
Sys:所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和试图对于oracle的运行时至关重要的,由数据库自己维护,任何用户都不能手动更改,sys用户拥有dba,sysdba,sysoper角色或权限,是oracle权限最高的用户。
System:用于存放一级的内部数据,如oracle的一些特性或工具的管理信息,system用户拥有dbs,sysdba角色或系统权限
2, 权限的不同
Sys用户必须以as sysdba或as sysoper形式登录,不能以mormal方式登录数据库
System如果正常登录,它其实就是一个普通的dba用户,但是如果以assysdba登录,其结果实际上他作为sys用户登录的。
dba数据库管理员角色
sysdba系统管理员
sysoper系统操作员
>conn sys/123 as sysoper
Sysdba>sysoper>dba
Dba只能在启动数据库过后才能执行一些操作;相当于dba用于没有startup和shutdown的权限
管理初始化参数
初始化参数用于设置实例或是数据库特征。
>show parameter
数据库表的逻辑备份和恢复
逻辑备份:是指使用工具export将数据对象的结构和数据导出到文件的过程。物理备份即可在数据库open的状态下进行也可在关闭数据库后进行,但是逻辑备份和恢复只能在open的状态下进行。
导出具体分为:导出表,导出方案,导出数据库三种方式。
>exp 命令 常用选项有
>userid tables owner full=y inctype rows file
导出表分两种: 导出自己的表 导出其他方案的表;
Oracle中究竟有多少角色?
>select * from dba_roles;
如何查询一个角色 包括的权限?
A,一个角色包含的系统权限
>select *from dba_sys_privs where grantee=’DBA’;
>select *from role_sys_privs where role=’connect’;
B,一个角色包含的对象权限;
>select *from dba_tab_privs where grantee=’DBA’
如何查看某个用户,具有什么样的角色?
Select * from dba_role_privs wheregrantee=’gjjadmin’;
数据字典记录有oracle数据库的所有系统信息。通过查询数据字典可以取得以下系统信息:比如
1, 对象定义情况
2, 对象占用空间大小
3, 列信息
4, 约束信息