Oracle开启和关闭的几种模式

2024-06-22 17:48

本文主要是介绍Oracle开启和关闭的几种模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1 启动数据库

1.1 nomount模式

1.2 mount模式

1.3 open模式

1.4 force模式

2 关闭数据库

2.1 normal方式

2.2 transactional方式

2.3 immediate方式

2.4 abort方式


1 启动数据库

 在cmd命令窗口,直接输入"sqlplus",直接进入oracle管理界面,输入用户名和密码后,开始启动数据库,启动数据库三个步骤:启动实例、加载数据库、打开数据库

命令格式:

startup [nomount|mount|open|force][restrict][pfile=filename]
  • nomount:表示启动实例不加载数据库
  • mount:表示启动实例、加载数据库并保持数据库的关闭状态
  • open:表示启动实例、加载并打开数据库,这个是默认选项
  • force:表示终止实例并重新启动数据库
  • restrict:用于指定以受限制的会话方式启动数据库
  • pfile:用于指定启动实例时所使用的文本参数文件,filename就是文件名

附录:  在命令行中登录oracle数据库: 

    sqlplus username/password  如:普通用户登录  sqlplus scott/tigersqlplus username/password as sysdba 如:sqlplus sys/admin as sysdbasqlplus username/password@net_service_name 如: sqlplus scott/tiger@orclsqlplus username/password@//host:port/sid 

1.1 nomount模式

只会创建实例(oracle实例的各种内存结构和服务进程),并不加载数据库,也不会打开任何数据文件;

startup nomount

注意:用户要以sysdba的身份登录,才会有关闭和启动数据实例额权限

1.2 mount模式

这种模式将启动实例、加载数据库并保持数据库的关闭状态。

startup mount

1.3 open模式

这种模式将启动实例,加载并打开数据库,这就是常规的启动模式,如果用户想要对数据库进行多种操作,就必须使用open模式启动数据库实例。

startup

startup命令后面不带有任何参数,就表示以open模式启动数据库实例

1.4 force模式

这种模式将终止实例并重新启动数据库,这种启动模式具有一定的强制性。比如,在其他启动模式失效时,可以尝试使用这种启动模式

startup force

2 关闭数据库

与启动数据库实例相同,关闭数据库实例也有三个关闭步骤关闭数据库、卸载数据库、关闭实例

语法格式:

shutdown [normal|transactional|immediate|abort]
  • normal:表示以正常方式关闭数据库
  • transactional:表示在当前所有的活动事务被提交完毕之后,关闭数据库
  • immediate:表示在尽可能短的时间内立即关闭数据库
  • abort:表示以终止方式来关闭数据库

2.1 normal方式

这种方式称为正常的关闭方式,如果对关闭数据库的时间没有限制,通常会使用这种方式来关闭数据库:

shutdown normal

在执行以上代码后,oracle将会执行以下操作:

  • 阻止任何用户建立新的连接
  • 等待当前所有正在连接的用户主动断开连接
  • 当所有的用户都断开连接后,将立即关闭数据库

2.2 transactional方式

这种方式称为事务关闭方式,它的首要任务是能够保证当前所有的活动事物都可以被提交,并在尽可能短的时间内关闭数据库:

shutdown transactional

在执行以上代码后,oracle将会执行以下操作:

  • 阻止用户建立新连接和开始新事物
  • 等待所有活动事物提交后,再断开用户连接
  • 当所有的活动事物提交完毕,所有的用户都断开连接后,将关闭数据库

2.3 immediate方式

这种事立即关闭方式,这种方式能够在尽可能短的时间内关闭数据库:

shutdown immediate

在这种关闭方式下,oracle不但会立即中断当前用户的链接,而且会强行终止用户的当前活动事物,将未完成的事物回退,以立即关闭的方式关闭数据库时,oracle将会执行以下操作:

  • 阻止用户建立新连接和开始新事务
  • 将未提交的活动事务回退
  • 关闭数据库

2.4 abort方式

这种方式称为终止关闭方式,终止关闭方式具有一定的强制性和破坏性。使用这种方式会强转中断任何数据库操作,这样可能会丢失一部分数据信息,影响数据库的完整性

shutdown abort

在执行以上代码后,oracle将会执行以下操作:

  • 阻止用户建立新连接和开始新事物
  • 取消未提交的活动事物,而不是回退
  • 立即终止正在执行的任何SQL语句
  • 立即关闭数据库

 

这篇关于Oracle开启和关闭的几种模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1084987

相关文章

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

Java中InputStream重复使用问题的几种解决方案

《Java中InputStream重复使用问题的几种解决方案》在Java开发中,InputStream是用于读取字节流的类,在许多场景下,我们可能需要重复读取InputStream中的数据,这篇文章主... 目录前言1. 使用mark()和reset()方法(适用于支持标记的流)2. 将流内容缓存到字节数组

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

在Java中实现线程之间的数据共享的几种方式总结

《在Java中实现线程之间的数据共享的几种方式总结》在Java中实现线程间数据共享是并发编程的核心需求,但需要谨慎处理同步问题以避免竞态条件,本文通过代码示例给大家介绍了几种主要实现方式及其最佳实践,... 目录1. 共享变量与同步机制2. 轻量级通信机制3. 线程安全容器4. 线程局部变量(ThreadL

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Python实现终端清屏的几种方式详解

《Python实现终端清屏的几种方式详解》在使用Python进行终端交互式编程时,我们经常需要清空当前终端屏幕的内容,本文为大家整理了几种常见的实现方法,有需要的小伙伴可以参考下... 目录方法一:使用 `os` 模块调用系统命令方法二:使用 `subprocess` 模块执行命令方法三:打印多个换行符模拟