oracle 各种问题排查】的更多相关文章

https://blog.csdn.net/qq_30553235/article/details/78809872 查看oracle用户权限: 1.查看不同用户的连接数 select username,count(username) from v$session where username is not null group by username; 2.查看所有用户 select * from all_users; 3.查看用户或角色系统权限(直接赋值给用户或角色的系统权限): selec…
1. java.sql.SQLException: ORA-01000: 超出打开游标的最大数 step 1: 查看数据库当前的游标数配置slqplus:show parameter open_cursors; step 2: 查看游标使用情况:select o.sid, osuser, machine, count(*) num_cursfrom v$open_cursor o, v$session swhere user_name = 'user' and o.sid=s.sidgroup…
一.ORA-00257 ORA-00257归档日志写满,最简单方法.可以更改归档的大小. 二.job不自动运行解决方法 http://www.cnblogs.com/xbding/p/5861443.html…
命令行 sqlplus 无法登陆,常常是用户名/密码错误.监听配置错误或未启动.数据库服务名丢失等等原因. 用户名/密码错误 找到自己设的密码 这全靠自己创建数据库实例时,备份或记住相关信息 若最后没找到,则删除该实例,重新配置一个数据库实例 注意,是数据库实例,而非整个 Oracle 监听问题 监听服务,监听指定网址和指定端口的 Oracle 服务 若是此类问题,则重新配置监听 重新配置,使用 Oracle 安装组件之一: Net Configuration Assistant 配置时,注意监…
本来我是一直用的nginx的,现在安全者的服务器是用的tengine,稳定性就不用多说了! 前段时间用thinkphp写了两个两个项目,刚开始放到了国外的服务器上,环境也是lnmp的,最后发现nginx是不支持pathinfo的, 想要支持的话得改很多地方,我也尝试过.最后地址是可以通过path模式和伪静态模式访问的.但是如果地址使用U方法生成的话,还是兼容模式的地址!比如 这种:http://localhost/?s=/home/user/login 技术有限…U方法生成的地址清是搞不定…最后…
https://teddysun.com/lamp LAMP一键安装脚本 最后修改于:2015年11月08日 / 秋水逸冰 / 54,300 次围观 973 本脚本适用环境: 系统支持:CentOS/Redhat/Fedora 内存要求:≥512M 硬盘要求:2GB以上的剩余空间 服务器必须配置好软件源和可连接外网 必须具有系统 root 权限 建议使用干净系统全新安装 日期:2015 年 11 月 08 日 关于本脚本: 支持 PHP 自带所有组件: 支持 MySQL ,MariaDB, SQ…
前段时间 出现过这个问题,: 表中有一列为number类型 rec_recordlength (两个时间的间隔长度/秒) 部分数据 统计这个字段就会出现 "算出运算溢出" 错误,很是头疼,找不出原因 然后 今天又出现了, 然后不断排查,排查,发现是有一条数据导致的, 后来 这条数据删除重新插入就好了, 然后想到唯一动过这条数据的,是执行了rec_recordlength的更新,动作如下: *(rec_endtime-rec_starttime) where rec_c_id='1785…
起因 前几天在弄Hubble连接Oracle数据库,然后在mongodb中建立一个镜像数据库; 发现一个问题,原本数据是11W,但是镜像库中只有6w多条; 刚开始以为是没运行好,又rebuild了一下 结果变成了7w多,又rebuild,又变成了6w了............ rebuild了N次,基本上每次结果都是不一样的 准备调试 没办法只能下载源码调试一下; 先把所有的dll都输出到同一个目录 然后把Hubble的服务停止了,再把Hubble的所有文件拷贝到dll的输出目录 然后编译生成一…
想必大家都知道Oracle的等待时间分为两种,一种我们称之为“空闲等待事件”,另外一种称之为“非空闲等待事件”.“空闲等待事件”——作为DBA可以不用过分的关注这类等待事件.“非空闲等待事件”——当DBA发现这一类的等待事件的时候,就要提高警惕了,因为这一类的等待事件出现后,往往说明应用程序出现了不应该有的等待问题,需要逐一的排查. 得到等待事件的动态性能视图是v$session_wait,不过要快速的排除“空闲等待事件”得到我们关心的等待事件该如何做呢?这里给出我想到的三种方法. 这里演示的数…
今天下午,原来一个部门的同事找过来,说有个即将上线的环境偶尔会出现 No more data to read from socket错误,版本是oracle 11.2.0.1,如下: 经查,这个问题原因比较多,有oracle自己的bug,有可能配置的问题,也有可能代码上的问题.主要有如下: 1.jdbc连接池大小问题,我们最小10.最大100,有校验有效性,此原因排除: 2.有可能是内存不足的原因,经查看sar历史,排除此原因: 3.有可能绑定变量偷窥问题,可设置_optim_peek_user…
Oracle Real Application Clusters(Oracle RAC),相对于Oracle单实例来说部署安装和维护都增加了难度,尤其在日常的维护和故障处理过程中,各种日志的查看更加重要,本文主要对Oracle 11g 集群下的目录结构和路径进行介绍和说明. 以下是集群目录下日志结构,以及对应目录的功能说明,对排查问题尤其重要. [grid@dbrac1 dbrac1]$ tree -d . ├── acfslog ├── acfsrepl ├── acfsreplroot ├─…
1.生产环境Oracle中的job无法正常运行 select * from dba_jobs_running;(查看正在运行的job) 2.select * from dba_jobs(查看job历史运行情况) last_date (job上次运行时间) interval(job运行间隔)   next_date(job下次执行的时间) 3.经过查看,可以看到job确实未按照原计划运行 4.排查问题,查看job_queue_processes是否正常(如果job_queue_processes设…
Oracle数据库丢失表排查思路 说明:由于系统采用ID取模分表法进行Oracle数据存储,某日发现Oracle数据库中缺少对应的几张业务数据表,遂进行相关问题查询,简单记录一下排查思路: 由于我们代码中实现思路是判断如果没有对应的表会自动创建,所以首先需要查询一下缺失数据库表的创建时间 SELECT * FROM dba_objects where OBJECT_NAME LIKE 'LOG_5%' AND owner = 'Geoff'; 通过查询Oracle执行SQL历史记录,数据库表的删…
1.ORACLE归档日志介绍 归档日志暴增是oracle比较常见的问题,遇到归档日志暴增,我们该如何排查: 归档日志暴增一般都是应用或者人为引起的 理解归档日志存储的是什么 如何排查归档日志暴增原因 如何优化归档日志暴增 1.1 归档日志是什么 归档日志(Archive Log)是非活动的重做日志(redo)备份. 通过使用归档日志,可以保留所有重做历史记录,当数据库处于ARCHIVELOG模式并进行日志切换式,后台进程ARCH会将重做日志的内容保存到归档日志中. 当数据库出现介质失败时,使用数…
我们的生产系统使用的是oracle 11G RAC,昨天突然收到微信告警通知session数达到450个,平时的session数在200个左右. select username,status,machine from v$session:发现基本上是同一个oracle用户占用了200多个session,status全是inactive,machine也是同一个机器.经过询问发现原来是一个开发同事误把测试环境的ip地址写成了生产环境在进行调试.事情总算告一段路安,找到了问题的根源.顺便提一下,1.…
一.Oracle NET配置文件 Oracle NET是一个软件层,支持不同网络协议之间的转换.不同的物理机器可以借助这个软件层实现相互间的通信,具体而言就是实现对oracle的远程访问. oracle net配置文件包括listener.ora,tnsnames.ora,sqlnet.ora和ldap.ora:配置文件都是放在$ORACLE_HOME\network\admin目录下. sqlnet.ora文件在客户端上,确定解析方式,通过这个文件来决定怎么样找一个连接中出现的连接字符串 tn…
业务系统数据库夯住,数据库内大量的library cache: mutex X及latch: shared pool等待,alert日志信息如下 Tue Sep :: WARNING: inbound connection timed out (ORA-) Tue Sep :: WARNING: inbound connection timed out (ORA-) Tue Sep :: WARNING: inbound connection timed out (ORA-) Tue Sep :…
近期在多个大型系统中遇到此问题,一般来说如果客户端未反映异常的话可以忽略的.如果是客户端登陆时遇到ORA-12170: TNS:Connect timeout occurred,可以参考 http://blog.csdn.net/haibusuanyun/article/details/14517211#t12###############参考MOS文档有:Troubleshooting Guide for TNS-12535 or ORA-12535 or ORA-12170 Errors (…
CPU主要功能:处理指令.执行操作.要求进行动作.控制时间.处理数据. 结合数据库实例CPU占用高,可能的原因是数据库在执行大量的操作(全表查询.大量排序等). 由于公司没有DBA,遇到数据库问题只能自己排查. 一.是否存在死锁 查询死锁以及解锁的语句参考下方: 查看死锁ID SELECT s.username,l.OBJECT_ID,l.SESSION_ID,s.SERIAL#, l.Oracle_USERNAME,l.OS_USER_NAME,l.PROCESS FROM V$LOCKED_…
--step 1:查看被阻塞会话等待事件 select sid, event, username, lockwait, sql.sql_text  from v$session s, v$sql sql where s.sql_id = sql.sql_id   and sql.sql_text like '%&sql%'; -------------------------------------------------------------------------    22    enq…
查看当前游标数show parameter open_cursors; 修改游标最大数 ; commit; 查看游标消费情况 select o.sid, osuser, machine, count(*) num_curs from v$open_cursor o, v$session s where user_name = 'COSS' and o.sid=s.sid group by o.sid, osuser, machine order by num_curs desc; 查看消费游标的…
在SUN Cluster搭建过程中,主机工程师在配置集群资源组时报一个oracle的文件权限错误: 协助排查,发现报错很明确,直接指出说oracle的s bit 权限未设置. 直接去查看$ORACLE_HOME/bin/oracle的权限 cd $ORACLE_HOME/bin/ ls -l oracle 发现现状是: -rwxr-x--x. 1 oracle oinstall 239626683 Nov 8 04:11 oracle 而正常安装软件后的权限应该是: -rwsr-s--x. 1…
1.问题背景      默认情况下,线上的mysql复制都是异步复制,因此在极端情况下,主备切换时,会有一定的概率备库比主库数据少,因此切换后,我们会通过工具进行回滚回补,确保数据不丢失.半同步复制则要求主库执行每一个事务,都要求至少一个备库成功接收后,才真正执行完成,因此可以保持主备库的强一致性.为了确保主备库数据强一致,减少数据丢失,尝试在生产环境中开启mysql的复制的半同步(semi-sync)特性.实际操作过程中,发现大部分实例半同步都可以正常运行,但有少部分实例始终开不起来(只能以普…
改问题是在搭建起一个很早之前的数据库的时候碰见的,虽然这个问题网上已经有很多相关的帖子,但因最近碰见多次这样的问题,特此简单记录: 1.最开始碰见的问题是:The listener supports no services 之前的记录没有存,借用其他贴相似错误:   (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracke11g)(PORT=1521)))  --这里标红的是借用帖子的Host,实际是从本地解析出来的,最后错误也是从这里定位的   (DES…
对Oracle数据库整体性能的优化,首先要关注的是在有性能问题时数据库排名前几位等待事件是哪些.Oracle等待事件众多,随着版本的升级,数量还在不断增加,可以通过v$event_name查到当前数据库版本包含的等待事件.例如我在Linux平台查11.2.0.4版本的Oracle是有1367个等待事件.SELECT name FROM V$EVENT_NAME ORDER BY name; 如此多的等待事件自然是要分类汇总,并对常见的等待事件有比较深入的认识,才能在Oracle数据库调优这条路上…
SELECT * FROM DBA_HIST_SQLBIND WHERE SNAP_ID>67073 AND SNAP_ID<=67079 AND SQL_ID='3DR3410F086P4';SELECT * FROM v$sql_bind_capture where sql_id='' http://blog.itpub.net/22034023/viewspace-689802/ 通过v$sql_bind_capture视图,可以查看绑定变量,但是这个视图不太给力,只能捕获最后一次记录的…
RT,正式写之前,我想说,真TMD不容易!!! 写博客,责任心,很重要 在百度搜出来的内地博客技术文章(CSDN.ITEYE.CNBLOGS……),大部分都是不全面,只针对一个遇到的问题点的记录,可以说毫无参考价值,甚至会把你指向错误的方向. 为什么?因为无当时系统环境交待,工具版本信息,其它客观因素(非原生,有插件等等).但是搞技术的都知道,这些因素非常重要. 但我们再看看台湾 dotblogs 上的文章(百度偶尔抽风,给点tw的结果),案例: http://www.dotblogs.com.…
今天在开发系统的时候,刚开始还好好的,突然就遇到了一个错误 ORA-01034: ORACLE not available 感到莫名其妙.然后排查问题 监听器ok,各项服务ok. 最后解决办法如下: 首先,使用命令行 然后sysdba连接 ok,现在数据库已经连接上了…
/** * 按照页码取值(从current_page页开始,每页page_size条) * @param key * @param params * @param current_page * @param page_size * @return */ public <T> Pagination getPaginationByPage(String key, Object params,int current_page,int page_size) { int count = (Integer…
今天收到报警,提示从库延时,首先当然是上去查看情况,首先查看机器负载,如下: 可以看到使用cpu已经100%,io没有等待.那么查看mysql是什么情况,执行show processlist没有发现任何异常,执行show slave status查看延时,发现延时一直在增加,且卡在了某个pos点不动了,已经hang住了.这个从库没有跑任何业务的. 继续查下去,执行show engine innodb status查看一下有没有异常: 我擦,还真发现了问题,怎么会提示锁住了23张表?继续排查,根据…