------------------------
--数据库管理员
------------------------
--1、职责
①安装和升级Oracle数据库
②建库、表空间、表、视图、索引.....
③指定并实施备份与恢复计划
④数据库权限管理、调优、故障排除
⑤对于高级dba,要求能参与项目开发,会编写sql语句、存储过程、触发器、规则、约束、包
--2、sys与system的区别
1、最重要的却别,存储的数据的重要性不同
sys:
所有Oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于Oracle的运行是至关重要的
由数据库自己维护,任何用户都不能手动更改
sys用户拥有dba[角色]、sysdba[系统权限]、sysoper[系统权限]角色或权限是Oracle权限最高的用户
system:
用于存放次一级的内部数据,如Oracle的一些特性或工具的管理信息
system拥有dba\sysdba角色或系统权限
2、其次区别,权限的不同
sys:
用户必须以as sysdba或as sysoper形式登录
不能以normal方式登录数据库
system:
system如果正常登录,它其实就是一个普通的dba用户
但是如果以as sysdba登录,其结果实际上它是作为sys用户登录的
--3、管理初始化参数
1、显示初始化参数 [system/sys 中显示]
show parameter;
2、如何修改参数
可以到文件 Oracle\Oracle11g\admin\orcl\pfile\init.ora 中修改
--------------------------------
--数据库[表]的逻辑备份与恢复
--------------------------------
导出具体的分为:到处表、到处方案、到处数据库三种方式
导出使用exp命令来完成,该命令常用的选项有:
userid: 用于指定执行导出操作的用户名、口令、连接字符串
tables: 用于指定执行导出操作的表
owner: 用于指定执行导出操作的方案
full=y: 用于指定执行导出操作的数据库
inctype: 用于指定执行导出操作的增量类型
rows: 用于指定执行导出操作是否导出表中的数据
file: 用于指定导出文件名
--1、导出表
①导出自己的表(+数据)
exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2...) file=备份路径
如:exp userid=scott/tiger@orcl tables=(emp) file=d:/emp.dmp
②导出自己的表结构
exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2...) file=备份路径 rows=n
rows=n: n表示not 不要数据
③导出其它方案的表(+数据)
如果用户要导出其它方案的表,需要具有 dba权限 或是 exp_full_database 的权限,比如 system 就可以导出scott的表
exp userid=用户名/密码@数据库实例名 tables=(方案名.表名1,方案名.表名2...) file=备份路径
如:exp userid=system/manager@orcl tables=(scott.emp) file=d:/emp.dmp
④使用直接导出方式
exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2...) file=备份路径 direct=y
这种方式比默认的常规方式速度快,当数据量大时,可以使用这种方式
当数据库的字符集与客户端字符集 不一致 会报错
--2、导入表
①导入自己的表(+数据)
imp userid=scott/tiger@tangtao tables=(emp) file=d:\aa.dmp
②导入其他用户的表(+数据)
要求该用户具有dba的权限或是exp_full_database的权限
imp userid=system/manager@tangtao tables=(emp) file=d:\aa.dmp touser=scott
③导入表的结构
只导入表的结构而不导入数据
imp userid=scott/tiger@tangtao tables=(emp) file=d:\aa.dmp rows=n
--3、导出方案
①导出自己的方案
exp userid=用户名/密码@数据库实例名 owner=所有者 file=备份路径
如:exp userid=scott/tiger@orcl owner=scott file=d:/scott.dmp
②导出其它方案
如果用户要导出其它方案的表,需要具有 dba权限 或是 exp_full_database 的权限,比如 system 就可以导出其它方案
exp userid=用户名/密码@数据库实例名 owner=(所有者1,所有者2) file=备份路径
注意:
如果用户的权限够大,则可一次性导出多个用户的方案 比如:system
--4、导入方案
①导入数据
如果对象(比如表)已经存在可以只导入表的数据
imp userid=scott/tiger@tangtao tables=(emp) file=d:\aa.dmp ignore=y
②导入数据库
在默认情况下,当导入数据库时,会导入所有对象结构和数据
imp userid=system/manager full=y file=d:\xx.dmp