Oracle
lurou
Oracle DBA北京
展开
-
ORA-00054 锁表问题
今天早上刚刚到公司,就接到用户的电话,说是sql语句被阻塞的问题,赶紧看了一下报错信息:ora-00054当某个数据库用户在数据库中插入、更新、删除一个表的数据(包括truncate),或者增加一个表的主键时或者表的索引时,常常会出现ora-00054:resource busy and acquire with nowait specified这样的错误。主要是因为有事务正在原创 2013-07-30 18:39:58 · 4899 阅读 · 0 评论 -
rman异常案例二: 归档日志被人移动到其他目录,导致数据库恢复异常(续)
上一篇文章的场景是归档日志被意外挪走,再来一个续篇,这次要讲的是正常情况下,为了节约成本,用快盘暂存归档,然后移动到慢速盘。估计很多dba不喜欢干这事情,因为这对于数据恢复又多一道工序,比较麻烦,但是老板们应该很喜欢这种方案的,:)@原创 2013-08-23 18:56:51 · 1259 阅读 · 0 评论 -
ORA-16179 粗心导致的小错误
ORA-16179: incremental changes to "log_archive_dest_1" not allowed with SPFILE Oracle很多参数都是 参数='值'的形式 而log_archive_dest_1的值是里面带上'location=目录'SQL> alter system set log_archive_dest_原创 2013-08-23 19:07:43 · 1053 阅读 · 0 评论 -
oracle归档日志的手工注册
子公司的一个同事提到他的数据库默认归档目录大小2G被沾满,归档日志被移动到其他目录,数据库无法再识别到之前的归档日志文件,请我提供下解决办法,我没遇到过这种情况(手里的库都很规范:),哈哈)。于是上网搜出一些类似案例,并总结出对应的解决办法。 移动归档日志文件的原因,一般会有如下几种:1、数据库初始安装时未仔细考虑归档存放路径问题,默认2G大小不够用,直接添加新的归档目录,旧的归档日志原创 2013-04-30 23:53:51 · 5844 阅读 · 0 评论 -
rmanBUG一例 (备份时卡住不动)
问题和解决办法来源说明:该文档其实原创作者为renfengjun ,最初是在论坛上看到该问题,我自己也遇到了这个情况,上网一搜,正好遇到,上MOS上找到了相关凭据,在到renfengjun兄弟的博客上查找,发现没有该主题的技术文章,所以我干脆记录下来了,整理成文,以备查询。renfengjun兄弟的博客: http://blog.csdn.net/renfengjun#####原创 2013-05-03 18:06:26 · 7219 阅读 · 0 评论 -
oracle10g版本不再支持
oracle官方消息,数据库10g版本将在2013年7月31日之后停止技术支持。需要支持但是又不想更换版本的,需要购买额外服务,且该服务也有限制。当然,凡事并非绝对的,我们这边提问的内容比较灵活,一个劲追问细则,得到的答复是,7月31日以后,对无扩展服务的用户,原则上不再做任何支持,但是部分特殊用户,他们仍继续支持如下内容(说实话,脸皮厚点就可以):简单问题;非BUG日常问原创 2013-06-05 10:35:44 · 2279 阅读 · 0 评论 -
oracle11g升级PSU详细步骤
以前做过很多次大版本升级,这次来个小版本升级,PSU补丁应用的详细过程。oracle11.2.0.3.0升级到11.2.0.3.7, linux x64 platform原创 2013-07-22 19:06:26 · 6865 阅读 · 0 评论 -
DBA批量杀进程必杀技
有时候,linux服务器上会莫名的冒出来上千个进程,我们可以通过ps命令看到他们,也能统计,但是杀起来还是费劲点。 老办法:ps -ef| grep process_name | wc -lps -ef| grep process_name >> 123.txt拷贝123.txt的内容到Ultraedit软件,进行整理,整理为类似如下格式的上千行命令,然后拷贝到命令行原创 2013-07-22 20:41:23 · 1112 阅读 · 0 评论 -
oracle11g 静默安装(要点记录)
一个不想当将军的士兵不是好兵,我不是当兵的,但是我想当OCM,显然考试和报名费都很贵,现在市面上已经有不少人在培训和考取OCM,也许过一段时间之后,OCM也烂大街了,咳咳。。。 可是,那又怎么样,这并不妨碍我去学一下这方面的本事,好吧,先从最简单最基本的静默建库开始。不用xwindows窗口做操作,整个过程的服务器性能体验非常好(图形界面会消耗很多计算资源的原创 2013-09-10 16:11:31 · 1338 阅读 · 0 评论 -
[INS-30060]:Check for group existence failed
今天再次进行静默安装,在新机器上安装oracle软件时一直报这个错误,不管用静默安装还是用XWINDOWS界面,都一样。上午google了一圈,没有解决问题。去MOS上搜索,跟网上的结果差不多。折腾了一圈,开始思考TMP目录问题,每次报错信息都会提到TMP目录下有日志等等,具体报错信息如下:于是我干脆直接把整个tmp目录都赋予给 oracle用户和o原创 2013-09-12 11:33:14 · 6950 阅读 · 1 评论 -
ORA-00847: MEMORY_TARGET/MEMORY_MAX_TARGET and LOCK_SGA cannot be set together
dg-primary:~ # free -m total used free shared buffers cachedMem: 3834 3620 214 0 26 3157-/+ buffers/cache:原创 2013-09-21 10:29:37 · 2632 阅读 · 0 评论 -
linux下开启异步IO
最近在研究如何在IO竞争的情况下,如果存储级别已经无法优化,还有其他什么办法解决IO竞争问题。最后想到了异步IO。我的redo写磁盘的速度已经达到了最大值,无论我如何调整redo大小和组数,无论我如何调整检查点频率都没有什么用处。调整redo大小,之后减少redo切换的频率,增加redo组数只是为了避免所有redo都已经没使用但是业务仍然需要新的日志来记录数据更改。可是如果IO不给力,会造成一转载 2013-08-05 19:24:34 · 4080 阅读 · 0 评论 -
ORA-00845 ORACLE11G常见的shm问题
oracle11g内存自动管理引出的特有问题,/dev/shm的设置问题,很多人都会遇到,很常见,我都遇到两次了,记录一下,备忘原创 2013-07-25 18:58:50 · 1454 阅读 · 0 评论 -
oracle10.2.0.1Bug(关键词:ins_emdb.mk)
昨天在安装redhat6.3下安装oracle10.2.0.1遭遇oracle程序BUG。 MOS文档ID:957982.1 问题现象:安装程序跑到83%的进度时,弹出一个框,报错提示如下:Error in invoking target 'collector' of makefile'$ORACLE_HOME/sysman/lib/ins_emdb.mk'. See原创 2013-05-09 11:39:11 · 1093 阅读 · 0 评论 -
PMON failed to acquire latch, see PMON dump
问题现象:数据库监听崩溃处理过程:数据库出现异常,收到报警之后,马上登陆服务器,lsnrctl status 发现listener死掉,赶紧启动,结果持续了1分钟左右才起来。数据库可以连接了,恢复正常。 接下来查找问题原因,到alert日志中发现报错:PMON failed to acquire latch, see PMON dump 上网搜索到,居然又是一个BU原创 2013-05-29 18:27:53 · 3651 阅读 · 0 评论 -
oracle传输表空间功能测试(含详细过程)
最近做数据迁移,之前有一篇迁移思路思考的文章,这里继续做具体的测试,主题问表空间传输。一、源服务器上导出表空间源服务器: 10.1.122.55目标服务器:10.1.122.540.设置字符集注意,这里不设置字符集在导入的时候会报错,详细情况见文章的最后。suse11sp2:~ # export LANG=AMERICAN_AMERICA.AL32UTF8原创 2013-07-24 15:49:36 · 1418 阅读 · 0 评论 -
对大表创建分区表的案例
有两张数据表的记录已经超过2亿,数据查询速度较慢,创建分区之后,由于分区裁剪的原因,速度快了不少。一、对大表进行分区的案例(按月)0.备份表的数据create table LUROU_bkup01 as select * from DC.LUROU1.直接创建分区表,从原来的表select所有数据过来。对数据表LUROU按月进行分区,划分范围的字段为原创 2013-07-29 20:04:22 · 889 阅读 · 0 评论 -
从truncate表的hang现象引出来的oracleBUG 13023854
早上刚到公司,就接到业务部门电话,说有个job里清空某表的操作没成功,无法继续后续操作。本来以为是一个很简单的问题,总以为是个锁表的问题,结果引出来一个数据库的BUG。今天在群里问了好多哥们都没遇到过这个BUG,所以在这里提醒大家,尽早打补丁解决这个BUG哟原创 2013-07-31 23:08:10 · 1598 阅读 · 0 评论 -
em管理器的BUG
问题背景环境操作系统:suse linux 11 sp1数据库:oracle 10.2.0.5问题:不能使用em管理器,但是10.2.0.1是可以用的,打了补丁就不行了。问题解决办法:此为oracle数据库在该版本的BUG,Oracle专门发布了补丁8350262来解决这一问题。此bug在1222603.1有详细描述。也就意味着以后升级到10204或10205版原创 2012-12-24 08:00:36 · 2401 阅读 · 1 评论 -
数据库服务器升级内存需要考虑的问题
项目背景:原来的数据库服务器运行在HP DL388G7服务器上面,内存32G,由于业务增长,内存吃紧,加上时不时出现服务器硬件故障,由于是单实例单服务器,存在单点发现,于是打算采取一些措施改善一下:1)升级服务器内存2)并搭建服务器操作系统级别的双机3)迁移数据库数据到新服务器 前面已经写过数据迁移相关的文章,题目为“EXP/IMP迁移数据”,链接如下:http:/原创 2013-03-29 23:17:55 · 3199 阅读 · 0 评论 -
ksvcreate: Process(m000) creation failed
http://www.askmaclean.com/archives/ksvcreate-process-creation-failed%E6%95%85%E9%9A%9C%E4%B8%80%E4%BE%8B.html原创 2013-05-29 18:30:09 · 826 阅读 · 0 评论 -
原厂文档介绍以及阅读路线
平日里,经常有一些朋友不知道自己需要的知识点应该看什么书,去哪里找?其实英文没问题的话,直接看原厂文档吧。原厂文档的阅读路线概览:原厂文档内容介绍:Getting started 页面: 这里包括一些最基础的文档链接。 Concept里面包括了Oracle数据库里面的一些基本概念和原理。比如说数据库的逻辑结构、物理结构原创 2013-07-19 16:43:15 · 922 阅读 · 0 评论 -
ORA-600 [kcratr_scan_lastbwr] 逻辑坏块
数据库版本:11.2.0.3问题现象:今天在启动一台测试数据库的时候,发现db不能open,报错如下:ERROR at line 1:ORA-00600: internal error code, arguments: [kcratr_scan_lastbwr], [], [], [],[], [], [], [], [], [], [], []解决过程:原创 2013-07-22 15:12:43 · 1842 阅读 · 0 评论 -
rman备份脚本(改良版)
之前一直沿用tianlesoftware大牛的rman备份脚本,现在对其进行部分改动,主要是为了方便给像我一样的懒人用。当你新上一套db,需要备份的话,把我的数据库脚本拷贝过去,简单集中地在一个地方修改几行内容就可以了。是不是很舒服很简单? 没错,我就是想达到这个效果。原创 2013-09-22 11:20:04 · 2176 阅读 · 0 评论 -
解决rman备份脚本中密码明文的问题--wallet
前面有一篇文章描述了rman备份脚本,里边提到了脚本中的明文密码不安全的问题。这里使用wallet技术,设置密码。除了设置wallet密码的人,其他人也无法知道连接密码。这样就解决密码明文不安全的问题了。rman备份脚本:http://blog.csdn.net/laven54/article/details/11892141实验过程:1.创建wallet$原创 2013-09-22 22:26:23 · 2155 阅读 · 0 评论 -
rman备份用户的设置(尽可能避免使用SYS用户)
我在做wallet实验,为解决sys用户明文密码问题的时候,也在思考我们是不是可以压根就不使用sys用户呢?从官方文档上查到相关资料,我通过做实验,验证了确实可以。新创建一个用户,赋予sysdba权限,就可以通过新用户进行备份操作,新用户虽然有sysdba权限,但是跟sys用户相比,安全级别完全不是一个等级。例如有很多视图就已经不能查询。当然,我觉得还 有必要进行优化,再细化。因为该用户依然有原创 2013-09-22 23:42:02 · 3931 阅读 · 0 评论 -
suse linux原创案例09:SUSE Linux HA双机搭建
项目背景:原来的数据库服务器运行在HP DL388G7服务器上面,内存32G,由于业务增长,内存吃紧,加上时不时出现服务器硬件故障,由于是单实例单服务器,存在单点发现,于是打算采取一些措施改善一下:1)升级服务器内存2)并搭建服务器操作系统级别的双机3)迁移数据库数据到新服务器 前面已经写过数据迁移相关的文章,题目为“EXP/IMP迁移数据”,链接如下:http://blo原创 2013-05-02 22:39:13 · 5218 阅读 · 0 评论 -
scope设置初始化参数即时生效
1、有没有问我初始化参数修改之后是否可以立即生效,立即做了一个测试,结论是,可以。2、linux系统下,oracle数据块默认8K,能支持的数据文件最大32G,想使用64G的就需要修改初始化参数 db_16k_cache_size3、顺便复习总结了一下表空间相关基础概念:1)同一个数据库内可以设置不同block大小,来设置不同大小的数据文件,有时候业务有这个需求。2)同一个表空间只能使用同一种block3)spfile启动的数据库,可以使用scope=both使得参数立即在内存中生效,但是要注原创 2013-07-23 11:22:41 · 1605 阅读 · 0 评论 -
EXP/IMP迁移数据
项目背景:原来的数据库服务器运行在HP DL388G7服务器上面,内存32G,由于业务增长,内存吃紧,加上时不时出现服务器硬件故障,由于是单实例单服务器,存在单点发现,于是打算采取一些措施改善一下:1)升级服务器内存2)并搭建服务器操作系统级别的双机3)迁移数据库数据到新服务器 前面已经写过升级服务器内存相关的文章,题目为“数据库服务器升级内存需要考虑的问题”,链接如下:h原创 2013-05-02 22:06:36 · 2577 阅读 · 0 评论 -
RedHatLinux 6.4 安装oracle10G(纯命令版)
说明:安装已经很熟练了,一般情况下,差别只是每个版本的系统rpm包不一样,这个纯命令的版本只是为了方便我自己翻阅。 Red Hat Enterprise Linux 6 The following packages (or later versions) must be installed: binutils-2.20.51.0.2-5.11.el6 (x86_64)compat原创 2013-05-08 17:35:50 · 1871 阅读 · 0 评论 -
小组实验任务答案公布:oracle实施前准备清单
说明:去用户现场实施之前,给用户发送的准备清单邮件,作为模板,以后会经常使用。 尊敬的用户,按照我们电话里的沟通约定,请准备好如下内容之后通知我,我们派人到现在进行实施工作,准备工作越充分,工作效率越高。谢谢。一、关键内容1、oracle字符集,这个请重视!先准备好,这个必须准确,否则oracle数据库需要重新安装配置。字符集一般跟现有应用程序和单位其他数据库字符集有关,如果该原创 2013-05-11 10:24:44 · 920 阅读 · 0 评论 -
linux下添加oracle自启动脚本
linux环境下oracle自动启动关闭的脚本,会经常用到。1.修改/etc/oratab文件,后面的dbstart和dbshut依据这个文件启动数据库soadb:/u01/oracle/product/11.2.0/dbhome_1:Y2.创建数据库初始化文件:#cp $ORACLE_BASE/admin/$ORACLE_SID/pfile/init$ORAC原创 2012-12-24 08:11:16 · 862 阅读 · 0 评论 -
专题实验第一篇:ORACLE网络
lurou从3月份开始,开始在思考,如何在生产系统不出故障的情况下,依然可以不落下数据库实践操作的机会,依然保持动手能力逐步加强的步伐。lurou曾经对自己的学生开玩笑:“你不懂oracle,你可以吹牛忽悠,可是如果在现场,你不懂,你如何动手,你敢动手吗?”。 而这个“懂”,我以为应该有坚实的实践基础,当然理论是前提。于是我打算再次对oracle进行整体性梳理,进行分类专题实验,比如分为oracl原创 2013-04-28 08:58:20 · 962 阅读 · 0 评论 -
oracle数据恢复案例 - 控制文件损坏,无备份
数据丢失原因:集群多次切换,多次执行shutdown abort,集群默认执行的命令是abort方式,导致控制文件全部损坏。 基础环境介绍:suse11sp2oracle10.2.0.5suse HAoracle归档模式 处理问题思路:1、检查是否有幸存控制文件。因为控制文件有多个,尝试使用单个控制文件启动数据库,如果有完好的控制文件,就无需回复了,直接拷贝改名原创 2013-05-14 15:55:42 · 1399 阅读 · 0 评论 -
rman异常案例一: 归档日志被人移动到其他目录,导致数据库恢复异常
rman对数据库做了正常的备份,所有数据都全在,然后在对数据库做恢复的时候报错,发现归档日志被人移动到了其他目录,导致数据库恢复异常。这种情况应该挺常见的,归档日志被移走的原因很多,最常见的就是因为生产库空间不足,需要移动到其他服务器,或者归档日志所在的磁盘是速度极快的磁盘(为了追求归档速度),然而保存归档的磁盘不需要那么好,为了追求性价比,等等,原因很多... 解决办法也很简单,看我的操作过程就明白了。原创 2013-08-17 12:15:35 · 1964 阅读 · 0 评论 -
oracle安装过程中图像界面启动问题(xdmcp)
小小唠叨一下,我认为有2点可以注意下,第一,xdmcp参数配置要细心,第二,直接用oracle用户登录并配置启动图像界面之前的参数。xdmcp原理 转载一篇xdmcp原理的相关文章导读: 几个人同时有x windows时。 X server :主要是负责显示。 x client:主要是负表运算。 设定XDMCP XDM是X Display M转载 2012-12-24 08:03:31 · 1671 阅读 · 0 评论 -
导致ORA-39095的两种原因(Expdp)
今天在群里帮网友处理了一个expdp导出的问题。处理过程如下:一、搜集报错信息和背景信息1、报错的截图如下:2、该网友使用的脚本内容如下:expdp ceshi/ceshi@odpsceshi directory=expdp_backup dumpfile=ceshi_%u.dmp filesize=1G parallel=5 full=y创建d原创 2013-06-21 14:28:23 · 3180 阅读 · 1 评论 -
如何不让oracle使用linux的swap分区
经常看到swap分区被使用,被缓存的内容本来是为了增加命中率,结果去不断换入换出,导致本地磁盘IO增加,影响访问速度。所以在内存充足的情况下,如果我们觉得不需要使用swap分区的时候,那就要想办法尽量避免使用swap。原创 2013-08-08 20:20:00 · 1810 阅读 · 0 评论 -
ORA-19504与ORA-27038
问题报错:ORA-19504: failed to create file "/home/oracle/rman_test/119. cp"ORA-27038: created file already exists 报错过程:RMAN> show all;RMAN configuration paramete原创 2012-12-29 17:15:24 · 3334 阅读 · 0 评论 -
oracle监听BUG
最近收到朋友那边的技术求助,oracle数据库监听,在无缘由情况下,突然就不能使用。已经收集到的情况是,oracle启动了2个监听进程,貌似2个进程相互打架! 上网搜索解决办法,结果搜到eygle大师的一片文章,早在2007年就已经有类似问题发生,看来是老问题了。http://www.eygle.com/archives/2007/06/tns_child_listener_forke原创 2013-05-09 10:59:52 · 968 阅读 · 0 评论