oracle管理技术
文章平均质量分 84
warden2010
这个作者很懒,什么都没留下…
展开
-
ORA-00600 [kcbchg1_12]
ORA-00600 [kcbchg1_12]原创 2017-04-07 14:52:49 · 734 阅读 · 0 评论 -
export 批量导数据(分区)脚本(手动)
<br />经常在项目中要批量备份数据,在数据仓库环境中,对于分区表的备份我们可以通all_tab_partitions进行批量处理,对于非分区表一般比较容易处理,这里不做介绍。<br />1.生成导数据脚本<br />select 'nohup exp '||'scott||'/'||'tigger'||'@bidb LOG='||t.partition_name||'.log TABLES=/('||t.table_name||':'||t.partition_name||'/) FILE='||t.p原创 2011-04-25 10:14:00 · 953 阅读 · 0 评论 -
oracle 数据字典
在看盖国强的DBA入门,进阶与诊断案例时,按照他的思路把oracle的数据字典进行总结:1.数据字典的组成a.内部RDBMS(X$)表b.数据字典表c.动态性能视图d.数据字典视图2.各个部份描述a.内部表(X$),X$是数据库的核心部份,这些表用于跟踪内部数据信息,维护数据库正常运行,x$是加密命名的,是oracle公司的技术机密,oracle通过X$创建大量的视图,提供用户查询和管理数据库之用。oracle不充许sysdba以外的用户直接访问,显示授权是不被充许的。由于这部份没有文档一般只知道几个就己经原创 2011-04-10 18:31:00 · 1001 阅读 · 0 评论 -
oracle 修改日志大小及增加日志成员
<br />今天在看《剑破冰山》这本书,有一个logfile switch 等待的问题,书上提到有两种解决问题方法,1.增加dbw进程数2.增大日志文件大小,对于第一种方法只需要更改一下参数这里不进行介绍,我主要介绍日志的一些操作及原则,当然了这些信息主要对参照网上的信息和自己的一些实际操作。<br />1.增大日志文件大小,我是通过新创建大的日志组然后进行切换实现的<br />a.创建新的日志组<br /><br />alter database add logfile group 4 ('/u01/or原创 2011-04-03 22:29:00 · 11581 阅读 · 0 评论 -
Oracle10g中启动和关闭OEM
从Oracle10g开始,Oracle极大的增强了OEM工具,并通过服务器端进行EM工具全面展现。在10g中,客户端可以不必安装任何Oracle客户端工具,仅凭浏览器就可以调用强大的EM工具。在Server端,可以通过如下命令启动EM工具控制台:emctl start dbconsole以下是启动过程:[oracle@danaly ~]$ emctl start dbconsoleTZ set to PRCOracle Enterprise Manager 10g Database Contro原创 2011-03-22 23:13:00 · 4836 阅读 · 0 评论 -
ORA-00600:[32695], [hash aggregation can't be done]错误解决
<br />在开发过程中,由于要求的字段比较多而且都是要经过group by 统计,程序调度一段时间后报错,ORA-00600:[32695], [hash aggregation can't be done]参照网上的解决方法进行在存储过程序中使用方法进行解决,现在该文转载一下。<br />以下为原文:<br />还是那个hash group by算法的问题,日志文件中出现以下记录:<br />12345678910111213141516171819202122232425262728293031323原创 2011-03-22 13:48:00 · 1948 阅读 · 0 评论 -
给想转行做DBA的朋友一些劝告(转载)
<br />给想转行做DBA的朋友一些劝告<br /><br />所谓忠言逆耳,良药苦口,各位看官,请耐着心看完,对你们是会有帮助的,特别是临近毕业的毕业生。<br />最近公司因为项目原因,需要招各种DBA,有中级的,有初级的,我也参与其中,面试了一些,下面跟大家分享一下面试的感受。<br />有个大学生,2010年毕业,做了一段时间的开发,想转行做DBA,来到我公司面试,湖北小伙,第一感觉一般,简历平平,待业几个月,做过短暂开发。我问他:你是开发出身,为什么要应聘DBA职位?他回答一个朋友告诉他,要想快原创 2011-03-16 12:56:00 · 4079 阅读 · 3 评论 -
Oracle Recyclebin - purge
<br />使用 Oracle Database 10g中的闪回表特性,可以毫不费力地恢复被意外删除的表<br />以下是一个不该发生却经常发生的情况:用户删除了一个非常重要的表—当然是意外地删除—并需要尽快地恢复。(在某些时候,这个不幸的用户可能就是 DBA!)<br />Oracle9iDatabase 推出了闪回查询选项的概念,以便检索过去某个时间点的数据,但它不能闪回 DDL 操作,如删除表的操作。唯一的恢复方法是在另一个数据库中使用表空间的时间点恢复,然后使用导出/导入或其他方法,在当前数据库中重原创 2011-03-10 10:48:00 · 2007 阅读 · 0 评论 -
是否使用spfile
<br />判断是否使用了SPFILE,可以使用以下方法:<br />1.查询v$parameter动态视图,如果以下查询返回空值,那么你在使用pfile.<br /><br />SQL> SELECT name,value FROM v$parameter WHERE name='spfile';<br />NAME<br />------------------------------------------------------------------<br />VALUE<br />-------原创 2011-03-03 20:45:00 · 866 阅读 · 0 评论 -
oracle undo表空间切换
<br />Oracle的AUM(Auto Undo Management)从出生以来就经常出现只扩展,不收缩(shrink)的情况(通常我们可以设置足够的UNDO表空间大小,然后取消其自动扩展属性),在实际的环境中遇到undo表空间为断上涨,报警短信不断。<br />1.确认文件<br />SQL> select file_name,bytes/1024/1024 from dba_data_files 2 where tablespace_name like 'UNDOTBS1';FIL原创 2011-03-04 22:39:00 · 1107 阅读 · 0 评论 -
oracle 建表相关参数
<br />建表一般来说是个挺简单的事情,但是Oracle的建表语句有很多可选的参数,有些我们可能平时不太用,用的时候又不知道怎么用,这里就写一个较完整的建表的例<br />create table tp_serv_day <br />(<br />serv_id number(15)<br />constraint tp_serv_day_pk primary key,<br />serv_name varchar2(200)<br />constraint tp_serv_day_cn1 not nul原创 2011-01-16 20:58:00 · 3314 阅读 · 0 评论 -
Oracle表的分析统计及应用的存储过程
<br /><br />使用dbms_stats 还是analyze<br />自从Oracle8.1.5引入dbms_stats包, Oracle及专家们就推荐使用dbms_stats取代analyze。 理由如下:<br />1. dbms_stats可以并行分析<br />2. dbms_stats有自动分析的功能(alter table monitor )<br />3. analyze 分析统计信息的有些时候不准确<br /><br /> <br /> <br /> <br />第1,2比较好理解原创 2011-04-26 15:55:00 · 2291 阅读 · 0 评论 -
Oracle数据字典视图(列表)
<br /> Oracle数据字典视图 <br />名称 含义 <br />DBA_2PC_NEIGHBORS 包含待处理事务进入连接和退出连接信息。 <br />DBA_2PC_PENDING 包含等待恢复的分布式事务的信息。 <br />DBA_ALL_TABLES 显示数据库中所有表(对象表和关系表)的描述。 <br />DBA_ANALYZE_OBJECTS 列出分转载 2011-05-04 08:49:00 · 1059 阅读 · 0 评论 -
利用oracle dbms_scheduler执行windows的bat脚本加载数据
利用oracle dbms_scheduler执行windows的bat脚本加载数据1.windows 配置dbms_scheduler 运行external job需要做以下配置A.确保Windows服务启动 -- OracleJobSchedulerORACLESID,我的数据库SID为rwadb 所以为OracleJobSchedulerRWADB,如下图所示原创 2015-10-10 15:16:08 · 1804 阅读 · 0 评论 -
Oracle移除表空间的数据文件 ora-00604 ora-01426
项目背景:在之前开发环境数据库管理比较乱,在表空间不足时只是添加数据文件,测试完后数据己删除,但数据库表空间所占的空间不能回收,导致数据库的存储目录使用率达到97%以上实际使用只有10%,迫切需要将不用空间进行回收.技术背景:Oracle不提供如删除表、视图一样删除数据文件的方法,数据文件是表空间的一部分,所以不能“移走”表空间。Oracle 10G R2开始,可以采用:Alter t原创 2015-07-01 17:29:56 · 3706 阅读 · 0 评论 -
Oracle Scheduler Chain 的用法
本人是借荐他人的文章目的是学习dbms_scheduler创建CHAIN类型的JOB,至于EXECUTABLE类型的JOB我己经在介绍了.下面转网上相关介绍:Oracle CHAIN,也就是链,是将一串需要完成的作业连在一起,根据每一个步骤完成的不同结果来确定下面的哪一个动作需要被完成。实际上也就是if .. then ..else。比如,可能有如下的定义,step 1成功执行,执行ste原创 2015-02-11 22:50:58 · 1611 阅读 · 0 评论 -
DBMS_SCHEDULER执行PERL脚本加载数据
1.本人例子利用oracle 11g 的dbms_scheduler包实现,其中主要用到三个过程分别为SET_JOB_ARGUMENT_VALUE,CREATE_JOB,RUN_JOB三个过程,其中三个过程的参数说明如下:create_job参数:AttributeDescriptionjob_nameName of the job原创 2015-02-09 17:57:16 · 1335 阅读 · 0 评论 -
imp报IMP-00010,IMP-00013错误
在导入dmp文件时报以下错误:IMP-00010: 不是有效的导出文件, 头部验证失败IMP-00000: 未成功终止导入在网上查有两种方法,我是通过第二方法1.imp/exp的版本不对,也就是说低版本的导出,可以用高版本的导入,但高版本导出不能用低版本的导入,这个版本不只是指imp/exp的版本,也是指数据库的版本2.可能你在用ftp download时未设置bina原创 2012-07-19 19:13:15 · 9368 阅读 · 0 评论 -
通过外部表查看Alert日志
1.找到Alert日志所在的目录show parameter background_dump_dest;SQL> show parameter background_dump_dest; NAME TYPE VALUE------------------------------------ -----原创 2012-03-27 18:34:45 · 1212 阅读 · 0 评论 -
ORA-01157、ORA-01110 (rac 增加结点2的undo表空间)
由于ETL在加载表的上一周期全量数据时,undotbs2表空间报满,不释放,本想别建一个undo表空间,进行切换,但又没有相应的裸设备,所以错误的没有在共享存储上建undo表空间,导致DBWR不能定位,原因是这个数据文件只有这个结点有访问权限,所以要把这个表空间删除。1.建表空间过程:create undo tablespace undotbs3 datafile '/oracle/app原创 2011-12-04 22:06:25 · 1807 阅读 · 0 评论 -
Oracle 字符集问题解析
经常看到一些朋友问ORACLE字符集方面的问题,我想以迭代的方式来介绍一下。[B]第一次迭代:掌握字符集方面的基本概念。[/B] 有些朋友可能会认为这是多此一举,但实际上正是由于对相关基本概念把握不清,才导致了诸多问题和疑问。首先是字符集的概念。我们知道,电子计算机最初是用来进行科学计算的(所以叫做“计算机”),但随着技术的发展,还需要计算机进行其它方面的应用处理。这就要求计算转载 2011-11-27 20:49:20 · 633 阅读 · 0 评论 -
ORA-00600: 内部错误代码, 参数: [4194], [24], [22], [], [], [], [], []
由于电脑经常非法关机,导致数据关闭时,出现以下错误。Errors in file c:\oracle\product\10.1.0\admin\orcl\bdump\orcl_smon_5140.trc:ORA-00607: Internal error occurred while making a change to a data blockORA-00600: internal原创 2011-11-24 21:42:31 · 4277 阅读 · 0 评论 -
oracle数据库open_mode的改变
<br />数据库的open_mode有read only和read write 中,要改变需要重新启动数据库。<br />一.read only <br />1.关闭数据库 shutdonw immediate;<br /><br />2.启动数据库到mount状态 <br />ora_test@oracle[/home/oracle]> sqlplus / as sysdba<br /><br />SQL*Plus: Release 10.2.0.1.0 - Production on Sun Mar原创 2011-01-15 22:17:00 · 11647 阅读 · 1 评论 -
oracle Storage的参数具体含义。
<br />通过图表的方式把相关参数展示给大家.<br /><br />图表阐述<br /> <br /> <br />可用于:表空间、回滚段、表、索引、分区、快照、快照日志<br /> <br /> <br /> <br />建议PCTINCREASE参数设置为0,可使碎片最小化,使每一个Extent都相同(等于NEXT值)<br /> <br />一旦建立了某个对象,它的INITIAL和MINEXTENTS参数不能修改(Oracle 816中可修改MINEXTENTS参数)<br /> <br />对于原创 2011-01-15 09:36:00 · 1121 阅读 · 0 评论 -
ora-28547解决方案
由于数据库宕机导致文件的内容改变,当我们再次通接时会ora-28547错语,而且我们用tnsping tnsname也可以正确返回,说明我们的链路是通的,通过查找资料将listener.ora中的(PROGRAM = extproc)这句注释掉就可以了,extproc是一个扩展的程序调用接口协议, 连接和调用外部的操作系统程序或进程用时会用通过以上方法问题解决.翻译 2010-05-04 13:17:00 · 663 阅读 · 0 评论 -
oracle 10G flashback 学习
oracle 10G flashback 学习 项目开发中,前台人员不小心删除了配置表数据,我用此方法把删除的数据恢复过,具体步骤如下--首先启动行移动alter table table_name enable row movement;-- 进行时间点恢复(此处只是基于时间点进行恢复的,另外scn恢复以后介绍)flashback table table_name to timesta原创 2010-03-28 15:37:00 · 553 阅读 · 0 评论 -
创建非标准表空间的方法
oracle创建表空间相关的参数为bd_block_size 默认的大小即标准的大小,我们如果不指定具体的大小,所创建的表空间的数据块即可db_block_size 所指定的大小进创建的。如下例:create tablespace tbs_cb9 datafile /opt/oracle/oradata/orcl/users09.dbf size 10M;当我们创建非标准块的表空原创 2010-01-09 14:30:00 · 1618 阅读 · 0 评论 -
oracle表空间学习-大文件表空间
Oracle 10g 的存储能力有了显著的增强。这表现在很多方面,下面介绍 10g 新增的表空间类型:大文件 (Bigfile) 表空间。 大文件表空间从某种角度来说提高了 Oracle 在 VLDB (<a class="l" onmousedown="function onmousedown(){return clk(0,,,res,1,,0CAoQFjAA原创 2010-01-07 21:29:00 · 653 阅读 · 0 评论 -
SuSE Linux10上安装Oracle数据库
系统要求: 内存:推荐1G Swap分区:设为内存的2倍 /tmp磁盘空间:400MB以上三 磁盘空间:软件3.5G 数据1.2G 所需软件:(如果安装系统时,选择software时选择oracle base(很重要) ,下面的一些软件包可以不用安装,红色字体可以不用理会) SuSE Linux10 for x86 Oracle database 10gR原创 2010-01-04 01:03:00 · 2203 阅读 · 0 评论 -
linux下oracle启动过程
在linux下启动oracle 和在windows是有差别的,对于一般在windows下操作习惯人有很多不适应,所以我特别写这样文章,以方便新手进行操作,下面就一步一步讲解启动过程。1.通过终端连接到linux服务器,当然这样的软件很多例如putty,SecureCRT,并以oracle用户进行登录,否则启动oracle时会错的,没有权限启动.(也可用户root 登录,然后进行 su - or原创 2010-01-29 21:59:00 · 2349 阅读 · 0 评论 -
chkconfig命令详解
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。 语法: chkconfig --list [name] chkconfig --add name chkconfig --del name chkconfig [--level levels] nam原创 2010-01-29 20:49:00 · 735 阅读 · 0 评论 -
深刻理解Oracle数据库的启动和关闭
一、启动和关闭Oracle数据库 要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆。一般我们常用INTERNAL用户来启动和关闭数据库(INTERNAL用户实际上是SYS用户以SYSDBA连接的同义词)。Oracle数据库的新版本将逐步淘汰INTERNAL这个内部用户,所以我们最好还是设置DBA用户具有SYSDBA权限。 二原创 2010-01-23 12:13:00 · 414 阅读 · 0 评论 -
sql*loader用法小结
sql*loader用法小结最近在项目中遇到将clob类型的大对象导入到数据库中(oracle),平时只是拷贝一下就行了。可是遇到clob就行了,问了几个同事都没有办法,最后问了组长和后台比较牛的人她们分别告诉我用pl/sql和toad导入的方法,可是导入时还有问题,后来向华为研发要了一个sql*loader脚本,看了一下挺简单的,结果研发给的可以导进去,本地布署的却不行,最后确定是版本有问题原创 2010-01-23 08:22:00 · 1878 阅读 · 0 评论 -
SQL*Loader使用指南
Oracle 的SQL*LOADER可以将外部数据加载到数据库表中。下面是SQL*LOADER的基本特点:1)能装入不同数据类型文件及多个数据文件的数据2)可装入固定格式,自由定界以及可度长格式的数据3)可以装入二进制,压缩十进制数据4)一次可对多个表装入数据5)连接多个物理记录装到一个记录中6)对一单记录分解再装入到表中7)可以用 数对制定列生成唯一的KEY8)可对磁盘或 磁带数据文件装入制原创 2010-01-23 10:17:00 · 694 阅读 · 0 评论 -
oracle 解锁相关方法
<br />-- 查看有哪些表被锁住<br />select b.owner,b.object_name,a.session_id,a.locked_mode<br />from v$locked_object a,dba_objects b<br />where b.object_id = a.object_id;<br />-- 查看有哪些表被锁住<br />select b.username,b.sid,b.serial#,logon_time<br />from v$locked_object a,原创 2010-06-27 20:34:00 · 583 阅读 · 0 评论 -
批量删除表的方法
<br />该方法可进行小数据量的迁移工作<br />-- 如果表己经存在可以批量删除,然后重建<br />begin<br /> for t in (<br /> select table_name from <br /> user_tables t<br /> ) loop<br /> execute immediate 'drop table '||t.table_name;<br /> end loop;<br />end;<br />-- 批量建表<br />begin<br />原创 2010-06-27 20:42:00 · 563 阅读 · 0 评论 -
使用SQL_TRACE进行数据库诊断(转载)
<br />SQL_TRACE是Oracle提供的用于进行SQL跟踪的手段,是强有力的辅助诊断工具.在日常的数据库问题诊断和解决中,SQL_TRACE是非常常用的方法。<br />本文就SQL_TRACE的使用作简单探讨,并通过具体案例对sql_trace的使用进行说明.<br /><br />一、 基础介绍<br />(a) SQL_TRACE说明<br />SQL_TRACE可以作为初始化参数在全局启用,也可以通过命令行方式在具体session启用。<br />1. 在全局启用<br />在参数文件(p原创 2011-01-13 23:02:00 · 528 阅读 · 0 评论 -
更改网络配置文件的位置(监听文件的位置)
<br />有的时候我们配置监听时经常找不到监听文件的位置,通过查找资料得知可以通过TNS_ADMIN进行改变,这个很有用。<br />1.启动监听(start)<br /><br />2.更改注册表信息<br /><br />3.重启监听程序(先stop后start)<br /><br />原创 2011-01-12 00:03:00 · 1166 阅读 · 0 评论 -
重建oracle密码文件
<br />重建oracle密码文件<br />oracle 自带的密码文件命名规则如下:PWD+sid.ora<br />针对于sys密码不清楚的情况下,我们可以通过重建的方式更改sys密码.<br />1.首先,确定你的密码文件的路径和名称:<br />在windows下 <br />密码文件路径oracle_homedatabase <br />密码文件名称pwd+sid.ora <br />在unix下 <br />密码文件路径oracle_home/dbs <br />密码文件名称pwd+sid原创 2011-01-09 10:59:00 · 8195 阅读 · 0 评论 -
oracle 日志模式切换
<br />oracle 日志模式切换<br />在Oracle数据库中,主要有两种日志操作模式,分别为非归档模式与归档模式。默认情况下,数据库采用的是非归档模式。作为一个合格的数据库管理员,应当深入了解这两种日志操作模式的特点,并且在数据库建立时,选择合适的操作模式。我们在sqlplus 下通过以下命令查看日志模式:archive log list;<br />(非归档模式)<br />(归档模式)<br />说明一下:<br />database log mode 指定是数据库的日志模式,可为Archi原创 2011-01-09 10:53:00 · 6254 阅读 · 0 评论