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

相关文章

如何开启和关闭3GB模式

https://jingyan.baidu.com/article/4d58d5414dfc2f9dd4e9c082.html

十四、观察者模式与访问者模式详解

21.观察者模式 21.1.课程目标 1、 掌握观察者模式和访问者模式的应用场景。 2、 掌握观察者模式在具体业务场景中的应用。 3、 了解访问者模式的双分派。 4、 观察者模式和访问者模式的优、缺点。 21.2.内容定位 1、 有 Swing开发经验的人群更容易理解观察者模式。 2、 访问者模式被称为最复杂的设计模式。 21.3.观察者模式 观 察 者 模 式 ( Obser

问题-windows-VPN不正确关闭导致网页打不开

为什么会发生这类事情呢? 主要原因是关机之前vpn没有关掉导致的。 至于为什么没关掉vpn会导致网页打不开,我猜测是因为vpn建立的链接没被更改。 正确关掉vpn的时候,会把ip链接断掉,如果你不正确关掉,ip链接没有断掉,此时你vpn又是没启动的,没有域名解析,所以就打不开网站。 你可以在打不开网页的时候,把vpn打开,你会发现网络又可以登录了。 方法一 注意:方法一虽然方便,但是可能会有

Windows 可变刷新率是什么?如何开启?

在现代计算设备中,显示屏的刷新率对用户体验起着至关重要的作用。随着显示技术的不断进步,固定刷新率显示器逐渐被支持可变刷新率(Variable Refresh Rate, VRR)技术的显示器所取代。 可变刷新率定义 可变刷新率是什么?可变刷新率(VRR)是一种显示技术,它允许显示器的刷新率动态调整,以匹配显卡输出的帧率。传统的显示器通常具有固定的刷新率(如60Hz、75Hz等),这意味着显示器

开启青龙 Ninja 扫码功能失效后修改成手动填写CK功能【修正Ninja拉库地址】

国内:进入容器docker exec -it qinglong bash #获取ninjagit clone -b main https://ghproxy.com/https://github.com/wjx0428/ninja.git /ql/ninja#安装cd /ql/ninja/backend && pnpm install cp .env.example .env

Python几种建表方法运行时间的比较

建立一个表[0,1,2,3.......10n],下面几种方法都能实现,但是运行时间却截然不同哦 import time#方法一def test1(n):list=[]for i in range(n*10):list=list+[i]return list#方法二def test2(n):list=[]for i in range(n*10):list.append(i)#方法三d

适用于 Android 的 几种短信恢复应用程序

Android 设备上的短信丢失可能由于多种原因而丢失,例如意外删除、恢复出厂设置、系统崩溃或病毒攻击。是否有应用程序可以恢复 Android 上已删除的短信?幸运的是,有几款短信恢复应用程序可以扫描您的 Android 手机并从内存或 SIM 卡中检索已删除的短信。 然而,并非所有短信恢复应用程序都是可靠或有效的。有些可能无法恢复消息,有些可能会损坏您的数据,有些甚至可能包含恶意软件或间谍软件

IOS 数组去重的几种方式

本来只知道NSSet和KeyValues的。今天又新学了几种方式 还有就是和同事学的一种方式 外层循环从0开始遍历,内层从最后一个元素开始遍历 for(int i=0;i<index;i++){  for(int j=index-1;j>i;j-- ){ } }

Builder模式的实现

概念 在创建复杂对象时,将创建该对象的工作交给一个建造者,这个建造者就是一个Builder。在日常的开发中,常常看到,如下这些代码: AlertDialog的实现 AlertDialog.Builder builder = new AlertDialog.Builder(context);builder.setMessage("你好建造者");builder.setTitle