一. 有关RAC的相关概念
RAC:全称是Real Application Cluster。RAC并非是个新技术,其前身叫OPS(Oracle Parallel Server),从9i开始才改名叫RAC,oracle Data Guard在9i之前叫做Standby
该体系实现了多个实例同时访问和管理同一数据库,多个实例可以存在于不同节点,也可以在相同的节点上(从提升性能的角度来看,并不推荐这样),彼此通过内网连接交换数据,并且能够自动平衡负载,如果其中某个节点发生故障,RAC能够通过后台的监控进程将连接自动切换到另外一个或多个节点上,从而实现应用的无缝切换,对实例的高可用提供保护。
RAC保护的是实例,而并非数据(对数据进行冗余的特性在oracle中叫Data guard)。
CRS:Cluster Ready Service是oracle集群件的软件架构
CVU:全称Cluster Verification Utility,CVU是oracle专门为RAC提供的一个检查工具,目的是期望在安装前就你的安装环境进行检查,看看软硬件环境是否已就绪,该工具功能非常强大,通过搭配不同参数可以检查安装RAC所需环境的方方面面不过,该工具所显示的检查结果也仅供参考,具体情况需要具体分析,并非说其检查报错,你就不能成功配置RAC了。另 ......
层次化查询:
select [level],colomn,...from table
[where where_clause]
[ [start with start_condition] [connect by prior prior_condition] ];
,使用count(distinct level) 可以获取层次数
从下向上遍历,交换connect by prior 父节点和子结点的顺序即可
要去掉某个节点及其自己点在查询结果中,可以在connect by prior 子句中使用and condition 即可。
只去掉某节点,而保留子结点,只需在where 中添加条件即可
层次化查询中也可以使用子查询
利用查询修改,语句
update table T set sid = (select pid from T2 where T.sno = T2.sno)
where exists (select 1 from T2 where T.sno = T2.sno) ......
1.用Oracle用户登陆Linux服务器;
2.在终端窗口输入 sqlplus /nolog
[oracle@hylinux ~]$ sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 7月 29 14:26:16 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL>
3.输入connect /as sysdba
SQL> connect /as sysdba
已连接。
SQL>
4.修改密码:修改system 密码为manager
alter user system identified by manager;
SQL> alter user system identified by manager;
用户已更改。
现在就可以用system/manager登陆Oracle了
关于 USER system ACCOUNT UNLOCK; 错误的解决办法:
原因是system用户被锁定,解锁:
alter user system account unlock; ......
表空间:
Oracle的UNDOTBS01.DBF文件太大的解决办法
1、.禁止undo tablespace自动增长
alter database datafile 'full_path\undotbs01.dbf' autoextend off;
2.-- 创建一个新的小空间的undo tablespace
create undo tablespace undotBS2 datafile 'full_path\UNDOTBS02.DBF' size 100m;
-- 设置新的表空间为系统undo_tablespace
alter system set undo_tablespace=undotBS2;
-- Drop 旧的表空间
drop tablespace undotbs1 including contents;
--查看所有表空间的情况
select * from dba_tablespaces
--创建表空间
create tablespace HRPM0
&nb ......
1. 准备工作
把旧的ORACLE所有文件都COPY备份下来,删除旧目录,再重新安装ORACLE,目录和旧目录一样(如果不一样,要修改的地方比较多).只安装ORACLE,不创建数据库。要恢复的实例为ORCL 。
2.用命令方式,通过要旧的ORA文件创建新的实例ORCL
a) oradim -new -sid ORCL(创建实例)
提示:实例已创建。
b) set ORACLE_SID=ORCL(指定实例)
c) sqlplus /as sysdba (用sysdba登陆)
提示:SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 2月 7 22:54:32 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接到空闲例程。
d) startup (启动数据库)
ORA-01078: failure in processing system parameters
LRM-00109: ???????????????? 'D:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\INITORCL.ORA'
e) 把原目录下的INITORCL.ORA复制到提示的路径下.再次startup
f) startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file 'D:\oracle\product\10.2.0\ ......
select column_name from all_cons_columns cc
where owner='SSH' --SSH为用户名称,要注意大小写
and table_name='SYS_DEPT' --SYS_DEPT为表名,注意大小写
and exists (select 'x' from all_constraints c
where c.owner = cc.owner
and c.constraint_name = cc.constraint_name
and c.constraint_type ='P'
)
order by position
; ......