Oracle ASM 详解
ASM:Automatic Storage Management, 是Oracle 主推的一种面向Oracle的存储解决方案, ASM 和 RDBMS 非常相似,ASM 也是由实例和文件组成, 也可以通过sqlplus 工具来维护。
1. ASM 实例由SGA 和后台进程组成。
1.1 SGA 组成:
ASM 实例的SGA包括Buffer Cache, Share Pool, Large Pool等。 需要注意的是Share Pool, 因为Extent Map 要放在这部分的内存中,需要更具数据量来估计Extent Map 的大小做相应的调整。
Extent Map 的大小可以根据所有文件大小的和来估算,使用下面的语句来计算所有文件和:
Select sum(bytes)/(1024*1024*1024) from v$datafile;
Select sum(bytes)/(1024*1024*1024) from v$logfile a, v$log b where a.Group#=b.Group#;
Select sum(bytes)/(1024*1024*1024) from v$tempfile where status='online';
这3个sum 的总和对应着数据库存放ASM中所有文件大小总和, 对于使用External Redundancy 的磁盘组, 每100G 需要1MB 的Extent Map, 根据这个比例计算Extent Map 所需要的空间,在加上额外的2MB就可以了。 在实际工作中一般不需要考虑ASM SGA的配置, 使用Oracle 提供的缺省值就可以了。
1.2 后台进程
ASM 实例比RDBMS 实例多2个进程: RBAL 和 ABRn。
RBAL: 这个进程也叫Rebalancer进程, 负责规划ASM 磁盘组的Reblance活动。
ABRn:是RBAL进程的子进程,这个进程在数量上可以有多个, n从1~9, 这组进程负责真正
相关文档:
在Oracle8i或以上版本中,可以创建以下两种临时表:
1。会话特有的临时表
CREATE GLOBAL TEMPORARY <TABLE_NAME> (<column specification>)
ON COMMIT PRESERVE ROWS;
2。事务特有的临时表
CREATE GLOBAL TEMPORARY <TABLE_N ......
在实际开发中,经常会需要对数据库进行访问,最常见的开发方法就类似:
string sql = "select * from table1 where name = '" + name + "'";
这种方式有被注入攻击的危险
所以解决方案有2种:
1、改成:string sql = "select * from table1 where name = '" + name.Replace("'","''") + "'"; // 替换一 ......
日常开发活动中,有时候需要对oracle执行计划进行监控,以此来调优程序和数据库方面的性能。
常用方法有以下几种:
一、通过PL/SQL Dev工具
1、直接File->New->Explain Plan Window,在窗口中执行sql可以查看计划结果。其中,Cost表示cpu的消耗,单位为n%,Cardinality表示执行的行数,等价Row ......
原文地址:http://www.dbabeta.com/2008/oracle_os_pwfile_authentication.html
本文概述与实验环境
概述:
本文只讨论OS认证和口令文件认证方式的配置方法,如何配置以及使用OS认证和口令文件认证方式验证SYSDBA/SYSOPER权限。
实验环境:
Oracle 10.1 + Windows 2003 和 Oracle 10.2 + RHEL 4
特殊权限与Oracle登陆 ......
SQLPlus是oracle提供的一个命令行执行的工具
SQLPlus中用两种命令:
sqlplus:以命令行的方式进入数据库连接
sqlplusw:以窗口的形式启动命令行工具 注:主机字符串,输入数据库名称
&n ......