OCP学习笔记之数据库及实例的启动
来源:互联网 发布:java包的命名规范 编辑:程序博客网 时间:2024/05/22 01:45
一、数据库与实例的概念
ORACLE数据库服务器至少包含一个数据库和一个实例,因为实例和数据库密切相连所以有时候,数据库这个术语有时既指实例有时也指数据库。
实例由内存结构(SGA)和ORACLE后台进程组成,而数据库时创建在磁盘上的数据文件,每个运行的ORACLE数据库必须有一个oracle实例相连,数据库可以有单实例配置(数据库和实例一一对应),也可以存在一对多的关系(ORACLE RAC)
但是无论是单实例还是RAC ,一个实例只能与一个数据相连
二、oracle实例
当我们安装完ORACLE之后,数据库从关闭到打开的状态会经历一下过程
- shutdown:关闭
- nomount:启动实例
但是没有与某个数据库相关联,用sysdba权限可以进行数据库创建,某些备份操作。
在这个阶段数据库会搜索服务器的参数文件,查看参数文件位置
SQL> show parameter spfile;NAME TYPE VALUE------------------------------------ ----------- ------------------------------spfile string /u01/app/oracle/product/11.2.0 /db_1/dbs/spfileocl.ora
- mount:启动实例,与数据库关联
读取控制文件来与数据关联,此时数据库对用户来说是关闭的,不能访问数据,但是用sysdba这个权限可以进行相关的操作设置比如归档、恢复。
这个过程数据库会加载数据库控制文件,查看控制文件位置
SQL> select * from v$controlfile;STATUS-------NAME--------------------------------------------------------------------------------IS_ BLOCK_SIZE FILE_SIZE_BLKS--- ---------- --------------/u01/app/oracle/oradata/ocl/control01.ctlNO 16384 594/u01/app/oracle/fast_recovery_area/ocl/control02.ctlNO 16384 594STATUS-------NAME--------------------------------------------------------------------------------IS_ BLOCK_SIZE FILE_SIZE_BLKS--- ---------- --------------
- open:完全打开
此时授权的用户可以访问数据库包含的数据文件。
这时候就是读取数据文件和日志文件。查看数据文件和日志文件。
SQL> select FILE_NAME from dba_data_files;FILE_NAME--------------------------------------------------------------------------------/u01/app/oracle/oradata/ocl/users01.dbf/u01/app/oracle/oradata/ocl/undotbs01.dbf/u01/app/oracle/oradata/ocl/sysaux01.dbf/u01/app/oracle/oradata/ocl/system01.dbf/u01/app/oracle/oradata/ocl/example01.dbfSQL> select * from v$logfile; GROUP# STATUS TYPE---------- ------- -------MEMBER--------------------------------------------------------------------------------IS_--- 3 ONLINE/u01/app/oracle/oradata/ocl/redo03.logNO 2 ONLINE/u01/app/oracle/oradata/ocl/redo02.logNO
三、启动时常见错误
- ORA-00845
这个错误是由共享内存不主导致的,只要更改共享内存/dev/shm大小,重新挂载就可以了
[oracle@localhost ~]$ vim /etc/fstab LABEL=/ / ext3 defaults 1 1LABEL=/boot /boot ext3 defaults 1 2tmpfs /dev/shm tmpfs defaults,size=1G 0 0devpts /dev/pts devpts gid=5,mode=620 0 0sysfs /sys sysfs defaults 0 0proc /proc proc defaults 0 0LABEL=SWAP-sda3 swap swap defaults 0 0/dev/cdrom /mnt iso9660 defaults 0 0~ [root@localhost~]# mount -o remount,size=16G /dev/shm
- ORA-01078和LRM-00109
[oracle@localhost~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Sat Jul 16 01:38:13 2016 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-01078: failure in processing system parameters LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db/dbs/initocl.ora'
这个问题就是在数据库启动时缺少参数文件,无法进入mount阶段,解决方法,将/u01/app/oracle/admin/ocl/pfile下文件复制到/u01/app/oracle/product/11.2.0/db/dbs/目录下,改名
[oracle@localhost pfile]$ pwd/u01/app/oracle/admin/ocl/pfile[oracle@localhost pfile]$ ll总计 4-rw-r----- 1 oracle oinstall 2190 10-21 14:49 init.ora.9212017145844[oracle@localhost pfile]$ cp init.ora.9212017145844 /u01/app/oracle/product/11.2.0/db/dbs/initocl.ora
ORA-01102
导致这个问题有以下原因:
一、在HA系统中,已经有其他节点启动了实例,将双机共享的资源(如磁盘阵列上的裸设备)占用了;
二、说明Oracle被异常关闭时,有资源没有被释放,一般有以下几种可能,
1、Oracle的共享内存段或信号量没有被释放;
2、Oracle的后台进程(如SMON、PMON、DBWn等)没有被关闭;
3、用于锁内存的文件lk和sgadef.dbf文件没有被删除。具体解决法贴个链接,这篇博客对这个问题分析的挺详细的
http://blog.itpub.net/20674423/viewspace-711545
- OCP学习笔记之数据库及实例的启动
- Oracle OCP笔记(04)实例的启动关闭
- oracle学习之asm实例的数据库启动方式
- Oracle数据库实例的启动及关闭
- Oracle数据库实例的启动及关闭
- Oracle学习笔记之Oracle数据库的启动与关闭
- oracle实例管理及数据库的启动/关闭
- Oracle 数据库实例的启动阶段及关闭模式
- Oracle10G学习笔记之二Sql*plus基础、实例的启动与关闭
- oracle学习笔记 Oracle数据库及相关软件的启动和关闭 第一部分
- oracle学习笔记 Oracle数据库及相关软件的启动和关闭 第二部分
- oracle学习笔记之controlfile丢失的情况使数据库启动至open状态
- Android学习笔记之-自定义View实例及View的绘制过程(一)
- hadoop学习笔记之-pig安装及操作实例
- POX学习笔记之POX的启动
- 学习笔记之Centos6的启动流程。
- OCP学习笔记
- ocp学习笔记
- 第四天-运算符
- 安装 cobra
- java线程之间的通信(等待/通知机制)
- 第十章:对象和类
- JUnit测试工具
- OCP学习笔记之数据库及实例的启动
- Kafka 安装部署&java demo
- 如何理解权限系统?如何结合Shiro来理解权限系统?
- Android滑动隐藏顶部和底部显示更多内容
- 研究生第一篇学术论文常犯问题总结[转]
- 关于树状数组的一些讨论
- 深度学习笔记--引言部分
- 这是我的第一个原创操作
- Head First设计模式读书笔记之策略模式