自动启动数据库

自动重启,需要grid的支持

自动管理资源

[[email protected]+ASM ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    edsir1p8    
ora.asm        ora.asm.type   ONLINE    ONLINE    edsir1p8    
ora.cssd       ora.cssd.type  ONLINE    ONLINE    edsir1p8    
ora.diskmon    ora....on.type ONLINE    ONLINE    edsir1p8

通常2种方式自动启动数据库

1.

[[email protected]+ASM ~]$ tail -3 /etc/oratab
PROD4:/u01/app/oracle/product/11.2.0/db_1:N
EMREP:/u01/app/oracle/product/11.2.0/db_1:N
+ASM:/u01/app/oracle/product/11.2.0/grid:N
---这种方式通常不好用

2.crs_stat

这是个资源表,让数据库和监听注册到这个表里

[[email protected]+ASM ~]$ srvctl add  database -d PROD4  -o /u01/app/oracle/product/11.2.0/db_1
[[email protected]+ASM ~]$ srvctl config database   --查看哪些数据库已经注册

关监听,注册

[[email protected]+ASM ~]$ srvctl add  listener -l  listener -p 1521 -o /u01/app/or
acle/product/11.2.0/db_1PRCN-2061 : Failed to add listener ora.LISTENER.lsnr
PRCN-2065 : Port(s) 1521 are not available on the nodes given
PRCN-2035 : Port 1521 is not available on node(s) or virtual host(s): edsir1p8.us.
oracle.com

--关监听

[[email protected]+ASM ~]$ lsnrctl stop
[[email protected]+ASM ~]$ srvctl add  listener -l  listener -p 1521 -o /u01/app/oracle/pr
oduct/11.2.0/db_1
[[email protected]+ASM ~]$ srvctl config listener   --查看监听是否注册成功
[[email protected]+ASM ~]$ crs_stat -t
Name           Type           Target    State     Host       
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    ONLINE    edsir1p8   
ora....ER.lsnr ora....er.type OFFLINE   OFFLINE              
ora.asm        ora.asm.type   ONLINE    ONLINE    edsir1p8   
ora.cssd       ora.cssd.type  ONLINE    ONLINE    edsir1p8   
ora.diskmon    ora....on.type ONLINE    ONLINE    edsir1p8   
ora.prod4.db   ora....se.type OFFLINE   OFFLINE

=============================================================

--重启服务器,看效果

[email protected] ~]$ ps -ef | grep smon
oracle    5387  5106  0 09:25 pts/2    00:00:00 grep smon     --没有实例启动
[[email protected] ~]$ lsnrctl status
-bash: lsnrctl: command not found       --没有任何的Oracle环境变量
[[email protected] ~]$ . oraenv
ORACLE_SID = [oracle] ? +ASM
The Oracle base for ORACLE_HOME=/u01/app/oracle/product/11.2.0/grid is /u01/app/oracle
[[email protected]+ASM ~]$ lsnrctl status
LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 22-JUN-2017 09:25:58
Copyright (c) 1991, 2009, Oracle.  All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused     --监听没有启动
[[email protected]+ASM ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 22 09:28:48 2017
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> quit
Disconnected
[[email protected]+ASM ~]$ srvctl start database -d PROD4
PRCD-1027 : Failed to retrieve database PROD4
PRCR-1070 : Failed to check if resource ora.prod4.db is registered
Cannot communicate with crsd
[[email protected]+ASM ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Thu Jun 22 09:30:20 2017
Copyright (c) 1982, 2009, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> startup
ORA-01078: failure in processing system parameters
ORA-29701: unable to connect to Cluster Synchronization Service
SQL> quit
Disconnected
[[email protected]+ASM ~]$ crsctl start has
CRS-4123: Oracle High Availability Services has been started.
[[email protected]+ASM ~]$ crs_stat -t
Name           Type           Target    State     Host        
------------------------------------------------------------
ora.DATA.dg    ora....up.type ONLINE    OFFLINE               
ora....ER.lsnr ora....er.type ONLINE    ONLINE    edsir1p8    
ora.asm        ora.asm.type   ONLINE    OFFLINE               
ora.cssd       ora.cssd.type  ONLINE    OFFLINE               
ora.diskmon    ora....on.type ONLINE    ONLINE    edsir1p8    
ora.prod4.db   ora....se.type OFFLINE   OFFLINE
[[email protected]+ASM ~]$ crsctl enable has
CRS-4622: Oracle High Availability Services autostart is enabled.
--必须开机自启动,只有他开机自启动,注册到里面的资源才能开机自启动

重启服务器,看效果

===========================================================

--集群管理的方式将数据库开

[[email protected]+ASM ~]$ srvctl start database -d PROD4

--执行相反操作
srvctl remove database -d PROD4    ---移除数据库
srvctl remove listener -l listener     ---如果注册错误可以使用该命令删除
时间: 2024-08-29 20:42:48

自动启动数据库的相关文章

ORACLE单机环境,实现开机自动启动数据库

Windows环境和Unix环境都能够实现数据库的自动启动 Windows环境下: 实验方法相对简单,通过修改注册表或用oradim命令来实现: oradim -edit <SID> -startmode [auto|manual] -shutmode [nomal|immediate|abort] Unix环境下: 通过数据库自带的dbstart命令来实验. 命令: dbstart + {ORACLE_HOME的全路径} 原理: 1. 操作系统启动过程中,读取/etc/oratab文件,判断

linux oracle 设置随系统自动启动数据库实例和监听

在root账户下修改/etc/oratab 文件: # vi /etc/oratab 找到orcl=/db/app/oracle/product/11.1.0/db_1 :N这一行 改为: orcl=/db/app/oracle/product/11.1.0/db_1 :Y 也就是将最后的N改为Y,意思是将不允许自动启动改为允许自动启动. 然后,是修改ORACLE自带的启动与关闭脚本,分别是dbstart和dbshut.执行这两个脚本就可以实现ORACLE脚本的启动与关闭. 在oracle账户下

linux下数据库实例监听开机自启动设置

linux下数据库实例监听开机自启动设置 2016/5/16 zhanky 脚本介绍 在开始之前,我们先介绍一下几个会用到的脚本. oratab oratab文件是在创建数据库实例时建立的,在安装时使用root用户执行root.sh脚本后得到.(如果忘记也可以直接手动创建.) 在$ORACLE_HOME/bin目录下的$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut需要调用/etc/oratab文件,如果不存在,dbstart和dbshut将失败,

Centos6.5搭建java开发环境

一.安装jdk 1.查看Linux自带的JDK是否已安装 [plain] view plain copy print? java –version 如果出现openjdk,最好还是先卸载掉openjdk,在安装sun公司的jdk. 2.查看jdk信息 [plain] view plain copy print? rpm -qa|grep java 3.卸载OpenJDK,执行以下操作: [plain] view plain copy print? rpm -e --nodeps tzdata-j

Linux下oracle开机自启动设置

今天在虚拟机安装完oracle数据库重启系统后想进入数据库却发现如下错误: 出现ORA-01034和ORA-27101的原因是多方面的:主要是oracle当前的服务不可用,shared memory realm does not exist,是因为oracle没有启动或没有正常启动.那么如何在Linux启动时自动启动Oracle监听和实例呢? 首先尝试使用oracle启动数据库的命令dbstart,可是发现又报错如下错误: ORACLE_HOME_LISTNER is not SET, unab

DB2常用命令小结

PS:执行命令前需要进入DB2的账户下:su db2inst1 修改密码:更改相应的操作系统密码即可,windows上可以更改db2admin的密码,linux上更改db2inst1的密码即可,db2 的数据库密码是和操作系统绑定的,就像大家说的只需要修改操作系统上用户的密码就可以了.你想改那个用户的密码你就在操作系统上改那个用户的密码. DB2 linux 下安装配置教程 ===============================经验最宝贵=========================

EBS R12应用启用过程

在虚拟机syfdemo的applmgr角色下执行appstart.sh脚本时依次执行以下过程: ------------------------------------------------脚本                       用途adopmnctl.sh         start, stop and check the status of OPMN                                OPMN(Oracle Process Manger Oracle)

db2常用命令大全

最近一直在做数据库优化这一块业务,发现自己好多db2命令都忘了,甚至没用过,有时会成为工作中效率的瓶颈,工欲善其事,必先利其器,所以做了以下总结: 1. 打开命令行窗口 #db2cmd 2. 打开控制中心 # db2cmd db2cc 3. 打开命令编辑器 db2cmd db2ce =====操作数据库命令===== 4. 启动数据库实例 #db2start 5. 停止数据库实例 #db2stop 如果你不能停止数据库由于激活的连接,在运行db2stop前执行db2 force applicat

LAMP环境搭建+iTop安装(实测使用centos7更方便)

centos 6.7 basic server搭建apache+mariadb+php Apache 1.ifup ifcfg eth0,配置开机自动启动: 2.setup 设置dns 3.yum install vsftpd 4.修改vsftpd配置文件,两个配置文件中的root用户注释掉: 5.关闭selinux: # vi /etc/selinux/config 6.修改ftpd服务开机启动启动: 7.上传补丁: 8.打补丁: # rpm -ivh 1-ppl-0.10.2-11.el6.