oracle 数据库运维问题汇总
日常数据库运维遇到的问题以及处理方法总结分享
咫尺的梦想ing
这个作者很懒,什么都没留下…
展开
-
oracle安装不弹出图形界面的解决办法
以下是处理方法:1、执行命令# yum install tigervnc-server 安装vncserver2、执行命令# vncserver3、执行命令# export DISPLAY=localhost:14、执行命令# xhost+,显示accesscontroldisabled,clientscanconnectfromanyhost表示成功5、安装图...原创 2019-03-27 09:38:20 · 17002 阅读 · 0 评论 -
oracle在存储过程中无法查询 v$session、v$process表的解决办法
oracle在存储过程中无法查询 v$session、v$process1、问题描述:在非系统用户底下,使用存储过程执行select count(1) from v$process,对数据库进程数进行监控报警,测试时提示错误:"表和视图不存在"2、问题分析:axj_user用户赋予dba权限了,按道理可以访问任何一个系统视图,包括v$process,但是存储过程里无原创 2018-01-24 10:03:01 · 13506 阅读 · 0 评论 -
ORA-00445: 后台进程 "J001" 在 120 秒之后仍没有启动的解决方法
日志库卡住一两分钟不写入数据问题处理-201712191、问题描述日志库异常卡住,无法更新日志表数据,查看数据库alert警告日志,日常报错:ORA-00445: 后台进程 "J001" 在 120 秒之后仍没有启动,kkjcre1p: unable to spawn jobq slave process,oracle job 120秒无法启动且无法创建新的进程。2、问题分析lin原创 2017-12-19 17:16:08 · 8841 阅读 · 0 评论 -
ORA-12519: TNS: 没有找到适用的服务的解决方法
数据库异常日志ORA-12519: TNS: 没有找到适用的服务的解决方法1、问题描述数据库监控日志报警,数据库抛出ORA-12519异常 2、问题分析ora-12519异常为超过数据库最大进程数,sql:select value from v$parameter where name = 'processes'查看数据库最大进程数,值为:1000,sql:select co...原创 2017-12-15 10:05:42 · 9932 阅读 · 0 评论 -
ORA-28000 帐户已被锁定的解决方法
ORA-28000 帐户已被锁定问题处理1、问题描述应用监控程序报警ORA-28000,PL/SQL无法登陆数据库 2、问题分析oracle11g中默认在default概要文件中设置了 “FAILED_LOGIN_ATTEMPTS=10次”,当输入密码错误次数达到设置值将导致此,该用户会自动锁住。 3、问题处理(1) conn sys/oracle as sy...原创 2017-12-15 10:02:10 · 90875 阅读 · 6 评论 -
TX- index contention的解决方法
TX- index contention1、问题描述数据库插入和更新速度变慢。抓取awr报告或者数据库锁语句查询:select t2.username,t2.sid,t2.serial#,t2.logon_time,eventfrom v$locked_object t1,v$session t2where t1.session_id=t2.sid order by t2.lo原创 2017-11-15 10:36:49 · 3865 阅读 · 0 评论 -
oracle 11g 解决临时表空间占满问题
oracle 11g 清理临时表空间运维人员在查询亿级数据排序时,数据库报错,提示:ora-01652无法通过128(在表空间temp中)扩展temp段,排查流程如下:1、查询表空间使用率:select * from (Select a.tablespace_name,to_char(a.bytes/1024/1024,'99,999.999') total_bytes,to_c...原创 2017-09-05 14:20:35 · 35634 阅读 · 5 评论 -
oracle 表空间满了排查和解决(ORA-1653: unable to extend table test by 128 in tab)
users表空间异常占满处理问题描述:日常查询数据库alert日志,发现报错信息ORA-1653: unable to extend table AXJ_REDIS.USSD_UNREPORT_FAIL by 128 in tablespace USERS,users表空间已满,无法扩展。问题分析:USERS表空间是默认用户表空间,在创建一个用户并没有指定此用户使用表空间时,该用原创 2017-08-14 13:47:02 · 16114 阅读 · 2 评论 -
oracle 数据库优化
数据库参数优化(也可在spfile文件统一修改)注:scope=spfile表示更改spfile文件的值,重启数据库后才能生效sga,pga配置sga:(内存大小*80%)*80% = 128G * 80% * 80% = 82G;pga:(内存大小*80%)*20% = 128G * 80% * 20% = 20G;alter system set sga_max_size=原创 2017-08-03 09:48:34 · 3189 阅读 · 2 评论 -
oracle DG模式搭建详解
oracle DG搭建安装环境 在主机1上安装数据库软件,并建监听和实例,在主机2上安装数据库软件,并建监听,但不建实例,dg搭建之后数据会同步过去。 数据库参数优化(也可在spfile文件统一修改)注:scope=spfile表示更改spfile文件的值,重启数据库后才能生效sga,pga配置sga:(内存大小*80%)*80% = 128G * 80% * ...原创 2017-07-31 10:18:57 · 10726 阅读 · 0 评论 -
oracle 表插入删除特别慢的解决办法
表操作数据慢问题 问题描述Oracle经常在表上执行DML操作(插入、删除、修改),会造成数据库块中数据分布稀疏,浪费大量空间。同时也会影响全表扫描的性能,执行sql效率变低,因为全表扫描需要访问更多的数据块。问题处理通过shrink来重组数据使数据分布更紧密,同时降低HWM释放空闲数据块。分2步走,第一步执行alter table axj_buffer_wait_1 enable row mov...原创 2017-07-28 13:41:01 · 7745 阅读 · 0 评论 -
oracle 生成awr报告
awrrpt报告awrrpt报告定义awrrpt报告是awr报告是oracle 10g下提供的一种性能收集和分析工具,它能提供一个时间段内整个oracle系统资源使用情况的报告,通过这个报告,我们就可以了解一个系统的整个运行情况,分析系统现在主要出现的问题.awrrpt 生成步骤1:登录数据库服务器192.168.1.172 ,用户名:oracle,密码:******2原创 2017-07-28 10:19:16 · 3164 阅读 · 0 评论 -
oracle 连接数被占满的解决方法
oracle 11g 大量废连接占满数据库连接问题处理 问题描述:数据库不断出现大量无用连接,超过数据库最大连接数,导致新的连接无法建立,访问不通数据库问题分析:服务器netstat连接数,大量连接来自办公网连接,不断在增加,通过服务器spid查看数据库对应的sid,查看session会话,点击pl/sql 工具菜单,选择会话,选择所有会话,查看到sid对应的事务是pl/sql...原创 2017-06-28 13:13:56 · 39770 阅读 · 2 评论 -
oracle 删不掉归档日志文件的解决方法
oracle 11g 旧的归档日志无法清理问题描述:使用delete expired archivelog all;delete noprompt archivelog until time 'sysdate - 7' ;命令脚本定时执行自动删除7天以前的归档日志,发现归档日志文件夹还有大量磁盘空间未释放,查看还存在大量7天以前的归档日志问题分析:使用rman命令删除归档日志是原创 2017-06-21 11:10:04 · 7804 阅读 · 0 评论 -
oracle 11g 删除alert log文件
1、oracle用户登录,输入adrci命令2、 show homes,查看路径diag/tnslsnr/server173/listener3、set homepath diag/tnslsnr/server173/listener4、adrci> PURGE -age 1440 -type ALERT # 删除一天前的alert log原创 2017-06-12 14:27:06 · 11293 阅读 · 0 评论 -
oracle 数据库负载高分析
数据库负载高故障排查处理:问题描述:查看数据库负载高达20左右,大量进程占用cpu较高问题分析:多个单进程占用cpu较高,一般为索引失效,sql复杂查询数据量大或存在锁行,锁表等,分析数据库dwr报告:发现大量的行级锁,已经锁等待占用cpu较高,查询数据库锁:select t2.username,t2.sid,t2.serial#,t2.logon_time,eventfrom原创 2017-06-12 14:20:31 · 7331 阅读 · 0 评论 -
oracle 清理跟踪文件trc,trm
trc,trm文件介绍:trc:系统的跟踪文件(trace),当系统启动时或运行过程中出现错误时,系统会自动记录跟踪文件到指定的目录,以便于检查,这些文件需定期维护删除。trm:伴随着.trc文件产生,一个.trm对应一个.trc文件。.trm文件包含.trc文件的结构化信息清理trm文件:1、oracle用户登录数据库2、查看lsnrctl状态3、查看Trace Level字段...原创 2017-06-12 14:15:41 · 26247 阅读 · 2 评论 -
oracle11g 清理listener.log
1、oracle用户登录数据库2、输入命令:lsnrctl3、查看监听日志状态:show log_status,on表示开启4、关闭写监听日志:set log_status off5、退出lsnrctl,输入命令:mv listener.log listener.log.bak6、lsnrctl登录,输入set log_status on,清理完毕7、可通过crontab来定时清理 #!/bin/...原创 2017-06-12 14:11:38 · 4071 阅读 · 0 评论 -
oracle 数据库1521连接数过多的解决方法
数据库1521连接数过多处理:故障描述:目前数据库设置的监听时间是0秒,表示客户端建立监听后没有等待时间限制,导致日常使用pl/ sql平凡断开连接数据库监听但是不释放,通过netstat -ano可查看到大部分tcp连接来自办公网,且state是ESTABLISHED:表示与1521端口建立连接,timer参数是off:表示没有过期时间,导致服务器连接数越来越多故障处理:设置数据库监原创 2016-11-08 14:52:43 · 5707 阅读 · 4 评论 -
oracle 服务器1521连接数特别多
连不上数据库故障描述:故障描述:oracle数据库侦听端口是1521,当一台数据库服务器1521端口占用过多(1000以上),连数据库时,无法向数据库发起连接请求,导致连接失败故障处理:1、限制某个异常访问ip的连接,防火墙配置:iptables -I INPUT -s 59.151.119.180 -j DROP 2、释放连接,当占用1521过多时无原创 2016-11-08 13:34:13 · 1655 阅读 · 0 评论 -
oracle undo表空间不足的解决方法
数据库大批量插入提交注意事项-undo:undo定义:UNDO 表空间用于存放UNDO数据,当执行DML操作(INSERT,UPDATE和DELETE)时,oracle会将这些操作的旧数据写入到UNDO段滚段,还可以使用UNDO表空间.因为规划和管理回滚段比较复杂,所有oracle database 10g已经完全丢弃用回滚段.oracle 9i使用Rollback Segment,ora原创 2016-11-08 13:29:46 · 10510 阅读 · 0 评论 -
pl/sql编译存储过程卡住的解决方法
oracle编译存过卡住处理: 问题描述:在编译某个存过时,由于没提交或断网或者test没停止又重新编译,导致编译存过一直卡死 问题分析:存过或某张表被锁 问题处理:1、查看存过是否锁住,locks不等于零,表示锁住,SELECT * FROM V$DB_OBJECT_CACHE WHERE name='LOGIC_QIANMO_YILONG' AND LOCK...原创 2016-11-08 13:15:35 · 8792 阅读 · 0 评论 -
ORA-27125: unable to create shared memory segment Linux-x86_64 Error: 1: Operation not per
问题描述:oracle启动报错ORA-27125: unable to create shared memory segmentLinux-x86_64 Error: 1: Operation not permitted问题分析:高版本centos,在数据库启动创建共享段时需要用到hugepage,有权限限制问题处理:1、sql>id oracleuid=500原创 2016-11-08 13:12:03 · 3197 阅读 · 0 评论 -
for update、for update nowait、select t.*,t.rowid from table的区别
for update:会对所查询到得结果集进行加锁,不允许其他程序修改for update nowait:也会对所查询到得结果集进行加锁,别的线程对结果集进行操作时会报错ORA-00054,提示:内容是资源正忙, 但指定以 NOWAIT 方式获取资源。select t.*,t.rowid:用ROWID来定位记录是最快的,比索引还快,不会锁表原创 2016-11-08 13:09:08 · 4236 阅读 · 0 评论 -
pl/dql 记录被另一个用户锁住的解决方法
oracle提醒记录被另一个用户锁住:问题描述:pl/sql修改数据时,报错提醒记录被另一个用户锁住“问题分析:你用select t.*,t.rowid from axj_logsend_0728修改数据结果集时,计oracle会通过事务锁锁住这个记录,点击记录改变,还没提交修改时,由于网络卡死你关闭了pl/ sql,另一个人去修改同一个结果集,会报错"记录被另一个用户锁住"处理方法:原创 2016-11-08 13:07:21 · 2671 阅读 · 0 评论 -
oracle job执行时间往后延迟分析
问题描述:job的执行时间往后推迟很长时间,导致查询的数据不再时间范围内。原因分析:原因一:job执行时间间隔没有加trunc截取精度,而是直接使用sysdate+1/(24*60),由于job启动需要时间或扫描精度,导致下次执行时间用的标准时间已经不是启动JOB的时间,而是延迟几秒,执行一次就延迟几秒,执行次数多了延迟就长了原因二:由于job执行的存储过程异常,导致job执行失败,查询se...原创 2016-11-08 11:27:55 · 6350 阅读 · 1 评论 -
ORA-02062: 分布式恢复收到 DBID 430b6181, 要求为 cc638231
故障描述:Oracle会自动处理分布事务,保证分布事务的一致性,所有站点全部提交或全部回滚,当commit或rollback的时候,出现了连接中断,或数据库崩溃的情况,就无法继续执行,绝大多数情况在数据库重启时会自动解决分布式事务,有些会被锁住,数据库的dblink事务正在执行时,172突然down掉,导致正在运行的事务找不到正确的dblink,分布式事务锁住,alert日志一直报错ora-0原创 2016-07-06 14:13:21 · 4804 阅读 · 0 评论 -
oracle数据库报死锁异常
1.cd /oracle/admin/DBAXJ/bdump 下2.tail -1000 alert_dbaxj.log |more 查看到ORA-00060: Deadlock detected. More info in file /oracle/admin/DBaxj/udump/DBAXJ_ora_9809.trc报异常3. 切换到/oracle/admin/DBaxj/u原创 2016-07-05 17:01:13 · 2671 阅读 · 0 评论 -
oracle 抓取awrrpt报告
1:登录数据库服务器192.168.1.111 ,用户名:oracle,密码:pass2:cd $ORACLE_HOME -> cd rdbms/admin3: 切换到数据库用户 sqlplus sys as sysdba4:执行@awrrpt命令5:输入awr报告文件的类型, html或txt, html更直观6:输入抓取awr报告的天数,想抓几天就输原创 2016-07-05 16:47:58 · 3119 阅读 · 0 评论 -
spool导出多列去空格
oracle导出多列去空格:set colsep ''set trimspool onset linesize 120set pagesize 2000set newpage 1set heading offset term offspool /home/oracle/test.txt;select log_id||','||create_time||','||seq||','|...原创 2016-11-08 13:23:19 · 10259 阅读 · 0 评论 -
oracle数据文件被误删或损坏故障处理
oracle数据文件被删或损坏故障描述:数据库数据文件由于误操作被删除掉或由于磁盘坏掉导致数据文件损坏,数据库每十分钟读取损坏数据库文件失败后会提示:ORA-01116: 打开数据库文件 78 时出错ORA-01110: 数据文件 78: '/oracle/tablespace/TS_LOGtokexunDATA_01.dbf'ORA-27041: 无法打开文件接着数据库会do原创 2016-07-05 10:21:10 · 4717 阅读 · 0 评论