Linux下启动和关闭Oracle服务和监听程序

Linux下启动和关闭Oracle服务和监听程序
Linux下启动和关闭Oracle服务和监听程序

Linux下启动和关闭Oracle服务和监听程序

分类:Database2008-08-29 10:54 4195人阅读评论(0) 收藏举报oraclelinux数据库sqlshell任务

原文链接:https://www.360docs.net/doc/c54539548.html,/lgnemo/blog/item/481c0266faff6622aa184cb5.html

oracle数据库是重量级的,其管理非常复杂,将其在linux平台上的启动和关闭步骤整理一下。

安装完毕oracle以后,需要创建oracle系统用户,并在/home/oracle下面的.bash_profile 添加几个环境变量:ORACLE_SID,ORACLE_BASE,ORACLE_HOME。比如:

export ORACLE_SID=test export ORACLE_BASE=oracle_install_dir export

ORACLE_HOME=xxx

启动步骤:注意$代表shell命令提示符,这里的oracle是9.0以上版本。

1.$ su - oracle

2.$ sqlplus / nolog

3.sql> conn / as sysdba

4.sql> startup (一般不需要加参数,只要设置好环境变量)

5.sql> quit (退出sql模式)

6.$ lsnrctl start (启动监听器)

关闭oracle

1.$ lsnrctl stop(关闭监听器,在这之前,应该先关闭应用程序)

2.$ sqlplus /nolog

3.sql>shutdown 其参数:shutdown有四个参数,四个参数的含义如下:

Normal 需要等待所有的用户断开连接

Immediate 等待用户完成当前的语句

Transactional 等待用户完成当前的事务

Abort 不做任何等待,直接关闭数据库

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

immediate在用户执行完正在执行的语句后就断开用户连接,并不允许新用户连接。

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

abort 执行强行断开连接并直接关闭数据库。

前三种方式不回丢失用户数据。第四种在不的已的情况下,不建议采用!

经常遇到的问题:

1)权限问题,解决方法,切换到oracle用户;

2)没有关闭监听器,解决方法:关闭监听器

3)有oracle实例没有关闭,解决办法:关闭oracle实例

4)环境变量设置不全,解决办法:修改环境变量

Oracle数据库系统紧急故障处理方法

Oracle数据库系统紧急故障处理方法 Oracle物理结构故障是指构成数据库的各个物理文件损坏而导致的各种数据库故障。这些故障可能是由于硬件故障造成的,也可能是人为误操作而引起。所以我们首先要判断问题的起因,如果是硬件故障则首先要解决硬件问题。在无硬件问题的前提下我们才能按照下面的处理方发来进一步处理。 控制文件损坏: 控制文件记录了关于oracle的重要配置信息,如数据库名、字符集名字、各个数据文件、日志文件的位置等等信息。控制文件的损坏,会导致数据库异常关闭。一旦缺少控制文件,数据库也无法启动,这是一种比较严重的错误。 损坏单个控制文件: 1. 确保数据库已经关闭,如果没有用下面的命令来关闭数据库: svrmgrl>shutdown immediate; 2. 查看初始化文件$ORACLE_BASE/admin/pfile/initORCL.ora,确定所有控制文件的路径。 3. 用操作系统命令将其它正确的控制文件覆盖错误的控制文件。 4. 用下面的命令重新启动数据库: svrmgrl>startup; 5. 用适当的方法进行数据库全备份。 损坏所有的控制文件: 1. 确保数据库已经关闭,如果没有用下面的命令来关闭数据库: svrmgrl>shutdown immediate; 2. 从相应的备份结果集中恢复最近的控制文件。对于没有采用带库备份的点可以直接从磁带上将最近的控制文件备份恢复到相应目录;对于采用带库备份的点用相应的rman脚本来恢复最近的控制文件。 3. 用下面的命令来创建产生数据库控制文件的脚本:

svrmgrl>startup mount; svrmgrl>alter database backup controlfile to trace noresetlogs; 4. 修改第三步产生的trace文件,将其中关于创建控制文件的一部分语句拷贝出来并做些修改,使得它能够体现最新的数据库结构。假设产生的sql文件名字为createcontrol.sql. 注意: Trace文件的具体路径可以在执行完第3)步操作后查看 $ORACLE_BASE/admin/bdump/alert_ORCL.ora文件来确定。 5. 用下面命令重新创建控制文件: svrmgrl>shutdown abort; svrmgrl>startup nomount; svrmgrl>@createcontrol.sql; 6. 用适当的方法进行数据库全备份。 重做日志文件损坏: 数据库的所有增、删、改都会记录入重做日志。如果当前激活的重做日志文件损坏,会导致数据库异常关闭。非激活的重做日志最终也会因为日志切换变为激活的重做日志,所以损坏的非激活的重做日志最终也会导致数据库的异常终止。在ipas/mSwitch中每组重做日志只有一个成员,所以在下面的分析中只考虑重做日志组损坏的情况,而不考虑单个重做日志成员损坏的情况。 确定损坏的重做日志的位置及其状态: 1. 如果数据库处于可用状态: select * from v$logfile; svrmgrl>select * from v$log; 2. 如果数据库处于已经异常终止: svrmlgr>startup mount; svrmgrl>select * from v$logfile;

Oracle监听器服务不能启动的7步解决法

Oracle监听器服务不能启动的7步解决法 200712 陈平 一、连接主机字符串,说没有监听器SVRMGR> connect internal/oracle@orcl; ORA-12541: TNS:no listener SVRMGR> 二、运行监听器,说地址的协议专用组件指定不正确C:>lsnrctl LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Pro duction on 14-3月-2003 14:17 :51 (c) Copyright 1998, 1999, Oracle Corporation. All rights reserved. 欢迎来到LSNRCTL,请键入"help"以获得信息。LSNRCTL> status 连接至(DESCRIPTION=(A DDR ESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521))) TNS-01103: 地址的协议专用组件指定不正确 TNS-12541: TNS:无监听器 TNS-12560: TNS:协议适配器出现错误 TNS-00511: 无监听器32-bit Windows Error: 61: Unknown error LSNRCTL> start 启动tnslsnr:请稍候... Failed to start service, error 3. TNS-12536: TNS:可能会阻碍*作 TNS-12560: TNS:协议适配器出现错误 TNS-00506: *作可能阻塞32-bit Windows Error: 997: Unknown error LSNRCTL> 三、在控制面板中启动服务,出现以下错误服务:在本地计算机无法启动OracleOraHome81TNSListener 服务。错误3:系统找不到指定的路径而且OracleOraHome81TNSListener服务的可执行文件的路径是空的。四、进入注册表中修改ImagePath 在运行处执行REGEDIT进入注册表到HKEY_LO CA L_MAC HINESYSTEMCurrentControlSetServicesOracleOraHome81TNSListener 发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:f:OracleOra81BINTNSLSNR 退出注册表。 五、再去启动服务,服务启动正常 六、启动监听器 C:>lsnrctl LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Production on 14-3月-2003 14:42 :10 (c) Copyright 1998, 1999, Oracle Corporation. All rights reserved. 欢迎来到LSNRCTL,请键入"help"以获得信息。 LSNRCTL> start TNS-01106: 使用名称LISTENER的监听器已经启动 LSNRCTL> status 连接至(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521))) LISTENER 的STATUS ------------------------ 别名LISTENER 版本TNSLSNR for 32-bit Windows: Version 8.1.6.0.0 - Produc tion 启动日期14-3月-2003 14:40:15 正常运行时间0 天0 小时2 分 6 秒跟踪级别off 安全性OFF SNMP OFF 监听器参数文件f:OracleOra81networkadminlistener.ora 监听器日志文件f:OracleOra81networkloglistener.log 服务摘要.. PLSExtProc 具有1个服务处理程序orc2 具有1个服务处理程序orcl 具有1个服务处理程序orcl 具有2个服务处理程序命令执行成功LSNRCTL> 七、再去连接,成功SVRMGR> connect internal/sys@orcl; 连接成功。

Oracle数据库startup和shutdown方式

Oracle数据库startup和shutdown方式 昨天晚上,回去好好整理了下关于"Oracle数据库提供了几种不同数据库启动和关闭方 式",然后,自己就回去就写了个示例. 其中,就出现了1个问题: ORA-12528: TNS:listener: all appropriate instances are blocking new connections 于是到网上就大量的查阅资料,哈哈,好不错,解决方法找到了.其中红色的就是主要解决方法.下面就把我整理的东西给共享下. 一:注意事项 要启动和关闭数据库,必须要以具有Oracle 管理员权限用户登陆,通常也就是以具有SYSDBA 权限用户登陆。一般我们常用INTERNAL用户来启动和关闭数据库(INTERNAL用户实际上是SYS用户以SYSDBA连接同义词)。Oracle数据库新版本将逐步淘汰INTERNAL这个内部用户,所以我们最还是设置DBA用户具有SYSDBA权限。 二:启动一个数据库需要三个步骤 1、创建一个Oracle实例(非安装阶段) 2、由实例安装数据库(安装阶段) 3、打开数据库(打开阶段) 三:Startup(启动数据库命令) 1、STARTUP NOMOUNT NONOUNT选项仅仅创建一个Oracle实例。读取init.ora初始化参数文件、启动后台进程、初始化系统全局区(SGA)。Init.ora文件定义了实例配置,包括内存结构大小和启动后台进程数量和类型等。实例名根据Oracle_SID设置,不一定要与打开数据库名称相同。当实例打开后,系统将显示一个SGA内存结构和大小列表,如下所示: SQL> startup nomount ORACLE 例程已经启动。 Total System Global Area 35431692 bytes Fixed Size 70924 bytes Variable Size 18505728 bytes Database Buffers 16777216 bytesu Redo Buffers 77824 bytes 2、STARTUP MOUNT 该命令创建实例并且安装数据库,但没有打开数据库。Oracle系统读取控制文件中关于数据文件和重作日志文件内容,但并不打开该文件。这种打开方式常在数据库维护操作中使用,如对数据文件更名、改变重作日志以及打开归档方式等。在这种打开方式下,除了可以看到SGA系统列表以外,系统还会给出"数据库装载完毕"提示。 3、STARTUP

Oracle数据库的启动与关闭

以下资料来自Oracle数据库精讲与疑难解析,仅供学习 一、Oracle数据库的启动 Oracle数据库的启动要经历3个阶段。 阶段一:启动实例 (Start An Instance)--nomount 阶段二:装载数据库 (Mount The Database)--mount 阶段三:打开数据库 (Open The Database)--open 1.启动实例 ①读取参数文件(Initialization Parameter File, PFILE 或者 Server Parameter Files, SPFILE) ②Oracle根据参数文件中的参数,分配系统全局区(System Global Area, SGA) ③启动后台进程(DBWR: 数据库写入进程,LGWR:日志写入进程,CKPT:检查点进程,SMON: 系统监控进程,PMON:进程监控进程,ARCH归档进程等)。 这些内存和后台进程组合起来组成实例(Oracle Instance)。 参数文件(PFILE或者SPFILE)还指定了控制文件(Control File)的位置。 2.装载数据库 打开控制文件(Control File),从控制文件中获得数据文件(Data File)和联机日志文件(Redo Log File)的名字和位置。这时候,Oracle已经把实例和数据库关联起来。对于普通用户,数据库 还是不可访问。 3.打开数据库 Oracle打开数据文件 (Data Files) 和联机日志文件 (Redo Log File) 。这时候,数据库可以使用。 普通可以登录数据库,对数据库进行操作。 4.分步启动Oracle STARTUP NOMOUNT; ALTER DATABASE MOUNT; ALTER DATABASE OPEN; 5.直接启动Oracle STARTUP (相当于上面三个过程依次进行) 6.使用特定初始化参数文件 (Initialization Parameter File, FILE) 启动数据库 STARTUP PFILE='C: \oracle\product\10.2.0\db_1\dbs\PFILEORCL.ORA'; 7.把数据库启动到限制模式(RESTRICT) 在限制模式下,只有CREATE SESSION 和RESTRICTED SESSION权限的用户可以访问数据库。 ①如果数据库是关闭的 STARTUP RESTRICT; ②如果数据库是开启的 ALTER SYSTEM enable restricted session; 8.以只读模式(Read Only)打开数据库 ①如果数据库是关闭的 STARTUP open read only; ②如果数据库是开启的 ALTER DATABASE OPEN read only; 在直读模式下,数据文件和日志文件都禁止写操作。整个数据库是只读的。 但是允许数据库恢复(Database Recovery)及其他不会产生回滚的操作。 9.把数据库启动到回复模式 (RECOVER) STARTUP OPEN RECOVER; 10.重启数据库(RESET) STARTUP FORCE

plsql远程访问数据库 解决ora12541:TNS无监听程序

本机为win7 32位系统,为了学习oracle,装了个vbox虚拟机,再装了个win7虚拟机,内装oracle 11g(win7如果要装10g,要选择vista版本,win版本会安装报错).oracle11g安装完后有报了个错误,当时没注意,现在也忘了什么错了,但是不影响使用.后来想在本机安装plsql来远程连接虚win7上的oracle.查了一些资料,步骤如下: 1.下载plsql,安装. 2.下载Instant Client,点击下载,下载第一个basic就行了,下载完解压缩,以放到主win7 d盘根目录为 例:d:\instantclient_11_2 3.在d:\instantclient_11_2新建tnsnames.ora,用记事本编辑. 4.到虚win7上的oracle安装目录找到…\app\admin\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora,打开,比如数据库实例是orcl,找到如下代码,拷贝到本机d:\instantclient_11_2\tnsnames.ora里 ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 虚拟机IP)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl) ) ) 5.添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径d:\instantclient_11_2\tnsnames.ora,plsql通过这个找到orcl连接字符串 6.添加一个环境变量NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK 7.打开PLSQL,不用登陆,工具-首选项-ORACLE-连接: 勾选检查连接 Oracle主目录: d:\instantclient_11_2 OCI库: d:\instantclient_11_2\oci.dll 经过以上几步之后,重启PLSQL,问题来了,报错:ora-12541:TNS:无监听程序. ping是可以ping得通的,虚win7上的监听也开着.经过不懈的努力,多次试验终于解决了: 1.虚拟机网络选择桥接,并在虚拟机内网络连接IPV4设置静态IP IP地址:192.168.1.111 (111可修改成自己的 1-255) 子网掩码:255.255.255.0 默认风头:192.168.1.1 首选DNS服务器:192.168.1.1 修改完记得主win7上 ping 192.168.1.111 ping得通再继续往后.

Oracle11g监听程序当前无法识别连接描述符中请求的服务

解决方法一: 一:打开cmd,输入sqlplus system/***** (注****表示密码) 能连接Oracle数据库;但输入sqlplus system/******@orcl11g 点回车则显示监听程序当前无法识别连接描述中请求的服务; 二:使用SQL/PLUS工具连接也是显示一样的结果监听程序当前无法识别连接描述中请求的服务; 三:解决方法: i): 打开这个文件D:\oracle_11g\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora; ii):找到这样段语句 [plain]view plaincopy (SID_DESC = (SID_NAME = CLRExtProc) (ORACLE_HOME = D:\oracle_11g\product\11.2.0\dbhome_1) (PROGRAM = extproc) (ENVS = "EXTPROC_DLLS=ONL Y:D:\oracle_11g\product\11.2.0\dbhome_1\bin\oraclr11.dll") ) 然后在这后面添加这样语句: [plain]view plaincopy (SID_DESC = (GLOBAL_DBNAME = orcl11g) (ORACLE_HOME = D:\oracle_11g\product\11.2.0\dbhome_1) (SID_NAME = orcl11g) ) 最后显示如下: iii)自己按照IP或者数据库实例名修改后保存,再重启数据库监听服务;运行sqlplus

system/******@orcl11g 连接成功; 解决方法二: 若以上办法不能解决问题,则需要分别修改listener.ora与tnsnames.ora两个文件,将监听地址HOST改成计算机名(计算机-属性-高级系统设置-计算机名),listener.ora有一处地方需修改,tnsnames.ora有两处地方需修改,修改完成后最后重启数据库服务(包括监听服务与数据库服务);

Oracle监听器服务不能启动的问题

Oracle监听器服务不能启动的问题 从客户端连接到服务器,出现了这个错误,ora12541-TNS : 没有监听器 于是,在服务器中启动OracleOraHome92TNSListener服务,显示“在本地计算机无法启动OracleOraHome92TNSListener服务,错误3,系统找不到指定路径”。 原因:Windows优化大师将Oracle的监听服务给"优化"了 一、连接主机字符串,说没有监听器 SVRMGR> connect internal/oracle@orcl; ORA-12541: TNS:no listener SVRMGR> 二、运行监听器,说地址的协议专用组件指定不正确 C:\>lsnrctl LSNRCTL for 32-bit Windows: Version 8.1.6.0.0 - Production on 14-3月 -2003 14:17 :51 (c) Copyright 1998, 1999, Oracle Corporation. All rights reserved. 欢迎来到LSNRCTL,请键入"help"以获得信息。 LSNRCTL> status 连接至(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=robust)(PORT=1521))) TNS-01103: 地址的协议专用组件指定不正确 TNS-12541: TNS:无监听器 TNS-12560: TNS:协议适配器出现错误 TNS-00511: 无监听器 32-bit Windows Error: 61: Unknown error LSNRCTL> start 启动tnslsnr:请稍候... Failed to start service, error 3. TNS-12536: TNS:可能会阻碍*作 TNS-12560: TNS:协议适配器出现错误 TNS-00506: *作可能阻塞 32-bit Windows Error: 997: Unknown error LSNRCTL> 三、在控制面板中启动服务,出现以下错误 服务:在本地计算机无法启动 OracleOraHome81TNSListener 服务。 错误3:系统找不到指定的路径 而且OracleOraHome81TNSListener服务的可执行文件的路径是空的。 四、进入注册表中修改ImagePath 在运行处执行REGEDIT进入注册表到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome81TNSListener 发现ImagePath关键值没有了,增加他,选择可扩充字符串值,编辑字符串的数值数据为:f:\Oracle\Ora81\BIN\TNSLSNR

服务器(ORACLE)启动与关闭

服务器(O R A C L E)启动 与关闭

一、重启服务器顺序: 关闭数据库(toppord/toptest)→重启设备(reboot)→开启数据 库(只需要开启toptest,topprod已设置自动启用) 二、Linux下启动 oracle 数据库 -- ssh连接上数据库主机,正式区DB(172.16.13.228) / 测试区DB(172.16.13.224) -- su – root/tiptop -- su – oracle -- echo $ORACLE_SID #检查当前实例 -- export ORACLE_SID=topprod(正式区)/ export ORACLE_SID=topprod(测试区) # 设置实例 -- lsnrctl start -- sqlplus / as sysdba -- startup 至此,已将数据库开启到OPEN状态。 三、Linux下关闭ORACLE数据库 -- ssh连接上正式区DB(172.16.13.228) / 测试区DB(172.16.13.224) -- su - root/root #切换至ROOT管理员用户 -- su – oracle #切换至oracle用户(oracle用户密码原为oracle,但不正 确) -- echo $ORACLE_SID #检查当前实例 -- export ORACLE_SID=topprod(正式区)/ export ORACLE_SID=topprod(测试区) #设置实例

-- sqlplus / as sysdba #以数据库管理员身份进入数据库 -- shutdown immediate #关闭数据库 -- su – root/root #切换回系统ROOT用户 -- reboot #重启服务器 检查服务器资源命令 AP:top DB:topas 备注: oracle数据库几种关闭方式: 1、shutdown normal 正常方式关闭数据库 关闭时间较长,等待事务完成才会关闭数据库。 2、shutdown immediate 立即方式关闭数据库(一般使用该方式) 会结束事务,将未提交的事务全部回滚。在SVRMGRL中执行shutdown immediate,数据库并不立即关闭,而是在Oracle执行某些清除工作后才关闭(终止会话、释放会话资源),当使用shutdown不能关闭数据库时,shutdown immediate可以完成数据库关闭的操作。 3、shutdown abort 直接关闭数据库 会造成数据库的不一致,再次启动数据库会自动执行恢复,会造成等待时间较长。正在访问数据库的会话会被突然终止,如果数据库中有大量操作正在执行,这时执行shutdown abort后,重新启动数据库需要很长时间。

Oracle 数据库启动过程各步骤详解

Oracle 数据库启动过程各步骤详解 Oracle数据库的完整启动过程包含以下3个步骤:简单地说,就是:启动实例-->加载数据库-->打开数据库.------------------------------------------------------------------------------------------------------------------ 1.创建并启动与数据库对应的实例。在启动实例时,将为实例创建一系列后台进程和服务进程,并且在内存中创建SGA 区等内存结构。在实例启动的过程中只会使用到初始化参数文件,数据库是否存在对实例的启动没有影响。如果初化参数设置有误,实例将无法启动。 2.为实例加载数据库。加载数据库时实例将打开数据库的控制文件,从控制文件中获取数据库名称、数据文件的位置和名称等有关数据库物理结构的信息,为打开数据库做好准备。如果控制文件损坏,则实例将无法加载数据库。在加载数据库阶段,实例并不会打开数据库的物理文件----数据文件和重做日志文件。 3.将数据库设置为打开状态。打开数据库时,实例将打开所有处于联机状态的数据文件和重做日志文件。控制文件中的任何一个数据文件或重做日志文件无法正常打开,数据库都将返回错误信息,这时需要进行数据库恢复。只有将数据库设置为打开状态后,数据库才处于正常状态,这时普通用户才能够访问数据库。在很多情况下,启动数据库时并不是直接完成上述

3个步骤,而是逐步完成的,然后执行必要的管理操作,最后才使数据库进入正常运行状态。所以,才有了各种不同的启动模式用于不同的数据库维护操作。 ============================================== ===============================Oracle 数据库启动与关闭各种方式详解整理 前言: 首先要知道,Oracle数据库的完整启动过程是分步骤完成的,包含以下3个步骤:启动实例-->加载数据库-->打开数据库详解看这里: https://www.360docs.net/doc/c54539548.html,/lutinghuan/article/details/7484103因为Oracle数据库启动过程中不同的阶段可以对数据库进行不同的维护操作,对应我们不同的需求,所以就需不同的模式启动数据库。 小白:在启动实例之前,需要先启动SQL*Plus,并以一个用户身份连接到Oracle。启动模式详解1.NoMount 模式(启动实例不加载数据库)命令:startup nomount 讲解:这种启动模式只会创建实例,并不加载数据库,Oracle 仅为实例创建各种内存结构和服务进程,不会打开任何数据文件。在NoMount模式下,只能访问那些与SGA区相关的数据字典视图,包括V$PARAMETER、V$SGA、V$PROCESS 和V$SESSION等,这些视图中的信息都是从SGA区中获

oracle_listener_详解

Oracle监听-提纲 o ORACLE工作机制o ORACLE监听参数o ORACLE监听功能o ORACLE监听配置o ORACLE网络构架o ORACLE精简版构造o ORACLE常见问题

ORACLE工作机制 o从一个用户请求开始讲,ORACLE的完整的工作机制是怎样的,首先一个用户进程发出一个连接请求,如果使用的是主机命名或者是本地服务命中的主机名使用的是机器名(非IP地址),那么这个请求都会通过DNS服务器或HOST文件的服务名解析然后传送到ORACLE监听进程,监听进程接收到用户请求后会采取两种方式来处理这个用户请求 o下面我们分专用服务器和共享服务器分别采用这两种方式时的情况来讲

专用服务器模式 o一种方式是监听进程接收到用户进程请求后,产生一个新的专用服务器进程,并且将对用户进程的所有控制信息传给此服务器进程,也就是说新建的服务器进程继承了监听进程的信息,然后服务器进程给用户进程发一个RESEND包,通知用户进程可以开始给它发信息了,用户进程给这个新建的服务器进程发一个CONNECT包,服务器进程再以ACCEPT包回应用户进程,致此,用户进程正式与服务器进程确定连接。 我们把这种连接叫做HAND-OFF连接,也叫转换连接

专用服务器模式 o另一种方式是监听进程接收到用户进程的请求后产生一个新的专用服务器进程,这个服务器进程选用一个TCP/IP端口来控制与用户进程的交互,然后将此信息回传给监听进程,监听进程再将此信息传给用户进程,用户进程使用这个端口给服务器进程发送一个CONNECT包,服务器进程再给用户进程发送一个ACCEPT包,致此,用户进程可以正式向服务器进程发送信息了。这种方式我们叫做重定向连接。

在本地计算机无法启动oracledbconsole服务。错误1053:服务没有及时响应启动或控制请求

在本地计算机无法启动oracledbconsole服务。错误1053:服务没有及时响应启动或控制请求 在控制面板里启动oracle的服务,其中启动OracleDBConsoleorcl服务时出错,提示:在本地计算机无法启动OracleDBConsoleorcl服务。错误:1053:服务没有及时相应启动或控制请求。重启电脑之后依然如故。请问怎么解决呢? 产生这个问题的可能原因有可能是由于电脑的IP地址改变导致。这个时候需要重新配置EM。进入DOS窗口重新配置一下DBConsole试试 C:/>set ORACLE_SID=ORCL C:/>emca -repos recreate EMCA 开始于2007-6-26 14:04:39 EM Configuration Assistant 10.2.0.1.0 正式版 版权所有(c) 2003, 2005, Oracle。保留所有权利。 输入以下信息: 数据库SID: ORCL 监听程序端口号: 1521 SYS 用户的口令: SYSMAN 用户的口令: 是否继续? [yes(Y)/no(N)]: YES 2007-6-26 14:04:53 oracle.sysman.emcp.EMConfig perform 信息: 正在将此操作记录到D:/oracle/product/10.2.0/db_1/cfgtoollogs/emca/orcl/emc a_2007-06-26_02-04-38-下午.log。 2007-6-26 14:04:54 oracle.sysman.emcp.EMReposConfig dropRepository 信息: 正在删除EM 资料档案库(此操作可能需要一段时间)... 2007-6-26 14:06:03 oracle.sysman.emcp.EMReposConfig invoke 信息: 已成功删除资料档案库 2007-6-26 14:06:03 oracle.sysman.emcp.EMReposConfig createRepository 信息: 正在创建EM 资料档案库(此操作可能需要一段时间)... 2007-6-26 14:08:40 oracle.sysman.emcp.EMReposConfig invoke 信息: 已成功创建资料档案库 已成功完成Enterprise Manager 的配置 EMCA 结束于2007-6-26 14:08:40 C:/>emca -DEconfig dbcontrol db EMCA 开始于2007-6-26 14:11:41 EM Configuration Assistant 10.2.0.1.0 正式版 版权所有(c) 2003, 2005, Oracle。保留所有权利。 输入以下信息:

oracle启动的三个阶段

oracle启动的三个阶段 三个阶段: 1. 启动到nomount状态,这个阶段数据库读取spfile/pfile文件中的参数,启动数据库实例。 1-1读取初始化参数文件.注意读取顺序.主要是指定控制文件及数据库实例名1-2分配系统全局区 1-3启动后台进程 1-4打开alertSID.log文件和跟踪文件 补充说明: 在nomount阶段,oracle 会查找参数文件,启动实例,参数文件的查找顺序为spfile.ora,init.ora,init.ora如果以上三个文件均查找不到oracle在此时就会报错,同时在此阶段oracle会查找alter文件,如果没有找到alter文件会自动创建;启动相应的后台进程至少包括五个 pmon,DBWn,ckpt,smon,LGWn。总之,这个阶段主要就是启动一个实例,并为加载数据库确定必要的参数。 2. 启动到mount状态,这个阶段数据库打开控制文件,验证控制文件。 2.装载数据库--startup mount,读控制文件等 2-1将数据库与一个已打开的实例相关联 2-2打开控制文件 2-3获取数据文件和重做日志文件的名称和状态.

补充说明: 在mount阶段,oracle会打开控制文件,加载数据库,此时数据库的基本结构信息都能够查询了,但是还不能查询用户表的内容。 3. 启动到open状态,这个阶段数据库打开控制文件里描述的文件。 3.打开数据库--database open 3-1打开数据文件 3-2打开联机重做日志文件. 补充说明: 在open阶段,就是打开数据库,在这个阶段SMON会对数据文件的检查点进行一致性检查,不一致时smon会介入进行恢复。 Oracle中数据库实例和数据库是独立实体,可以独立存在。因此启动过程分成多个阶段:首先在内存中构建实例,然后通过安装数据库启用到数据库的连接,最后打开数据库来使用它。Oracle数据库有四种状态:SHUTDOWN:所有数据库文件都关闭,不存在实例 NOMOUNT:实例在内存中创建(SGA已经被创建,根据参数文件指定启动某些后台进程),但没有连接到任何数据库。 MOUNT:实例定位并读取数据库控制文件。 OPEN:所有的数据库文件都被定位和打开,终端用户可以使用数据库。 数据库的启动可分为三个阶段:

如何配置Oracle数据库监听

近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server)。本文现对监听配置作一简单介绍,并提出一些客户终端无法连接服务器端的解决思路,愿对广大网友与读者有一些帮助。 一、监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求。既然是基于服务器端的服务,那么它也只存在于数据库服务器端,进行监听器的设置也是在数据库服务器端完成的。 二、本地服务名(Tnsname) Oracle客户端与服务器端的连接是通过客户端发出连接请求,由服务器端监听器对客户端连接请求进行合法检查,如果连接请求有效,则进行连接,否则拒绝该连接。 本地服务名是Oracle客户端网络配置的一种,另外还有Oracle名字服务器(Oracle Names Server)等。Oracle常用的客户端配置就是采用的本地服务名,本文中介绍的也主要是基于本地服务名的配置。 三、Oracle网络连接配置方法 配置Oracle服务器端与客户端都可以在其自带的图形化Oracle网络管理器(Oracle Net Manager)里完成(强烈建议在这个图形化的工具下完成Oracle服务端或客户端的配置)。在Windows下,点击“开始/程序/Oracle - OraHome92/Configuration and Migration Tools/Net Manager”启动Oracle网络管理器工具,在Linux/Unix下,利用netmgr命令来启动图形化Oracle网络管理器,如: $ netmgr Windows下启动Net Manager图形窗口如下图示:

Oracle数据库重新启动的方法

Oracle数据库重新启动的方法 2010-11-15 10:02 佚名互联网我要评论(0)字号:T | T Oracle数据库是大家都非常熟悉的数据库系统,下文就将教您重新启动Oracle的详细步骤方法,希望可以对您能有所帮助。 AD: Oracle数据库重新启动应该如何实现呢?这是很多人都提到过的问题,下面就为您详细介绍Oracle数据库重新启动的方法,供您参考。 1. 停应用层的各种程序。 2. 停oralce的监听进程: $lsnrctl stop 3. 在独占的系统用户下,备份控制文件: SQL>alter database backup controlfile to trace; 4. 在独占的系统用户下,手工切换重作日志文件,确保当前已修改过的数据存入文件: SQL>alter system switch logfile; 5. 在独占的系统用户下,运行下面SQL语句,生成杀数据库用户连接的kill_all_session.sql文件: set head off; set feedback off; set newpage none; spool /oracle_backup/bin/kill_all_session.sql select 'alter system kill session '''||sid||', '||serial#||''';' from v$session where username is not null; spool off; 6. 在独占的系统用户下,执行杀数据库用户连接的kill_all_session.sql文件: SQL>@/oracle_backup/bin/kill_all_session.sql

在oracle设置ODBC及出现oracle提示TNS无监听程序的解决办法

在oracle设置ODBC及出现oracle提示TNS:无监听程序的解决办法 设置ODBC ODBC的全名是Open Database Connectivity(开放式数据库连接),是应用程序连接数据库的接口。由于计算机的类型不同,从个人计算机到大型主机,都有自己处理数据的方式,ODBC则可以连接到相同或不相同的数据库管理系统,因此,ODBC可以给应用程序提供相同的存取数据库的接口,程序设计员在设计连接不同数据库时,只要处理与ODBC的连接就可以了,而不必针对不同的数据库设计完全不同的程序。特别需要提醒的是,不同的数据库都有自己对应的ODBC驱动程序,在使用不同数据库的同时,务必设置正确的ODBC驱动程序。就像在本节中,想要连接Oracle 10g数据库,就必须设置Oracle ODBC驱动程序,操作步骤如下: (1)选择Start→Programs→Oracle-OraDb10g_home1→Configuration and Migration Tools→Microsoft ODBC Administrator (2)打开ODBC Data Source Administrator, (3)单击System DSN标签 (4)单击Add按钮 (5)向下拖动滚动条,找到Oracle in OraDb10g_home1选项,选择该选项 (6)单击Finish按钮,进入Oracle ODBC Driver Configuration对话框 Data Source Name:自定义,程序调用时将使用这个名称,请输入misdbdsn。 TNS Service Name:Oracle TNS服务名称,在创建数据库时,一般默认TNS服务名称与数据库名称相同,请输入MISDB,读者也可以自定义。 User ID:用户的账户名称,这里使用System账户来测试。 (7)单击Test Connection按钮,出现Oracle ODBC Driver Connect对话框,如图13-10所示。 Password:请输入安装时给System设置的密码,或自行修改后的密码。 如果出现oracle提示ERROR - ORA-12541: TNS:无监听程序,那么就依照下列步骤做,这是因为你的分配的地址不对。 查看\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora文件,用记事本打开,显示oracle值: ORACLE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST =自动分配的IP地址)(PORT = 1521)) (CONNECT_DATA =

ORACLE数据库启动过程祥解

ORACLE数据库启动过程祥解 本文目的 在ORACLE数据库治理中,启动数据库遇到问题较多。而且多数ORACLE的使用者在数据库启动过程中遇到错误提示,无从下手使用了错误的方法修改数据库的相关文件,而从造成了不必要的数据缺失。通过本文使读者对ORACLE数据库的启动过程有一个较为详细的了解,遇到启动过程的错误不至于手忙脚乱造成更大的缺失。 一、数据库启动方法 1、UNIX平台数据库启动方法 使用oracle用户登录服务器 $>sqlplus ‘/ as sysdba’(使用sys用户登录数据库) Sql>(系统提示连接到一个没有启动的实例) Sql>startup(正常启动数据库) 2、WINDOWS平台数据库启动方法 ●使用手工方式启动数据库。 ?打开DOS窗口 ?C:\>ordim –startup –sid ora9i(其中ora9i为实例的名称) 在WINDOWS平台启动ORACLE时经常遇到如下错误:

以上错误是由于,没有启动ORACLE数据库在WINDOWS平台中的服务。 正确启动过程如下: C:\>oradim -startup -sid ora9i C:\>lsnrctl start LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 28-7月-2006 22:24 :16 Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved. 启动tnslsnr:请稍候... TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production 系统参数文件为c:\oracle\ora92\network\admin\listener.ora 写入c:\oracle\ora92\network\log\listener.log的日志信息监听:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXT PROC0ipc)))监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=dba)(PORT=1521)) )正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0))) LISTENER 的STATUS ------------------------ 别名LISTENER 版本TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Produc tion 启动日期28-7月-2006 22:24:16 正常运行时刻0 天0 小时0 分 4 秒 跟踪级别off 安全性OFF SNMP OFF 监听器参数文件c:\oracle\ora92\network\admin\listener.ora

相关文档
最新文档