个人面试题(Oracle数据库开发)
2017-03-02 15:24
337 查看
1、事务槽 update delete 争用事务槽 每个块都有数据槽 2、100万 分区 一亿 分区 区别… 一亿数据量可以考虑子分区 分表 分区合理的话查询性能无差 3、800万数据索引 查询几条数据性能提升很大 查询大量数据 全表比索引要好 索引要回表 4、三范式 第一范式 列不可再分 第二范式 需要主键 第三范式 外键约束,减少冗余 5、存储过程 触发器 函数 语法/区别 网上看详细吧 6、约束有哪几种 五种(都忘了) 主键约束 外键约束 唯一约束 检查约束 非空约束 7、awr 事件 等待事件 锁 db file scattered read 文件分散读取 该事件通常与全表扫描或者fast full index scan有关。 db file sequential read文件顺序读取整代码,特别是表连接:最常见的等待事件 buffer busy wait 缓冲区忙增 b4f4 大DB_CACHE_SIZE,加速检查点,调整代码 latch free: 当闩锁丢失率高于0.5%时,需要调整这个问题。 Enqueue 队列是一种锁,保护一些共享资源,防止并发的DML操作 8、数据库优化方法 9、SGA PGA System global area 系统全局内存 包括 share pool buffer cache 共享sql区 存储用户SQL命令 data dictory cache 数据字典缓存 存储数据库运行的动态信息 database buffer cache 缓存数据文件中读取出的块 large pool java pool personel global area 单独为每个用户分配的内存 10、审计 使用关闭等 --审计 --基于表的审计 create table test_audit (id number, name varchar2(20)); audit all on logminer.test_audit; insert into test_audit values (1,'dong'); commit; delete from test_audit ; commit; select OS_USERNAME, username, USERHOST, TERMINAL, TIMESTAMP, OWNER, obj_name, ACTION_NAME, sessionid, os_process, sql_text from dba_audit_trail b where b.owner='LOGMINER'; noaudit all on logminer.test_audit; --审计 AUDIT DELETE ANY TABLE; --审计删除表的操作 AUDIT DELETE ANY TABLE WHENEVER NOT SUCCESSFUL; --只审计删除失败的情况 AUDIT DELETE ANY TABLE WHENEVER SUCCESSFUL; --只审计删除成功的情况 AUDIT DELETE,UPDATE,INSERT ON user.table by test; --审计test用户对表user.table的delete,update,insert操作 --撤销审计 noaudit all on t_test; 11、执行计划 分析步骤 /* 缩进从右往左 从上往下 */ /* 全表扫描 扫描快(至高水位线) 索引扫描 rowid 运算符 sort 排序 filter 过滤 view 内联视图(自动转换) partition view 分区视图 merge into 合并 CBO 可以用 hint改变 表连接顺序 access 谓词影响数据方位路径 表或索引 filter 仅过滤 set autotrace on */ 12、物化视图 创建 使用场景 --物化试图 /* 普通视图是虚拟表 物化视图是实际存在的表 创建物化视图日志 创建物化视图 物化视图类型 on demand 需要被刷新时刷新 on commit 事务提交刷新 物化视图与普通表一样的字典信息 刷新方式 手动刷新 自动刷新 */ create materialized view mv_name refresh force on demand start with sysdate next to_date(concat(to_char(sysdate+1,'yyyy-mm-dd'),' 22:00:00'),'yyyy-mm-dd hh24:mi:ss') as select d.deptno,count(*) cnt from emp e,dept d where e.deptno=d.deptno group by d.deptno ; 13、RAC RMAN Rac只在本机安装过 还一堆问题。 Rman也在本机使用过 备份恢复,可能还有些参数设置,定时脚本 14、列表 元祖 字典 作死说了解Python 连基础都搞不清楚的 列表- [1,2,3] 方括号 有序可修改 元祖- (1,2,3) 小括号 有序不可修改 字典- {'name':'dong,'age':21'} 花括号 key-value 集合- {1,2,3,4,5} 无序不重复 15、数据库的几种状态 select status from v$instance; shutdown nomount startup nomount STARTED mount alter database mount/startup mount MOUNTED open alter database open/startup OPEN --关闭四种 shutdown normal shutdown transaction --等待事务全部提交 shutdown immediate --未提交的事务将回滚 shutdown abort --强制关闭 异常关闭 16、控制文件丢失 如何处理 /* 提前备份控制文件 1、生成可重建 */
相关文章推荐
- 个人面试题(oracle数据库开发)(一)
- 个人面试题(Oracle数据库开发)(二)
- oracle 数据库开发面试题
- 最常见的oracle数据库面试题、oracle数据库开发面试题
- oracle 数据库开发面试题
- oracle 数据库开发面试题,当时笔试的时候一个没做出来,现附原题及答案
- oracle 数据库开发面试题
- oracle 数据库开发面试题
- 数据库开发个人总结(ADO.NET)
- 开发个人财务管理系统(一)建数据库
- oracle数据库开发的一些经验积累(一)
- [转] 数据库开发个人总结(ADO.NET小结)
- 数据库开发个人总结(ADO.NET)
- 数据库开发个人总结(ADO.NET小结)
- 跨越Oracle和MSSQL关系数据库开发——绪论
- oracle数据库开发的一些经验
- C#.Net开发基于Oracle数据库系统常见异常处理
- 数据库开发个人总结(ADO.NET小结)
- 数据库开发个人总结(ADO.NET小结)
- 数据库开发个人总结(ADO.NET)