oracle数据库登录连接很慢;kettle连接oracle 报 IO 错误,socket time out 问题解决记录
问题描述:
1:oracle数据库连接登陆时突然变得很慢;sqldeveloper链接数据库很慢;
2:Kettle-spoon etl程序访问数据库,任务执行时报 :数据库连接 IO错误 :Socket Time Out 错误。
解决:
1:lsnrctl status 用命令查看oracle监听状态;命令执行后,过许久才显示结果(正常很快显示);
2:分析是不是监听日志太大了。从上命令的呈现结果中找到日志路径:
Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
发现日志并不大;并分日显示了。
3:重启监听试试:lsnrctl stop lsnrctl start ;也可以用lsnrctl reload ,还是很慢
4:怀疑Kettle-spoon数据库连接池问题,将etl程序连接改为jndi 共享的数据库连接,并设置了连接池。
如下操作:
1. 在data-integration\simple-jndi\jdbc.properties中加入jdbc的连接信息。
比如:
############ ORACLE ################
ORA/type=javax.sql.DataSource
ORA/driver=oracle.jdbc.driver.OracleDriver
ORA/url=jdbc:oracle:thin:@127.0.0.1:1521:ORCL
ORA/user=system
ORA/password=system
############ MSSQL ################
MSSQL/type=javax.sql.DataSource
MSSQL/driver=net.sourceforge.jtds.jdbc.Driver
MSSQL/url=jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=test;SelectMethod=Cursor MSSQL/user=test
MSSQL/password=test
注意,kettle使用的MSSQL的驱动是:driver=net.sourceforge.jtds.jdbc.Driver
2. 在数据库连接编辑界面选择
Access=JNDI
JNDI Name填前面配置文件中'/'前面的名字,比如“MSSQL/password=test”这里就填“MSSQL”
设置好以上两步,点击一下test按钮,如果连接成功就ok了,如果你想要配置连接池,就点击上面界面左侧列表的"pooling"项。
5:查看oracle的listener.ora和tnsnames.ora文件。 确保listener.ora和tnsnames.ora里的HOST (IP)一致。
还是很慢。
6:从登陆报 IO错误来看,可能是连接数据库登陆时,数据库要去写监听日志到服务器上。可能是数据库服务器IO有问题。决定将监听日志设为关闭状态试试。
1: lsnrctl 登陆监听操作界面
2:set log_status off ------------关闭写日志的功能 ( set log_status on -------------------打开监听写日志的功能)
3:save_config ------保存配置
4:exit
5:lsnrctl stop --关闭监听
6: lsnrctl start --启动监听
再次测试,问题解决。结论:可能是数据库服务器IO有问题。或者磁盘有问题。
oracle数据库登录连接很慢;kettle连接oracle 报 IO 错误,socket time out 问题解决记录的更多相关文章
- plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转)
原文转自:plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法 最近在使用plsql连接本地oracle数据库的时候,在同一网络环境中,出现了可以连接本地oracle, ...
- ORACLE数据库登录显示ORA-28001: the password has expired
Oracle数据库登录显示 "这个密码已过期,请输入新密码" 点击win键 找到Oracle的SQL Plus 点击打开之后输入登录的用户名密码,然后会显示该密码已过期,输入新口令 ...
- C#连接Oracle数据库的方法(System.Data.OracleClient、Oracle.DataAccess.Client也叫ODP.net、Oracle.ManagedDataAccess.dll)
官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...
- 未安装Oracle数据库,使用PL\SQL Developer连接远程数据库解决方案
使用PL/SQL远程连接Oracle服务器 背景:本地未安装oracle数据库服务器,希望远程连接Oracle服务器 1.下载oracle数据库客户端 下载64位windows的instantclie ...
- rust连接oracle数据库遇到DPI-1047: Cannot locate a 64-bit Oracle Client library的解决方案
这两天要实现一个用rust连接远程的oracle数据库的需求,所以就需要用rust连接oracle. 在github上面找到一个库,地址:https://github.com/kubo/rust-or ...
- oracle数据库的启动、关闭、连接
登陆数据库 方法一: $ sqlplus / as sysdba [oracle@dev /]$ sqlplus / as sysdba SQL*Plus: Release Production on ...
- [Oracle]Oracle数据库CPU利用率很高解决方案
Oracle数据库经常会遇到CPU利用率很高的情况,这种时候大都是数据库中存在着严重性能低下的SQL语句,这种SQL语句大大的消耗了CPU资源,导致整个系统性能低下.当然,引起严重性能低下的SQL语句 ...
- Oracle 数据库登录、用户解锁、改密码、创建用户授权操作
一.数据库登录1.常用账户: 管理员: sys主要练习操作用户: scott2.测试环境是否配置成功: 1.命令窗口 win+R -> cmd(以管理员身份运行) - > sqlplus ...
- python 将mysql数据库中的int类型修改为NULL 报1366错误,解决办法
gt.run_sql()是用pymysql 封装的类 distribution_sort_id type: int目的:将此字段值全部修改为NULL g=2gt.run_sql("updat ...
随机推荐
- 【转】准确理解CSS clear:left/right的含义及实际用途
零.说点什么 好久没更新了.并不是在折腾什么大作,而是广度学习与实践中,加上婚礼等诸多大事,所以产出较少. 今天这篇也只是小作,博客是自己很好的学习工具,只要我学习不止,博客也会不断更新的. 我们平时 ...
- [leetcode]_Unique Paths
题目:有一个m * n 的方格,如下图,一个小robot希望从左上角走到右下角,共有多少种不同的路线走法. 思路: 我的错误思路:全排列,从(0,0)走到(m - 1,n - 1)共需要往下走m-1步 ...
- php文件hash算法,秒传原理
header('Content-type:text/html;Charset=UTF-8'); define('blockSize', 4*1024*1024); var_dump(fileHash( ...
- char引发的血案
char cc = 'j';cc = (char)(cc -32); //注意下,自动转型了System.out.println(cc);
- FaceBook微光闪烁---第三方开源--shimmer-android
Android上的微光闪烁shimmer效果,实现的手段不少,其中比较好的是facebook做的开源库:shimmer-android,其在github上的项目主页是:https://github.c ...
- Treeview获取父节点
private void treeView1_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object&g ...
- Oracle 错误代码
ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出 ...
- 刀哥多线程之gcd-01-sync&async
同步 & 异步 概念 同步 必须等待当前语句执行完毕,才会执行下一条语句 异步 不用等待当前语句执行完毕,就可以执行下一条语句 NSThread 中的 同步 & 异步 - (void) ...
- .NET开源工作流RoadFlow-流程设计-流程步骤设置-数据设置
数据设置是控制在流程处理过程中,当前步骤的数据显示与编辑状态,控制当前步骤哪些字段为只读,隐藏或可编辑.需要配合表单设计器使用.
- 【转】C#中Invoke的用法
在多线程编程中,我们经常要在工作线程中去更新界面显示,而在多线程中直接调用界面控件的方法是错误的做法,Invoke 和 BeginInvoke 就是为了解决这个问题而出现的,使你在多线程中安全的更新界 ...