首页

文章

怎么检查oracle数据库服务有没有启动?

发布网友 发布时间:2022-04-20 03:00

我来回答

3个回答

热心网友 时间:2022-04-07 18:30

Oracle数据库实例启动时,分成nomount、mount和open的三个阶段,下面的实例分析来展示不同阶段时,系统到底做了哪些工作

1、nomout阶段,该阶段启动的前提是有参数文件,若没有参数文件,系统无法启动,在该过程中,系统分配内存、开启后台进程,同时更新alter日志文件

实例nomount之前的状态:

--无实例进程
[oracle@secdb1 admin]$ echo $ORACLE_SID
PROD
[oracle@secdb1 admin]$ ps -ef|grep PROD
oracle 14890 6310 0 21:12 pts/1 00:00:00 grep PROD
--alter日志信息
[oracle@secdb1 bmp]$ ls -lrt
total 48
-rw-r----- 1 oracle oinstall 1113 Mar 4 23:15 prod_lgwr_7319.trc
-rw-r----- 1 oracle oinstall 779 Mar 5 19:42 prod_mmnl_7329.trc
-rw-r--r-- 1 oracle oinstall 40910 Mar 5 21:08 alert_PROD.log

此时启动实例到nomount状态
[oracle@secdb1 admin]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Proction on Wed Mar 5 21:15:50 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 100664720 bytes
Database Buffers 209715200 bytes
Redo Buffers 2973696 bytes
SQL>

此时查看进程和日志信息
[oracle@secdb1 bmp]$ ls -lrt
total 52
-rw-r----- 1 oracle oinstall 1113 Mar 4 23:15 prod_lgwr_7319.trc
-rw-r----- 1 oracle oinstall 779 Mar 5 19:42 prod_mmnl_7329.trc
-rw-r--r-- 1 oracle oinstall 42513 Mar 5 21:15 alert_PROD.log ----------------日志文件已经更新

[oracle@secdb1 bmp]$ ps -ef|grep PROD ----------------------------系统中出现后台进程
oracle 14946 1 0 21:15 ? 00:00:00 ora_pmon_PROD
oracle 14948 1 0 21:15 ? 00:00:00 ora_psp0_PROD
oracle 14950 1 0 21:15 ? 00:00:00 ora_mman_PROD
oracle 14952 1 0 21:15 ? 00:00:00 ora_dbw0_PROD
oracle 14954 1 0 21:15 ? 00:00:00 ora_lgwr_PROD
oracle 14956 1 0 21:15 ? 00:00:00 ora_ckpt_PROD
oracle 14958 1 0 21:15 ? 00:00:00 ora_smon_PROD
oracle 14960 1 0 21:15 ? 00:00:00 ora_reco_PROD
oracle 14962 1 0 21:15 ? 00:00:00 ora_mmon_PROD
oracle 14964 1 0 21:15 ? 00:00:00 ora_mmnl_PROD
oracle 14965 14942 0 21:15 ? 00:00:00 oraclePROD (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 14988 5989 0 21:17 pts/3 00:00:00 grep PROD
如果在$ORACLE_HOME/dbs目录下无参数文件,启动实例是现象如下:
[oracle@secdb1 dbs]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Proction on Wed Mar 5 21:21:19 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/proct/10.2.0/db_1/dbs/initPROD.ora'
SQL> quit

参数寻找的优先级 spfileSID.ora----initSID.ora

在该阶段,可以进行数据库的创建、控制文件的创建

2、mount,在该阶段,启动条件是需要有控制文件,如果控制文件丢失或者损坏,启动将会报错。此时系统会打开控制文件、检查数据文件、日志文件的名称和位置,
但此时不检查文件到底是否存在不存在

mount之前:
SQL> select * from v$controlfile;
no rows selected

SQL> select * from v$datafile;
select * from v$datafile
*
ERROR at line 1:
ORA-01507: database not mounted
mount之后

SQL> alter database mount;
Database altered.
SQL> select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/PROD/disk1/control01.ctl
/u01/app/oracle/oradata/PROD/disk2/control02.ctl

SQL> select file#,name from v$datafile;

FILE# name
--------------------------------------------------------------------------------
1 /u01/app/oracle/oradata/PROD/disk1/system01.dbf
2 /u01/app/oracle/oradata/PROD/disk1/undotbs01.dbf
3 /u01/app/oracle/oradata/PROD/disk1/sysaux01.dbf
在该阶段,可以进行数据库的完全恢复、修改数据库的归档模式、移动和重命令数据文件
SQL> archive log list ---查看数据库归档模式
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /u01/app/oracle/proct/10.2.0/db_1/dbs/arch
Oldest online log sequence 3
Current log sequence 5

SQL> alter database archivelog; ---修改成归档模式
SQL> alter database noarchivelog;---修改成非归档模式

如果控制文件丢失,系统报错,现象如下:

SQL> startup mount
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 100664720 bytes
Database Buffers 209715200 bytes
Redo Buffers 2973696 bytes
ORA-00205: error in identifying control file, check alert log for more info
3、open阶段,该阶段主要是打开数据文件、日志文件,在打开的过程中对数据文件和日志文件进行一致性检查,如果不一致,则SMON进程继续实例恢复,如果文件丢失,打开失败。
SQL> alter database open;
Database altered.

--如何数据文件丢下,打开失败
SQL> startup mount;
ORACLE instance started.
Total System Global Area 314572800 bytes
Fixed Size 1219184 bytes
Variable Size 79693200 bytes
Database Buffers 230686720 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
ORA-01110: data file 1: '/u01/app/oracle/oradata/PROD/disk1/system01.dbf'

4、小结

启动时分成三个步骤,1、nomount阶段,该阶段是实例启动,根据参数文件进行系统分配内存,启动后台进程。mount阶段,根据控制文件来进行数据文件和日志文件的名称和位置检查,把实例和数据库连接起来。open阶段,就是数据库打开阶段,打开是就需要检查文件是否正常,有没有发生文件丢失或者不一致的情况,丢失则报错,不一致则进行实例恢复。

热心网友 时间:2022-04-07 19:48

检查数据库是否启动,linux下可以用ipcs查看,windows下可以查看服务、也可以进到数据库里面看数据库当前状态 select status from v$instance;如果status = open 就说明oracle服务正常。
查看监听,执行lsnrctl status,就可以看监听所对应的实例。
是否有scott用户,可以查看dba_users这个表的用户状态。

服务启动后 使用 shutdown immediate关闭服务

热心网友 时间:2022-04-07 21:23

不管是windows还是linxu下你能用数据库的用户(比如说sys,system用户)通过命令或者工具连上数据库并且执行查询之类的操作,都是证明服务和监听正常的最可靠的办法。
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 如何查看 linux oracle 运行状态 怎么查询自已身份证是否那入黑名单? 如何查询是否进入失信黑名单?上了失信黑名单有什... 如何查看Oracle的启动状态 怎样查找自己是否被银行上了黑名单 有谁知道怎么查看oracle数据库是否已启动么? 怎么查询自己是不是黑名单 怎么查看oracle数据库是否已启动 怎样才能查到法院是否把失信被执行人拉黑名单了? 怎么查看oracle数据库是否成功启动 怎么查有没有上征信黑名单 linux怎样知道oracle已经启动 Linux下查看oracle是否启动 怎么知道有没有进入征信黑名单 linux查看oracle是否启动 怎么查自己是不是征信黑名单 怎么样查看是不是被企业加入黑名单 怎么查自己征信是否进入黑名单 怎么知道自己有没有上失信黑名单?查征信到哪查? 怎么查自己是不是黑名单 怎么查身份证被列入黑名单了? 如何查看oracle监听是否启动 linux 怎样查看数据库是否运行 linux下如何查看oracle上有多少个实例,包括启动了... 如何查看和开启oracle监听和服务 linux怎么看数据库监听是否启动 如何在linux下重启oracle数据库 如何查看oracle数据库是否启动 如何查看oracle数据库实例是否启动 小米手机电话打不出去怎么回事? 脸颊两侧都有,请问这是什么 怎样才能把脸颊两侧多余的肉减掉??让脸更瘦? 脸颊两侧长斑怎么办 脸颊两边两坨肉怎么减? 脸颊两侧长痘痘怎么回事? 脸两边痛是怎么回事 如何瘦脸颊两侧? 脸颊两侧长痘痘的原因是什么 怎样可以瘦脸颊两边的肉 脸颊两侧长痘痘什么原因?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com