做了一段时间的数据库开发工作,发现自己居然对数据库管理这方面异常薄弱。
于是,我开始学习有关数据库管理的知识。既然是学习,我想从零开始,所以记录下每天的收获。
一、安装
以前从未安装过服务端,为什么?有现成的环境,别人搭建好的,我在装个客户端配个连接串,OK了。
Oracle的安装还算是比较简单的。
1、选择安装的产品:我选择了 oracle 9i database
2、选择安装类型:自然是企业版
3、数据库配置:这点我觉得非常的人性化,可以根据不同的应用选择专门优化过的配置方案,既然是学习,我选择通用方案。
之后,要做的就是等待安装了。
二、配置
安装完毕后安装程序会请你配置数据库的名称以及系统初始化创建的 SYS ,SYSTEM用户的密码。
完成以上这些就算安装成功了。
我们到 oracle enterprase manager 里面去看看刚建好的数据库吧。
到“例程->配置”看看初始化时我们选择的配置方案究竟是把数据库配成什么样子。
其中有几点需要记录一下,当然在帮助也能找到。
一般
限制模式:如果您只想让那些拥有 RESTRICTED SESSION 系统权限的用户才能访问数据库请选择“是”。只允许具有“限制会话”系统权限的用户进行连接。已连接的用户不受影响。
只读模式:显示数据库是否为只读模式。只读模式使用户可以查询已经打开的数据库,但不可能进行联机数据修改。只有启动例程并装载数据库后,才能在只读模式下更改数据库。
内存
SGA:数据库的系统全局区域。每当一个 Oracle9i 数据库例程启动时,都在内存中分配 SGA。SGA 是一组共享的内存结构,包含一个 Oracle9i 数据库系统的数据和控制信息。如果多个用户同时连接到相同的数据库例程,这些用户将共享 SGA 中的数据。 在 9i 中,可以调整 SGA 的大小,而无需重新启动数据库 (动态)。
这些配置项将直接影响SGA。不过配置起来还是很方便的,需要注意的是这些参数的值可以指定为以 B、MB 或 KB 为单位。"K" 表示“乘以 1000”,"M" 表示“乘以 1000000”。
共享池:“共享池”指定共享池的大小。共享池包含共享游标、存储的过程、控制结构、并行执行消息缓冲区以及其他内容。值越大,多用户系统的性能就越好。值越小,使用的内存就越少。该值被指定为初始化文件参数 SHARED_POOL_SIZE。注:共享池为动态参数。
缓冲区高速缓存 (9i):“缓冲区高速缓存”指定数据库缓冲区高速缓存中的缓冲区的大小。高速缓存中的每个缓冲区的大小为一个 Oracle 数据块的大小 (该大小由初始化参数 DB_BLOCK_SIZE 指定)。因此,高速缓存中的每个数据库缓冲区可以容纳从数据文件中读取的单个数据块。高速缓存的大小有限,因此并非磁盘上的所有数据都可以装入高速缓存。
大型池:“大型池”用于指定大型池的分配堆的大小。共享服务器将大型池的分配堆用作会话内存,通过并行执行将它用作消息缓冲区,通过备份将它用作磁盘 I/O 缓冲区。该值被指定为初始化文件参数 LARGE_POOL_SIZE。
Java 池:“Java 池”指定 Java 池的大小。该值被指定为初始化文件参数 JAVA_POOL_SIZE。
SGA 总容量:SGA 总容量是在该页中显示的各 SGA 组件以及该页中未显示的日志缓冲区和 SGA 固定容量总和。 SGA 的固定容量是分配给 SGA 区域的内存,包含有关数据库和例程状态的一般信息。 SGA 总容量 = 共享池 + 缓冲区高速缓存 + 大型池 + Java 池 + 日志缓冲区
恢复:
“归档日志”模式:使用“归档日志”模式运行数据库后,已填充的联机重做日志文件将在循环周期内重复使用之前被归档。使用“归档日志”模式可以将数据库从例程和磁盘故障中完全恢复过来。另外,还可以在打开并使用数据库时对其进行备份。然而,要维护已归档的重做日志还需要进行其他管理操作。
“无归档日志”模式:使用“无归档日志”模式运行数据库时,已填充的联机重做日志文件不能被归档。如果数据库的重做日志在“无归档日志”模式下运行,则数据库能够从例程故障中完全恢复,却无法从磁盘故障中完全恢复。并且,数据库仅能在完全关闭时才可以备份。因为没有创建已归档的重做日志,所以数据库管理员就不要求做更多的工作。
自动归档:用于指定自动归档重做日志文件。仅当连接的数据库在“归档日志”模式下运行时,才可使用自动归档功能。
注:对归档日志模式所作的更改只会影响当前例程。要进行永久更改,必须编辑初始化参数文件。要在例程启动时启用自动归档功能,请将 LOG_ARCHIVE_START 初始化参数设置为 TRUE。