1.dba的职责
a.安装和升级数据库
b.建库、表空间、表、视图、索引等数据库对象
c.制定并实施备份与恢复计划
d.数据库权限管理,调优,故障排除
e.编写sql语句、存储过程、触发器、规则、约束、包等
2.数据库管理员
管理数据库的用户主要是:sys(董事长)和system(总经理),两者的主要区别如下:
a.最主要的:存数的数据的重要性不同
sys:所有oracle的数据字典的基表和视图都存放在sys用户方案中,这些基表和视图是oracle运行的基础,由数据库自己维护,任何用户都不能手动修改。
system:用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。
b.权限的不同
sys拥有sysdba、sysoper、dba等角色或权限,是oracle权限最高的用户。
system拥有sysdba、dba角色或系统权限。
3.数据库的逻辑备份与恢复
a.导出:导出表、导出方案、导出数据库
导出使用exp命令,exp命令常用选项如下:
userid:用于指定执行导出操作的用户名、口令、连接字符串
tables:指定执行导出操作的表
owner:指定执行导出操作的方案
full=y:指定执行导出整个数据库
inctype:指定执行导出操作的增量类型
rows:指定执行导出操作是否要导出表中的数据
file:指定导出的文件名
direct=y:快速导出,要求数据库和客户端的字符集完全一致,否则会报错
----------------------导出表 exp userid=system/orcl@orcl tables=(scott.emp,scott.dept) rows=n file=d:\1.dmp; 导出其他用户的表,需要具有dba角色或对应的权限(exp_full_database),在表中需要注明导出那个用户的表 ----------------------导出方案,导出某个用户的方案中的表、序列、存储过程等等。 exp userid=system/orcl@orcl owner=(system,scott) rows=n file=d:\1.dmp; 只用修改 tables 为 owner 即可。 ----------------------导出数据库,导出数据库中所有用户的方案 exp userid=system/orcl@orcl full=y rows=n file=d:\1.dmp; 修改 owner 为 full = y 即可。
b.导入:导入表、导入方案、导入数据库
导入使用imp命令,imp命令常用选项如下:
userid:用于指定执行导入操作的用户名、口令、连接字符串
tables:指定执行入出操作的表
fromuser:指定源用户
touser:指定目标用户
full=y:指定执行导入整个数据库
inctype:指定执行导入操作的增量类型
rows:指定执行导入操作是否要导入表中的数据
file:指定导入的文件名
ignore=y:如果表存在,则只导入数据