首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SQL基础-->数据库事务(TRANSACTION)

) ddl或dcl语句 (自动提交) 用户会话正常结束(自动提交) 系统异常终止 (自动) 系统崩溃 (自动) 四、事务的提交或(COMMIT、ROLLBACK) --使用COMMIT...执行DCL语句,则自动提交并结束事务 断开与数据库的连接,退出SQL Plus。...Windows下SQL Plus正常退出将执行COMMIT,点击关闭窗口直接关闭则 X-Window下SQL Plus正常退出将执行COMMIT,点击关闭窗口直接关闭则(笔者在RHEL5下测试如此...) DML语句执行失败则自动 提交或前的数据状态 改变前的数据状态是可以恢复的 执行DML 操作的用户可以通过SELECT 语句查询之前的修正 其他用户不能看到当前用户所做的改变,直到当前用户结束事务...将autocommit设成ON,在进行DML操作似乎很方便, 但在实际应用中有时可能会出现问题,,在有些应用要同时对几个表进行操作,对于这些表建立 了外键联系,如果一旦操作失败另一个表,就很麻烦了

61130

数据库事务理解

注销(退出SQL*Plus) 硬件错误 二、数据库的事务处理 数据库的事务由下列语句组成: •一组DML语句,修改的数据在他们中保持一致 •一个 DDL (Data Define Language)...•Rollback 用于数据改变,就是放弃事务的所有数据改变,整个数据回到事务最开始的地方。...: 执行一个 DDL 语句 执行一个DCL 语句 从 SQL*Plus正常退出 当从SQL*PLUS强行退出或系统失败,事务自动 七、Sqlplus的自动提交 在sqlplus中有一个与事务相关的环境变量...SQL> 八、提交或前数据的状态 •以前的数据可恢复 •当前的用户可以看到DML操作的结果 •其他用户不能看到DML操作的结果 •被操作的数据被锁住,其他用户不能修改这些数据 九、提交后数据的状态...十、后数据的状态 语句将放弃所有的数据修改。 修改的数据被回退。 恢复数据以前的状态。 行级锁被释放。 SQL>DELETE FROM employee; 147 rows deleted.

84550
您找到你想要的搜索结果了吗?
是的
没有找到

Oracle备份和恢复(RMAN篇)

一、Oracle常见的数据丢失的情况: 1、语句故障 语句故障在执行sql语句过程中发生的逻辑故障。例如:向表插入违反约束的无效数据,或者表空间没有空间了导致无法插入数据等。...2、用户进程故障 当用户程序出错而无法访问oracle数据库,就会发生用户进程故障,原因是异常断开连接或终止进程,如果网络不通,客户端计算机以外重新启动,这些故障会导致用户进程与服务器的连接意外终止。...PMON会通过事务来处理故障,还将释放进程当前占用的资源。 3、实例故障 当oracle的数据库实例由于硬件故障或软件问题而无法继续运行时,就会发生实例故障。...当重新启动数据库,如果发现实例故障,oracle自动完成实例恢复。实例恢复将数据库恢复到与故障之前的事务一致的状态,oracle自动未提交的数据。...逻辑备份的手段很多,传统的EXP、数据泵EXPDP、数据库闪技术及第三方工具,都可以进行数据库的逻辑备份。 2、从备份策略角度上 1)完全备份:每次对数据进行完整的备份。

2.1K10

PLSQL Developer几个可能的隐患

4是DML操作,3是DDL操作,这些语句在同一个事务执行,3的DDL会隐式提交,此时会将1和2的insert和delete连带提交,当4需要rollback,只可以4的操作,1和2已经提交,无法再执行...之所以DML语句需要显示提交,从原理层讲,DML会记录redo和undo信息,undo存储的是修改数据的前镜像,当执行rollback,可以利用undo数据进行恢复,当执行commitOracle...因此,这个选项Logoff with open transaction强烈建议设置为Rollback,正常关闭软件,就让他自动(其实这正是Oracle默认的行为,退出session,自动),由执行者自行决定事务的提交...借助PLSQL Developer的AfterConnect.sql脚本,在Oracle执行了一些特定的JOB、存储过程和触发器,实现勒索机制。...2.关注管理工具的登录脚本,存在异常,立即报警, SQL*Plus: glogin.sql / login.sql TOAD : toad.ini PLSQLdeveloper: login.sql

2K10

【DB笔试面试511】如何在Oracle写操作系统文件,写日志?

题目部分 如何在Oracle写操作系统文件,写日志? 答案部分 可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。...可以执行$ORACLE_HOME/rdbms/admin/dbmslock.sql来创建DBMS_LOCK包,该包可以实现让程序暂时等待的功能。...如何在Oracle写操作系统文件,写日志? 可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。...当DML语句中有一条数据报错,如何让该DML语句继续执行? 当一个DML语句运行的时候,如果遇到了错误,那么这条语句会进行,就好像没有执行过。...对于一个大的DML语句而言,如果个别数据错误而导致整个语句的,那么会浪费很多的资源和运行时间。所以,从Oracle 10g开始Oracle支持记录DML语句的错误,而允许语句自动继续执行。

28.7K30

【DB笔试面试510】在Oracle,DBMS_OUTPUT提示缓冲区不够,怎么增加?

可以执行$ORACLE_HOME/rdbms/admin/dbmslock.sql来创建DBMS_LOCK包,该包可以实现让程序暂时等待的功能。...在CLIENT_INFO列存放程序的客户端信息;MODULE列存放主程序名,包的名称;ACTION列存放程序包的过程名。该包不仅提供了设置这些列值的过程,还提供了返回这些列值的过程。...如何在Oracle写操作系统文件,写日志? 可以利用UTL_FILE包,但是,在此之前,要注意设置好UTL_FILE_DIR初始化参数。...当DML语句中有一条数据报错,如何让该DML语句继续执行? 当一个DML语句运行的时候,如果遇到了错误,那么这条语句会进行,就好像没有执行过。...对于一个大的DML语句而言,如果个别数据错误而导致整个语句的,那么会浪费很多的资源和运行时间。所以,从Oracle 10g开始Oracle支持记录DML语句的错误,而允许语句自动继续执行。

2.1K20

Oracle (ROLLBACK)和撤销(UNDO)

=== 一、(ROLLBACK)和撤销(UNDO) 和前滚是保证Oracle数据库的数据处于一致性状态的重要手段。...在9i版本以前 Oracle使用数据库段来实现未提交数据或因系统故障导致实例崩溃进行操作 每一个表空间需要创建段,各个表空间对段实现各自的管理 在9i及后续版本 提供了一种新的数据的管理方式...,即使用Oracle自动管理的撤销(Undo)表空间 自动撤销管理表空间统一管理所有DML的操作,简化了对于工作的管理 在9i,10g段仅仅用作保留向后兼容 撤销段代替了原有版本段...在事务结束前一直被保留 UNDO段数据的作用: 用于操作 读一致性和闪查询 用于事务失败的恢复 UNDO段与事务: 一个事物的启动,Oracle将为其分配仅仅一个UNDO段,若该段用完...,值可以为auto或manual,当为manual将不使用撤销段,即不使用自动管理模式 该参数为静态参数,修改后需重启实例才能生效 undo_retention: 指定撤销段数据在undo段为非活动状态后被覆盖前保留的时间

2.3K10

Play 2.1 - Evolution插件使用指南

Downs之后的部分是down脚本,down脚本是一段撤销脚本,类似于数据库的事务,将数据库恢复到up脚本执行之前的状态。书写规则同up脚本。...考虑到一个应用可能在多台服务器上同时部署,在执行up/down脚本,会先将表相应记录的state改为applying_up/applying_down状态,如果执行出错,则更新last_problem..., 如果有脚本执行失败,则Evolution插件不会再尝试执行出错脚本,而是直接在浏览器中报错,此时的解决办法是手工在数据库执行出错脚本,然后再单击页面上的"Mark it resolved"按钮。...Ebean每次都会重新生成1.sql文件,如何手工修改1.sql,而不是用Ebean的自动生成脚本?     删除1.sql文件的头两行注释: 七、不同运行模式下的差异 1....Oracle执行,原因是Oracle没有text类型,所以在将play的数据源切换至Oracle,我们需要手工在Oracle上创建PLAY_EVOLUTIONS表,建表语句如下: create

1.2K80

Oracle 的安装与基本操作

12c针对Linux内核参数.进程会话限制提出了一些要求,其中一部分设置可以在安装过程自动检测并修复,但并不一定很完整 ,所以最好的做法是根据安装文档提前进行配置。...Oracle 12c 数据库的创建 [oracle@oracle /]$ sqlplus / as sysdba # 登录数据库 SQL*Plus: Release 12.2.0.1.0...发出该命令后,当前正在被Oracle处理的SaL语句立即中断,系统任何没有提交的事务全部。如果系统存在-个很长的未提交的事务,那么采用这种方式关闭数据库也需要一段时间 (该事务时间)。...系统不会等待连接到数据库的所有用户退出系统,而会强行当前所有的活动事务,然后断开所有的连接用户。...发出该命令后,所有正在运行的SQL语句将立即中止,所有未提交的事务将不回Oracle 也不等待目前连接到数据库的用户退出系统,下-次启动数据库需要实例恢复,因此,下一-次启动可能比平时需要更多的时间

1K20

Oracle 常用目录结构(10g)

服务有关的文件 /dbs --存放数据库服务器端的参数文件Spfile,spfileorcl.ora,init.ora,密码文件orapworcl等 /demo --存放数据库实例模式的脚本...human_resources的相关脚本 /install --用于存储ORACLE安装后的端口号,iSQL*Plus以及Enterprise Manager Database Control启动并登录的方式等...创建新的数据库,DBCA将创建数据库的脚本放置在这个目录 /exp --建议存储使用Export使用程序或Oracle Data Pump创建的数据库导出文件的目录 /pfile --初始化参数文件...它包含系统每个数据库的子目录。 该目录可用于存储与恢复有关的文件,控制文件、联机重做日志副本、归档日志、闪日志以及Oracle数据库恢复管理器(RMAN)备份等。...更多参考 Oracle 数据库实例启动关闭过程 Oracle 10g SGA 的自动化管理 使用OEM,SQL*Plus,iSQL*Plus 管理Oracle实例 Oracle实例和Oracle数据库

1.2K20

Oracle实例和Oracle数据库(Oracle体系结构)

下面简要说明一下SQL实例、数据库,更多的是讲 述Oracle下的实例及数据库。 一、SQL server的实例与数据库 1.SQL的实例指的是一个SQL server服务器上仅有一个缺省实例。...PMON将回未提交的工作,释放锁,释放分配给失败进程的SGA资源。...清除失败的进程 事务 释放锁 释放其他资源 SMON(系统监控进程) 检查数据库的一致性,当启动失败完成灾难恢复等 实列恢复,前滚所有重做日志的文件,打开数据库为了用户能访问,未提交的事务...,释放临时表空间 清除临时空间,聚结空闲空间,从不可用的文件恢复事务的活动,OPS失败节点的实例恢复 清除OBJ$表 缩减段 使段脱机 LGWr(日志写进程) 将重做日志缓冲区的更改写入在线重做日志文件...,内存,控制文件,进程数等,在数据库启动的时候加载(Nomount加载) 6.其他文件 密码文件:用于Oracle 的具有sysdba权限用户的认证.

2.7K20

OracleDBA精选面试题

Audit trace 存放在哪个oracle目录结构? 28. 解释materialized views的作用 29. 当用户进程出错,哪个后台进程负责清理它 30....创建数据库自动建立的tablespace名称? 38. 创建用户,需要赋予新用户什么权限才能使它联上数据库。 39. 如何在tablespace里增加数据文件? 40. 如何变动数据文件的大小?...Audit trace 存放在哪个oracle目录结构? 解答:unix $ORACLE_HOME/rdbms/audit Windows the event viewer 28....解答:A temporary tablespace 用于临时对象例如排序结构而 permanent tablespaces用来存储那些’真实’的对象(例如表,段等) 37....创建数据库自动建立的tablespace名称? 解答:SYSTEM tablespace. 38. 创建用户,需要赋予新用户什么权限才能使它联上数据库。 解答:CONNECT 39.

1.8K50

Java代码远程操作oracle数据库,执行sql文件、备份、

imp|exp 是oracle导入导出工具,由于要备份,所以我们也要安装这两个命令工具。...instantclient-tools-windows.x64-12.1.0.2.0.zip sdk:instantclient-sdk-windows.x64-12.1.0.2.0.zip 安装工具 SQL...*Plus命令行工具无需执行exe安装,所以只需将下载回来的两个文件解压到同一个目录即可,解压后文件名应该为instantclient_12_1,在运行工具之前我们需要在windows配置以下环境变量...TNS_ADMIN=E:\instantclient_12_1 NLS_LANG=AMERICAN_AMERICA.UTF8 或者:编写个bat脚本,内容如下,然后执行一下脚本就好(env.bat...java代码调用:代码找env.bat就是上述讲到的环境变量bat脚本 public class SqlplusTest {     public static void main(String[]

2K20

数据库备份和恢复

在某一点,在这一点之前的所有数据,Oracle都已经成功的写入到了磁盘上。 实例恢复是一个自动的过程,不需要人工干预 实例恢复发生在那个阶段?...oracle在打开数据库(alter database open),会检查每个文件头上的信息(SCN),并同控制文件相应的信息(SCN)比较,如果不一致就进行实例恢复。...打开数据库alter database open rolling back 将没有提交的事务进行 介质恢复 当发生以下情况,实例恢复无效,需要进行介质恢复: 数据文件丢失,损坏。...文件太新(比如,其它所有的文件都是从备份恢复过来的) 数据损坏基本都要进行介质恢复 Oracle的备份方式 Rman(物理备份)–Recovery Manager 备份和还原数据库文件、归档日志和控制文件...SQL*Plus: Release 11.2.0.1.0 Production on 星期二 3月 8 17:33:37 2016 Copyright (c) 1982, 2010, Oracle.

2K30

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券