- 浏览: 9736 次
- 性别:
- 来自: 南京
最新评论
做oracle的优化,使用Console中打开数据库的配置,发现如图
由于里面有的值为零,于是我按照它的建议修改了对应的值。结果重启后oracle启动不起来了。
使用Console连接提示: 无法解析连接描述符中指定的SID。
使用pl/sql连接提示:ORA-12505:TNS:监听程序当前无法识别连接描述符中所给出的SID
1、 若数据库机器上没有装Console或者没有使用Console配置网络服务名.
则可以通过命令sqlplus sys/sys as sysdba 登录到服务器空闲进程。接着执行步骤4。
2、如果配置了网络服务名,则
在路径D:\oracle\product\10.0\db_1\network\admin\listener.o
ra下 找到listener.ora。 2
原来listener.ora内容: # listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = E:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST =127.0.0.1)(PORT =1521))
)
)
改成(红色部分为增加部分): # listener.ora Network Configuration File: D:\oracle\product\10.2.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = XXX(网络服务名))
(ORACLE_HOME = D:\oracle\product\10.2.0\db_1)
(SID_NAME = XXX(网络服务名)))
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST =127.0.0.1)(PORT =1568))
)
)
修改完 listener.ora后
使用console连接提示"数据库已关闭"。
使用pl/sql连接提示
ORA-27101 Sharedmemory realmdoes not exist
ORA-01034 ORACLE not available
查看db1文件夹下的alert_XXX(网络服务名).log。
里面记录 :Cannot set sga_target with db_block_buffers set
3、使用dos端登录oracle
sqlplus sys/sys@XXX(网络服务名). as sysdba
能够登陆
提示已经连接到空闲例程
4、找 pfile,在 /.../admin/XXX(服务名)/pfile 下,init.ora.XXXXXXX(数字串)
5、执行命令
SQL> startup pfile='pfile 路径'
通过指定的 pfile 启动数据库实例
结果如图
6、执行命令
SQL> create spfile from pfile='pfile 路径';(一定要有分号!)
创建成功会提示: 文件已创建。
数据库可以登录了,查看例程/配置/内存 ,恢复了原样。
对于32 BIT的Windows系统,有SGA 1.7G限制
某些OS系统本身也有一些内存参数限制
修改 SGA 文件:
SGA_MAX_SIZE是调优oracle9i非常重要的参数,但也是并不是调的越大越好。相反,oracle9i对SGA_MAX_SIZE的最大值有一个限制:1.7G,超过该值就会造成实例无法启动,系统报以下信息: 1.当你控制台中设置完实例SGA最大值,点击"应用"后,oracle在"正在启动数据库"的过程中,提示:ORA-27102:out of memory,启动失败
2.当你第二次手动启动实例时,系统会提示:ORA-27100:shared memory realm already exists,最终还是启动失败。
解决该问题的思路:想办法把SGA_MAX_SIZE的值修改到1.7G以下,然后再启动
解决该问题需要用到从oracle9i开始才拥有的特性:spfile。
spfile是一个二进制文件,可以通过pfile来创建,而且可以通过rman备份。它管理的是初始化参数;
spfile和pfile不同之处在于:
1.在oracle9i之前使用pfile存储初始化参数设置,当oracle实例启动时去读取这些参数,任何参数的修改都必须重启实例才能生效。
2.使用spfile来管理初始化参数,可以使用ALTER SYSTEM或者ALTER SESSION来动态修改那些可动态修改的参数,不必重启实例立即生效。
3.除了第一次启动数据库时,oracle读取的是pfile,然后根据pfile来创建spfile,从此启动我们不在需要pfile。
4.pfile是文本文件,可以通过文本编辑器来修改,而spfile是二进制文件,用文本编辑器无法正常编辑。可以修改文本格式的pfile之后,用"create spfile from pfile"命令将文本生成二进制的spfile
好,大概了解了spfile和pfile之后,我们的思路应该很清晰了,下面是解决方法:
1.手动把实例的服务关闭(在服务里找到"OracleServiceSID"服务,右击选择"停止")
2.打开【程序】-【Oracle - OraHome92】-【Configuration and Migration Tools】-【Administration Assistant for Windows NT
】
3.在该页面中打开树形结构,找到实例结点,右击实例结点选择"启动/关闭选项",取消"服务启动时启动历程"选项。
4.右击实例结点,点击"启动服务"。
5.运行中敲入"cmd",进入sqlplus,然后通过命令创建可以修改的pfile文本文件:
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 9月 24 22:43:20 2009
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
文件已创建。
6.然后用文本编辑器打开zgznew.ora,找到SGA_MAX_SIZE参数,并将它修改到1.7G以下,注意,参数值的单位是字节。修改好之后保存,然后再通过命令创建spfile二进制文件:
SQL> create spfile from pfile='d:\zgznew.ora' ;
文件已创建。
7.此时再用startup命令启动实例就可以成功了:
Total System Global Area 529079780 bytes
Fixed Size 454116 bytes
Variable Size 503316480 bytes
Database Buffers 25165824 bytes
Redo Buffers 143360 bytes
数据库装载完毕。
数据库已经打开。
发表评论
-
COM(组件对象模型)
2012-07-03 13:42 784COM :创建和使用组件 的标准 (DLL:COM的一 ... -
在Flex组件上显示手型的鼠标
2012-07-02 10:24 597在Flex组件上显示手 ... -
flex3:drag-drop全攻略(二)
2012-07-02 10:24 637这里写四个实例:1,List->List 2, ... -
关于Flex 的渲染器的总结
2012-07-02 10:24 492关键字: Flex. 渲染 ... -
flex笔记--安装与项目建立
2012-07-02 10:24 320使用java做后台,采用Eclipse插件式安装 操 ... -
flex与mysql交互
2012-07-01 09:43 620这个小例子通过remoteobject的通讯方法。实现fl ... -
flex相关配置文件的说明
2012-07-01 09:43 496flex是通过amf协议来进行了通信的,是Flash Re ... -
Flex 与java 通信,通过BlazeDS
2012-07-01 09:43 6021. Server代码 package com.east ... -
Flex存取数据库Image类型数据-Java后台
2012-07-01 09:43 632如果将图片数据储存在数据库内,如何把它显示出来,本例涉及技 ... -
Flex 数据易犯错误: 常见误用和错误
2012-07-01 09:43 544在某些情形下,绑定操作似乎不能正常工作,此时你可能非常懊恼 ... -
ORA-12520错误解决方法
2012-06-30 17:58 776ORA-12520错误解决方法 今天用hibern ... -
没有找到MSVCR90D.DLL的简单解决方法
2012-06-30 17:58 822转载:http://www.cnblogs.com/_xb ... -
win7无法进入“计算机-右键-管理”的解决方法
2012-06-30 17:58 681我用的笔记本是联想y450 系统自带的是win7家庭 ... -
FireFox中使用ExtJs日期控件错误的解决方法
2012-06-30 17:58 674在extjs中有一个字段是日期格式,我想直接使用extjs ...
相关推荐
ORACLE修改SGA后无法启动的临时解决方法.比较实用的东西
14.1.1 Oracle安全性解决方案 14.1.2 VPD和OLS策略 14.2 Database Vault部署 14.2.1 Database Vault软件安装 14.2.2 Database Vault组件添加 14.2.3 Database Vault注册 14.2.4 Database Vault禁用和启用 ...
3 由于临时表空间无法扩展导致数据库被挂起 4由于未打补丁导致RMAN备份时将数据库挂起 5由于BLOB类型的表记录数太多操作又太频繁导致数据库效率急差 6由于未对特大表(达到或超过100万条记录)定期做表分析导致...
描述 Oracle 服务器的体系结构及其主要构件 列举用户连接到 Oracle 实例所涉及的结构 双机模式:RAC/HOT STANDBY 数据库的逻辑结构 创建表空间 改变表空间的大小 为临时段分配空间 改变表空间的状态 改变表空间的...
每次启动例程时,会分配系统全局区 (SGA) 并启动 Oracle 后台进程。后台进程代表调用进程执行各种功能。它们把为每个用户运行的多个 Oracle 程序所处理的功能统一起来。后台进程执行输入/输出 (I/O),并监视其它 ...
如果设置为 N 表示不通过 dbstart 和 dbshut 启动和关闭实例数据库 CAMS 系统要求在 安装完 ORACLE 后要求将该参数修改为 Y 以保证 ORACLE 数据库自启动 和关闭 1.2.3 数据库实例初始化...
针对数据库的启动和关闭、控制文件与数据库初始化、参数及参数文件、数据字典、内存管理、Buffer Cache与Shared Pool原理、重做、回滚与撤销、等待事件、性能诊断与SQL优化等几大Oracle热点主题,本书从基础知识入手...
1 Oracle 结构组件 目标 1-2 基本结构概述 1-3 Oracle 服务器 1-4 Oracle 实例 1-5 建立连接和创建会话 1-6 Oracle 数据库 1-7 物理结构 1-8 内存结构 1-9 系统全局区(SGA) 1-10 共享池 1-12 库缓存 1-13 数据字典...
最近几年,他专注于研究Oracle内部原理以及解决性能问题。他的博客主页是 kerryosborne.oracle-guy.com。 ROBYN SANDS 思科公司的软件工程师,为思科的客户设计开发嵌入式Oracle数据库产品。从1996年开始使用...
1.10.2 创建数据库后修改 MAXDATAFILES 27 1.10.3 使用OEM 28 第2章 硬件配置研究 30 2.1 结构概述 30 2.2 独立主机 31 2.2.1 磁盘阵列独立主机 31 2.2.2 磁盘镜像独立主机 34 2.2.3 多数据库独立主机 35 2.3 网络...
启动 Oracle 数据库实例:NOMOUNT 4-21 启动 Oracle 数据库实例:MOUNT 4-22 启动 Oracle 数据库实例:OPEN 4-23 关闭 Oracle 数据库实例 4-24 关闭模式 4-25 SHUTDOWN 选项 4-26 使用 SQL*Plus 启动和关闭 4-...
目录回到顶部↑第1章 开发成功的Oracle应用 1 1.1 我的方法 2 1.2 黑盒方法 4 1.3 开发数据库应用的正确(和不正确)方法 8 1.3.1 了解Oracle体系结构 8 1.3.2 理解并发控制 14 1.3.3 多版本 19 1.3.4 数据库...
8.4 监视和解决锁定冲突 286 8.4.1 共享锁与排他锁 287 8.4.2 排队机制 287 8.4.3 锁定争用 288 8.4.4 死锁 290 8.5 撤销概述 291 8.6 事务与撤销数据 292 8.7 管理撤销 293 8.7.1 与撤销相关的错误条件 ...
说明 : 指定在启动例程后, 要为共享服务器环境创建的服务器进程的数量。 值范围: 根据操作系统而定。 默认值 : 1 circuits: 说明 : 指定可用于入站和出站网络会话的虚拟电路总数。 该参数是构成某个例程的总 SGA ...
目录 序 ............................................................................................... 17 前言 ........................................................................3.5 临时文件..........