Oracle数据库
1.简述什么是关系型数据库?
a)所谓关系型数据库,是指采用了关系模型来组织数据的数据库。关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系组成的一个数据组织。
b)关系型数据库是由许多数据表(Table)所组成,表又是由许多记录(Row/Record)所组成,而记录又是由许多的字段(Column/Filed)所组成。
2.什么是主键?
设置一个表中的某个字段为主键,这个字段能够唯一的确定该表中某条记录,这样的字段我们成为主键。
3.什么是外键?
外部键约束用于强制参照完整性,提供单个字段或者多个字段的参照完整性。
4.主外键关联的作用?
a)保证数据完整性
b)消除冗余数据
5.数据库设计三大范式
1)所有字段都是不可分解的原子值。
2)确保数据表中的每一列都和主键相关,而不能只与主键的某一部分相关。
3)每一列数据都和主键直接相关,而不是间接相关。
6.怎样优化Oracle数据库,有几种方式?
1)个人理解,数据库性能最关键的因素在于IO,因为操作内存是快速的,但是读写磁盘是速度很慢的,优化数据库最关键的问题在于减少磁盘的IO,就个人理解应该分为物理和逻辑的优化。物理指的是Oracle产品本身的一些优化,逻辑优化是指应用程序级别的优化。
2)物理优化的一些原则:
<1>Oracle的运行环境(网络,硬件等)。
<2>建立合适的索引(减少IO)。
<3>将索引数据和表数据分开在不同的表空间上(降低IO冲突)。
<4>建立表分区,将数据分别存储在不同的分区上(以空间换区时间,减少IO)。
3)逻辑上优化:
<1>可以对表进行逻辑分割,如中国移动用户表,可以根据手机尾数分成10个表,这样对性能会有一定的作用。
<2>尽量不适用*号,如select * From Emp,因为要转化为具体的列明是要查数据字典,比较耗时。
<3>数据库不仅仅是一个存储数据的地方,同样是一个编程的地方,一些耗时的操作,可以通过存储过程等在用户较少的情况下执行,从而错开系统使用的高峰时间,提高数据库性能。
7.数据库怎样实现每隔30分钟备份一次?
通过操作系统的定时任务调用脚本导出数据库。