版本信息
本文档使用的Oracle版本为11.2.0.1.0 - 64bit
**本文档使用的Linux系统版本为CentOS Linux release 7.6.1810 (Core) **
首先要连接Linux系统,
使用oracle安装用户登录或者使用root用户登录以后切换到oracle安装用户,
su oracle
运行oracle的环境变量, 以便输入相关命令。
cd /home/oracle
source .bash_profile
进入oracle控制台。输入命令,以DBA身份连接到oracle:
sqlplus / as sysdba

注意:只有具备sysdba和sysoper系统特权的用户才能启动和关闭数据库。
启动或停止Oracle监听程序
启动监听
lsnrctl start
显示红框内信息,即为启动监听成功

查看监听状态
lsnrctl status

停止监听
lsnrctl stop

启动方法:
1、startup nomount(启动实例不加载数据库)
这种启动方法只会创建实例,并不加载数据库,Oracle仅为实例创建各种内存结构和服务进程,不会打开任何数据文件。用NoMount方法启动数据库,只能访问那些与SGA区相关的数据字典视图,包括VPARAMETER、VPARAMETER、VPARAMETER、VSGA、VPROCESS和VPROCESS 和 VPROCESS和VSESSION等,这些视图中的信息都是从SGA区中获取的,与数据库无关。非安装启动,这种方法启动下可执行:重建控制文件、重建数据库、读取init.ora文件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora文件。
用途:
(1)创建新数据库;
(2)重建控制文件。

检查是否已启动(检查1521端口占用情况)

2、startup mount dbname (加载数据库但不打开数据库)
安装启动,这种方式启动下可执行:
数据库日志归档、数据库介质恢复、使数据文件联机或脱机,重新定位数据文件、重做日志文件。
例:startup mount orcl11g

检查是否已启动(检查1521端口占用情况)

3、startup open dbname
先执行“nomount”,然后执行“mount”,再打开包括Redo log文件在内的所有数据库文件,
这种方式下可访问数据库中的数据。
例:startup open orcl11g

检查是否已启动(检查1521端口占用情况)

4、startup
等于以下三个命令
startup nomount
alter database mount
alter database open
这是常规的打开数据库的方式

检查是否已启动(检查1521端口占用情况)

5、startup restrict
约束方式启动
这种方式能够启动数据库,但只允许具有一定特权的用户访问
非特权用户访问时,会出现以下提示:
ERROR:
ORA-01035: ORACLE 只允许具有 RESTRICTED SESSION 权限的用户使用

检查是否已启动(检查1521端口占用情况)

6、startup force
强制启动方式
是shutdown abort + startup的组合,即强制关闭数据库+ 正常启动数据库
当不能关闭数据库时,可以用startup force;
先关闭数据库,再执行正常启动数据库命令

检查是否已启动(检查1521端口占用情况)

停止方法:
1、shutdown normal
这是正常方式关闭数据库,所需时间较长。当没有时间限制时,通常会选择这种方式来关闭数据库

检查是否已停止(检查1521端口占用情况)
下图中第一行信息为Oracle监听信息

2、shutdown immediate
这种方式成为立即关闭数据库,尽可能在最近的时间里关闭数据库
在这种关闭方式下,Oracle不但会立即中断当前用户的连接,而且会强行终止用户的当前活动事物,将未完成的事物回退,以立即关闭方式关闭数据库。

检查是否已停止(检查1521端口占用情况)
下图中第一行信息为Oracle监听信息

3、shutdown transactional
这种方式称作为事物关闭方式,首要任务是要能保证当前所有的活动事物都可以被提交并在最短的时间内关闭数据库.

检查是否已停止(检查1521端口占用情况)
下图中第一行信息为Oracle监听信息

4、shutdown abort
直接关闭数据库,正在访问数据库的会话会被突然终止,
使用这种方式会强制中断任何数据库操作,这样可能会丢失一部分数据信息,影响到数据库的完整性。不建议使用

检查是否已停止(检查1521端口占用情况)
下图中第一行信息为Oracle监听信息

通过脚本启动和停止Oracle
启动步骤
1:查看ORACLE_HOME是否设置
echo $ORACLE_HOME

** 2:修改数据库自带启动脚本**
cd $ORACLE_HOME
cd bin/
dbstart

这里会有错误提示:ORACLE_HOME_LISTNER 没有设置
设置ORACLE_HOME_LISTNER
vi dbstart
将ORACLE_HOME_LISTNER=$1修改成 ORACLE_HOME_LISTNER=/oracle/product
注意:这里的"/oracle/product"是由第一步的指令得出的,不是固定值
修改前:

修改后:

3:编辑/etc/oratab文件
dbca建库时都会自动创建/etc/oratab文件
vi /etc/oratab

将图中的N改为Y,如下图所示

4:启动数据库
dbstart


检查是否启动成功(检查1521端口占用情况)

检查监听状态,成功启动数据库与监听
lsnrctl status

停止步骤
** 1:修改数据库自带启动脚本**
vi dbshut

注意:这里的"/oracle/product"是由第一步的指令得出的,不是固定值

2:执行脚本,停止数据库
dbshut

检查是否停止成功
lsnrctl status

根据上图所示,停止数据库成功
本文详细介绍了Oracle数据库的六种启动方法和四种关闭方式,涵盖了从非安装启动到强制启动,以及从正常关闭到立即关闭的各种场景。同时,还提供了通过脚本启动和停止Oracle数据库的具体步骤。
3208

被折叠的 条评论
为什么被折叠?



