excel 到 oracle 数据库
方法一: 生成sql =" insert into tangyu_1 (aa,bb,cc,dd,ee,ff,gg) values ('"&A2&"','"&B2&"','"&C2&"','"&D2&"','"&E2&"','"&F2&"','"&G2&"'); "方法二生成csv 文件: 利用sqlldr 进行 导入数据库 [@more@]方法一: 生成sql =" insert into tangyu_1 (aa,bb,cc,dd,ee,ff,gg) values ('"&A2&"','"&B2&"','"&C2&"','&q
测试热备时scn 的情况
测试热备时scn 的情况[@more@]1.在没有热备份前: SQL> select checkpoint_change# from v$database;CHECKPOINT_CHANGE#------------------ 1272750703SQL> select file#,checkpoint_change#,last_change# from v$datafile; FILE# CHECKPOINT_CHANGE# LAST_CHANGE#---------- ------------------ ------------ 1 1272750703 2 1272750703 3 1272750703 4 1272750703SQL> select file#,checkpoint_change# from v$datafile_header; FILE# CHEC
scn 的理解
系统检查点scn(v$database(checkpoint_change#))数据文件检查点(v$datafile(checkpoint_change#))数据文件终止scn(v$datafile(last_change#))数据文件中存放的检查点启动scn (v$datafile_header(checkpoint_change#)[@more@]系统检查点scn(v$database(checkpoint_change#))数据文件检查点(v$datafile(checkpoint_change#))数据文件终止scn(v$datafile(last_change#))数据文件中存放的检查点启动scn (v$datafile_header(checkpoint_change#)1、系统检查点scn 当一个检查点动作完成之后,Oracle就把系统检查点的SCN存储到控制文件中。 s
restore ,recover 时 scn 的变化:
restore ,recover 时 scn 的变化:[@more@]restore 后没有恢复,时的scn 情况SQL> select checkpoint_change# from v$database;CHECKPOINT_CHANGE#------------------ 1272749453SQL> select file#,checkpoint_change#,last_change# from v$datafile; FILE# CHECKPOINT_CHANGE# LAST_CHANGE#---------- ------------------ ------------ 1 1272750081 2 1272750082 3 1272750134 4 1272750135SQL> select file#,checkpoint_change# from v
oracle 日志分析
1. 确定那个日志文件2.日志分析[@more@]SQL> show parameter utlNAME TYPE VALUE------------------------------------ ----------- ------------------------------utl_file_dir string /u01/oracle/admin/test/cdumpsqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on Sun Nov 20 21:58:37 2005Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect / as sysdbaConnected.SQL> exec dbms_logmnr_d.build('oradic.ora','/u01/oracle/admin/test/cdump');PL/SQL procedure successfully co
rman 迁移整个数据库
1. 将oracle 安装文件 tar个 包 这一步主要使数据库到 nomount 状态,口令文件,spfile.ora 等 2. restore controlfile from '/u01/oracle/cf_c-2783238366-20070716-00'; 3. rman target / rman>startup mount;4. restore database;5. 恢复数据库 recover database6. 以 resetlogs 打开数据库 。 rman > alter database open resetlogs;[@more@]这个是全库备份的备份集$ ls -lttotal 137292080-rw-r----- 1 oracle dba 7634944 Jul 16 09:47 cf_c-2783238366-20070716-00-rw-r--r-- 1 oracle dba 3459
rman 异地恢复,备份路径不一样时数据库恢复
异地恢复rman 需要 盘阵节点不一样,我们需要一下几个方面: 1 . 作软连接 ln -s source target2. 恢复控制文件,到mount 状态3. alter database rename file ' ' to ' ' ; --- 改变日志文件的路径,名称4. set newname for datafile '' to '' ; restore database ; switch datafile all; 5. recover [@more@]主机1 192.168.0.1 盘镇挂在 /u01 下 数据文件,控制文件,日志文件 在 /u01/oracle/oradata/fcard/归档日志在 /u01/oracle/oradata/fcard/archive 下
数据库恢复视图(rman - v$ 对应)
在 执行备份恢复时,rman 和 手工恢复的视图的对应:列出数据库的数据文件 : report schemaselect file#,name from v$datafile列出归档文件的相关信息list archivelog all ;list backup of archivelog all; select * from v$archived_log where deleted='NO' select * from v$log ;select * from v$log_history;在没有进行备份前,状态都是 not active,在备份的时候状态变成activeselect * from v$backup list backup of database;select * from v$datafile_header ----CHECKPOINT_CHANGE# ----scn在恢复的时候,主要看 database scn ,co
查询 oracle 锁
5、查询数据库的是否有锁表,以及锁表的级别select b.object_name ,a.session_id,a.locked_mode from v$locked_object a ,dba_objects b where a.object_id=b.object_id;select sid,type,id1,id2, decode(lmode,0,'None',1,'Null',2,'Row share', 3,'Row Exclusive',4,'Share',5,'Share Row Exclusive',6,'Exclusive') lock_type,request,ctime,block from v$lock where TYPE IN('TX','TM');select rpad(oracle_username,10) o_name,session_id sid,decode(locked_mode,0,'None',1,'Null',2,'Row share', 3,'Row Exclusive',4,'Share'
oracle 10g tuning 常用sql
v$active_session_history V$SYSTEM_WAIT_CLASS v$session [@more@]select obj.object_name, obj.object_type, ash.event, sum(ash.wait_time + ash.time_waited) wait_timefrom v$active_session_history ash, dba_objects objwhere ash.sample_time > sysdate -1 and ash.current_obj# = obj.object_idgroup by obj.object_name, obj.object_type, ash.eventorder by 4 desc;select ash.user_id, u.username, sqla.sql_text, sum(ash.wait_time + ash.time_waited) wait_timefrom