`

Oracle创建连接过慢的问题

 
阅读更多

近日,公司ORACLE服务器突如其来的宕机了,经过重装一系列的折腾终于解决了。终于发现自己对ORACLE理解还不够。

 

先列举一下几个问题的解决方案:

问题一:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务

解决方案:通过重启服务的方式启动数据库,尝试连接。如果未解决修改listener.ora文件,配置静态监听。

总结:正确添加listener.ora;重新启动了oracle服务器,并检查oracle所有服务是否启动;oracle客户端Net Cofiguration Assistant正确添加或重新配置实例名 

 

问题二:ORA-12518: TNS: 监听程序无法分发客户机连接

解决方案:一般出现此情况较少,首先检查数据库服务是否启动 ,如果数据库服务启动请通过sqlplus命令登录dba执行startup命令启动数据库实例。

cmd>sqlplus connect sys/sys as sysdba>startup

 

问题三:通过plsql等工具连接oracle速度慢,需要10几秒以上,甚至长时间连接不上,通过命令启动和关闭oralce侦听时连接也很慢。

解决方案:这种情况发生通常有两种情况,

第一种是机器名(hostname)的问题,需要修改listener.ora文件或者重新建立监听即可。

第二种方式是我此次遇到的问题,oracle多个人开发用,持续时间比较久,侦听日至过大,导致连接慢。这种方法的解决方案是删除或重命名原有侦听日至。

lsnrctl set log_status off

rename listener.log listener.old

lsnrctl set log_status on 

 

总结一下新了解到的知识:

1.在windows中,windows服务中的oracle服务启动了不代表oracle实例一样启动了。

开始菜单->oracle配置和移植工具->Administration Assistant for Windows

左侧菜单上找到数据库菜单,下方实例上右键启动关闭选项。

oracle实例选项卡中有"服务启动时启动实例",和"服务停止时关闭实例"两个选项。

 

2.oracle相关命令

#启动监听

lsnrctl start

#关闭监听

lsnrctl stop

用lsnrctl reload重启监听器,此命令可以代替lsnrctl stop和lsnrctl start。重启将会在不需要关闭和启动监听器的情况下读取listener.ora的配置。

 

#启动oradb数据库服务

net start OracleServiceORCL

#关闭oradb数据库服务

net stop OracleServiceORCL

 

#启动dbconsole服务

emctl start dbconsole

#停止dbconsole服务

emctl stop dbconsole

 

#启动数据库

system>sqlplus connect sys/sys as sysdba

sql>startup

 

#停止数据库

sql>shutdown immediate

 

要启动或者停止服务,必须拥有sysdba的权限。

 

 

 

shutdown命令参数:

Normal 需要等待所有的用户断开连接,需要在所有连接用户断开后才执行关闭数据库任务,所以有的时候看起来好象命令没有运行一样!在执行这个命令后不允许新的连接.

Immediate 等待用户完成当前的语句 (推荐),在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。 

Transactional 等待用户完成当前的事务,在拥护执行完当前事物后断开连接,并不允许新的用户连接数据库。  

Abort 不做任何等待,直接关闭数据库,执行强行断开连接并直接关闭数据库。

 

前三种方式不会丢失用户数据。第四种情况对于紧急关闭数据库才使用。

 

 

 

数据库的启动

数据库启动使用startup命令,它有三种情况 

第一种:不带参数,启动数据库实例并打开数据库,以便用户使用数据库,在多数情况下,使用这种方式! 

第二种:带nomount参数,只启动数据库实例,但不打开数据库,在你希望创建一个新的数据库时使用,或者在你需要这样的时候使用! 

第三种:带mount参数,在进行数据库更名的时候采用。这个时候数据库就打开并可以使用了! 

 

其他问题:

 

提示:环境变量 ORACLE_SID 未定义,请定义。

设置 ORACLE_SID =WLW (WLW是我的实例名,也是服务名) C:\Documents and Settings\xcl>set ORACLE_SID=WLW(注意大写)

Oracle 10g错误:shared memory realm does not exist的分析与解决容,情况是这样的:在连接Oracle 10g时出现了错误:“shared memory realm does not exist”,如下图所示:

 

硬盘格式的文件存储文件限制:

NTFS(Windows):支持最大分区2TB,最大文件2TB

FAT16(Windows):支持最大分区2GB,最大文件2GB

FAT32(Windows):支持最大分区128GB,最大文件4GB

HPFS(OS/2):支持最大分区2TB,最大文件2GB

EXT2和EXT3(Linux):支持最大分区4TB,最大文件2GB

JFS(AIX):支持最大分区4P(block size=4k),最大文件4P

XFS(IRIX):这是个正经的64位的文件系统,可以支持9E(2的63次方)的分区

 

博客地址:http://www.hrblive.com/coder/blog/blog_149.html,转载请注明出处。

分享到:
评论

相关推荐

    Oracle问题解决大全

    1. **性能优化**:Oracle数据库性能问题是常见的挑战,包括慢查询、CPU占用过高和I/O瓶颈等。可以通过调整SQL语句、创建索引、优化表结构、合理分配系统资源以及使用Oracle的性能分析工具如AWR(Automatic Workload ...

    Oracle疑难解答集

    在Oracle中,更新带有连接的表可能会遇到性能问题,因为这样的操作会涉及大量数据。解决这个问题通常需要理解表连接的工作原理,合理使用临时表,或者优化JOIN条件,以减少处理的数据量。 4. **UNIX下ORACLE数据库...

    oracle12c安装图解教程

    3. 实例安装(非常慢),此步骤可能需要一些时间,以便完成实例的创建和配置。 关键步骤:选择是否创建为容器型数据库 在安装过程中,需要选择是否创建为容器型数据库(PDB)。如果选择创建为容器型数据库,需要...

    解决Oracle分页查询中排序与效率问题

    ### 解决Oracle分页查询中排序与效率问题 在Oracle数据库中进行分页查询时,经常会出现性能瓶颈,尤其是在处理大数据量的情况下。本篇文章将详细探讨如何优化Oracle分页查询中的排序与效率问题。 #### 一、理解...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    说明:Oracle中需要创建用户一定是要具有dba(数据库管理员)权限的用户才能创建,而且创建的新用户不具备任何权限,连登录都不可以。 用法:create user 新用户名 identified by 密码 例子: 2. 修改密码 说明:...

    zabbix 监控 oracle

    2. **配置Oracle连接**:在Zabbix服务器上,你需要创建一个数据库连接,输入Oracle数据库的主机名、端口、服务名、用户名和密码。 3. **导入监控模板**:Zabbix社区提供了预定义的Oracle监控模板,你可以下载并导入...

    Oracle技术常见问题

    - **问题**:数据库响应慢,查询效率低下。 - **解决方案**:分析SQL执行计划,使用`EXPLAIN PLAN`或`DBMS_XPLAN`,调整索引、表分区、物化视图等,同时关注数据库的内存设置,如SGA和PGA。 4. **存储管理** - *...

    ORACLE经典学习笔记

    - `conn / as sysdba`命令允许用户以SYSDBA的身份连接到Oracle数据库,这种连接方式拥有最高的权限级别。 7. **强制启动数据库**: `startup force` - `startup force`命令用于强制启动数据库,如果之前有未正常...

    Oracle调优心得

    本文将从外部性能问题(如CPU、内存、网络)、行的重新排序、SQL语句调优等方面进行深入探讨,并提供一系列实用的Oracle优化技巧。 #### 外部性能问题:CPU、内存与网络 1. **CPU资源的影响**: - 当CPU资源成为...

    收获不止Oracle--超清扫描PDF

    2. 优化SQL语句:对SQL查询语句进行简化和重写,减少不必要的计算和处理,例如减少子查询的使用,利用连接(JOIN)来替代子查询。 3. 正确使用索引:根据查询条件和数据分布创建合适的索引,并及时更新或删除不再...

    oracle常见问题

    - **问题8**: 连接数据库失败,报错“ORA-12541: TNS:无监听程序”。 - 排查步骤:检查监听器状态,使用lsnrctl status命令,确保监听器正在运行。检查tnsnames.ora和listener.ora文件配置是否正确。 9. **SQL...

    oracle优化规则总汇

    3. **共享SQL语句**:Oracle通过共享池缓存解析过的SQL语句,提高执行效率和内存使用。但SQL语句必须完全相同才能共享,包括空格和换行。这意味着SQL的编写应保持一致,使用绑定变量(bind variables)而非硬编码值...

    《Oracle查询优化改写技巧与案例》PDF版本下载.txt

    - **问题描述**:某公司需要每天定时生成一份涉及多个部门的销售报表,但现有的SQL查询执行时间过长。 - **解决方案**: - 重构查询逻辑,合并重复的子查询为单个JOIN操作。 - 创建覆盖索引以减少额外的数据访问。...

    oracle-explain.rar_oracle

    - 索引优化:如果全表扫描成本过高,考虑是否需要创建或优化索引。 - JOIN策略:分析JOIN操作是否高效,例如嵌套循环JOIN、哈希JOIN或归并JOIN的适用性。 4. **使用`EXPLAIN PLAN`的实际案例**: - 分析慢查询:...

    让oracle跑的更快

    - **问题背景**:该电商平台在高峰期购物车模块响应时间过长,导致用户体验下降。 - **解决方案**:通过对系统架构的分析,发现大量读写操作集中在同一时间段内。通过引入分区技术,将数据分散存储,有效缓解了I/O...

    oracle性能指标

    如果显著,可能表明连接顺序问题或索引使用不当,应检查索引使用和多表连接顺序。 3. **厘秒缓冲区忙(buffer busy(cs))**:当一个会话试图访问被其他会话占用的缓冲区块时产生。较高的等待频率可能提示存在并发控制...

    Oracle10,11g 巡检,调优。

    然而,在实际应用中,有时候用户对象也会错误地创建在这个表空间内,这可能会导致性能问题或其他风险。因此,定期检查SYSTEM表空间中的用户对象是很有必要的。 #### 五、已装载的产品选项 (79) Oracle数据库支持...

    DAVE Oracle 数据泵 学习笔记

    - **特点**: 网络模式是四种模式中最慢的一种,因为数据需要通过网络传输,通常比直接从磁盘读取数据慢。 #### 2. Data Pump 的使用场景 - **expdp/impdp 在客户端使用**: 可以在客户端使用 `expdp` 和 `impdp`,...

    性能优化篇之Oracle10g_性能分析及优化思路

    4. **Latch等待**: latch是Oracle内部的一种同步机制,过多的latch等待可能表明并发控制问题。 三、优化策略 1. **索引优化**:合理创建和使用索引可以大幅提升查询速度,但过多的索引会增加写操作的开销,需权衡...

Global site tag (gtag.js) - Google Analytics