数据库管理员的职责:
1. 升级和安装oracle数据库
2. 建库,表空间,表,视图,索引
3. 制定并实施备份与恢复计划
4. 数据库权限管理,调优,故障排除
5. 对于高级dba,要求能参与项目开发,会编写sql语句、存储过程、触发器、约束、包
数据库的逻辑备份与恢复:
导出:
userid
tables
owner
full=y
inctype
rows
file
导出表:
1. 导出自己的表
Exp userid=scott/tiger@myoral tables=(emp) file=d:e1.dmp
2. 导出其他方案的表
Exp userid=system/manager@myoral tables=(scott.emp) file=d:e2.dmp
导出方案:
1. 导出自己的方案
Exp scott/tiger@myoral owner=scott file=d:scott.dmp
2. 导出其他方案
Exp system/manager@myoral owner=(system,scott) file=d:system.dmp
导出数据库:
Exp userid=system/manager@myoral full=y inctype=complete file=d:\aaa.dmp
导入表:
1. 导入自己的表
Imp userid=scott/tiger@myoral tables=(emp) file=d:xx.emp
2. 导入表到其他用户
Imp userid=system/manager@myoral tables=(emp) file=d:xx.dmp to user=scott
3. 导入表的结构
Imp userid=scott/tiger@myoral tables=(emp) file=d:xxx.dmp rows=n
4. 导入数据
Imp userid=scott/tiger@myoral tables=(emp) file=d:xxx.dmp ignore=y
导入数据库:
Imp userid=system/manager full=y file=d:xxx.dmp
数据字典和动态视图:
Dba_sys_privs 系统权限
Dba_tab_privs 对象权限
Dba_col_privs 列权限
Dba_role_privs 角色
显示当前用户可以访问的所有数据字典视图
Select * from dict where comments like ‘%grant%’;
显示当前数据库的全称
Select * from global_name
建立数据库表空间:
Create tablespace data01 datafile ‘d: estdata01.dbf’ size 20m uniform size 128k
使用数据库表空间:
Create table mypart(deptno number(4),dname varchar2(14),loc varchar2(13)) tablespace data01;
改变表空间的状态;
Alter tablespace 表空间名 read write
删除表空间:
Drop tablespaces ‘表空间’ including contents and datafiles
扩展表空间:
1. 增加数据文件
Alter tablespace sp01 add datafile ‘d: estsp01.dbf’ size 20m
2. 增加数据文件的大小
Alter database datafile ‘d; estsp01.dbf’ resize 20m
3. 设置文件的自动增长
Alter database dayafile ‘d: estsp01.dbf’ autoextend on next 10m maxsize 500m
移动数据文件:
1. 确定数据文件所在的表空间
Select tablespace_name from dba_data_files where file_name=’d:sp001.dbf’;
2. 使表空间脱机
Alter tablespace sp01 offline
3.使用命令
Host move d:sp001.dbf c:sp001.dbf
4.移动数据文件
Alter tbalespace sp01 rename datafile ‘d:sp001.dbf’ to ‘c:sp001.dbf’;
5. 使表空间联机
Alter tablespace sp001 online
显示表空间所包含的数据文件
Select file_name,bytes from dba_data_files where tablespace_name=’表空间名’