oracle 12 sqlplus 使用,oracle 12.2 sqlplus history

12.1开始使用sqlplus显示用户上次登录时间,12.2提供了一个记录历史sql的功能,类似于操作系统的history,根目录下的.history文件,不过功能比操作系统的history要强大,可以指定删除/运行/编辑历史记录里面的某一条SQL,比操作系统的上翻历史命令都方便。

history默认关闭,下面是打开关闭history功能,设置缓存多少条记录:

set hist[ory] on|off|n

set hist on

set hist 1000

set hist off

history命令如下:

HIST[ORY] [n RUN | EDIT | DEL[ETE]] | [CLEAR | LIST]

hist n run/edit/del 指定运行/编辑/删除第N条记录

hist clear/list 清除/列出历史记录

编辑需要设置编辑器define _editor = vi,且编辑后的记录显示在最后一条

hist默认就是hist list。

下面是简单的测试

[code][oracle@orasql2 ~]$ sqlplus system/oracle

SQL*Plus: Release 12.2.0.1.0 Production on Thu Nov 24 09:34:12 2016

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Last Successful login time: Mon Nov 21 2016 16:56:14 +08:00

Connected to:

Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> set history on

SQL> show history

history is ON and set to "100"

SQL> set history 10

SQL> history

SP2-1651: History list is empty.

SQL> select name from v$datafile;

NAME

--------------------------------------------------------------------------------

/u02/app/oracle/oradata/orasql2/system01.dbf

/u02/app/oracle/oradata/orasql2/sysaux01.dbf

/u02/app/oracle/oradata/orasql2/undotbs01.dbf

/u02/app/oracle/oradata/orasql2/pdbseed/system01.dbf

/u02/app/oracle/oradata/orasql2/pdbseed/sysaux01.dbf

/u02/app/oracle/oradata/orasql2/users01.dbf

/u02/app/oracle/oradata/orasql2/pdbseed/undotbs01.dbf

/u02/app/oracle/oradata/orasql2/PDB1/system01.dbf

/u02/app/oracle/oradata/orasql2/PDB1/sysaux01.dbf

/u02/app/oracle/oradata/orasql2/PDB1/undotbs01.dbf

/u02/app/oracle/oradata/orasql2/PDB1/users01.dbf

...

SQL> history

1 select name from v$datafile;

SQL> hist

1 select name from v$datafile;

SQL> hist list

1 select name from v$datafile;

SQL> prompt Active session with sql text

Active session with sql text

SQL> column USERNAME format a14

SQL> set linesize 200

SQL> column EVENT format a30

SQL> select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200)

2 from V$SESSION ses

3 ,V$SQL stx

4 ,V$PROCESS pro

5 where ses.paddr = pro.addr

6 and ses.status = 'ACTIVE'

7 and stx.hash_value = ses.sql_hash_value ;

prompt Active session with wait

select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

SID SQL_HASH_VALUE USERNAME OS PID

---------- -------------- -------------- ------------------------

SUBSTR(STX.SQL_TEXT,1,200)

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

26 1497718616 SYSTEM 14593

select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200) from V$SESSION ses ,V$SQL stx ,V$PROCESS pro where ses.paddr = pro.addr and

SQL> Active session with wait

SQL>

EVENT WAIT_TIME USERNAME SID SERIAL# SQL_ID

------------------------------ ---------- -------------- ---------- ---------- -------------

OFS idle 0 SYS 6 2524

SQL*Net message to client -1 SYSTEM 26 23551 5rq1rg0tcjsyu

SQL>

SQL>

SQL>

SQL> hist

1 select name from v$datafile;

2 prompt Active session with sql text

3 column USERNAME format a14

4 set linesize 200

5 column EVENT format a30

6 select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200)

from V$SESSION ses

,V$SQL stx

,V$PROCESS pro

where ses.paddr = pro.addr

and ses.status = 'ACTIVE'

and stx.hash_value = ses.sql_hash_value ;

7 prompt Active session with wait

8 select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

SQL> hist 8 run

EVENT WAIT_TIME USERNAME SID SERIAL# SQL_ID

------------------------------ ---------- -------------- ---------- ---------- -------------

OFS idle 0 SYS 6 2524

SQL*Net message to client -1 SYSTEM 26 23551 5rq1rg0tcjsyu

SQL>

SQL> hist 1 edit

select name,bytes/1024/1024 from v$datafile;

~

~

~

~

"history.buf" 1L, 45C written

SQL> hist

1 select name from v$datafile;

2 prompt Active session with sql text

3 column USERNAME format a14

4 set linesize 200

5 column EVENT format a30

6 select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200)

from V$SESSION ses

,V$SQL stx

,V$PROCESS pro

where ses.paddr = pro.addr

and ses.status = 'ACTIVE'

and stx.hash_value = ses.sql_hash_value ;

7 prompt Active session with wait

8 select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

9 select name,bytes/1024/1024 from v$datafile;

SQL> col name for a100

SQL> hist 9 run

NAME BYTES/1024/1024

---------------------------------------------------------------------------------------------------- ---------------

/u02/app/oracle/oradata/orasql2/system01.dbf 930

/u02/app/oracle/oradata/orasql2/sysaux01.dbf 830

/u02/app/oracle/oradata/orasql2/undotbs01.dbf 560

/u02/app/oracle/oradata/orasql2/pdbseed/system01.dbf 270

/u02/app/oracle/oradata/orasql2/pdbseed/sysaux01.dbf 560

/u02/app/oracle/oradata/orasql2/users01.dbf 5

/u02/app/oracle/oradata/orasql2/pdbseed/undotbs01.dbf 175

/u02/app/oracle/oradata/orasql2/PDB1/system01.dbf 280

/u02/app/oracle/oradata/orasql2/PDB1/sysaux01.dbf 610

/u02/app/oracle/oradata/orasql2/PDB1/undotbs01.dbf 175

/u02/app/oracle/oradata/orasql2/PDB1/users01.dbf 5

...

SQL> hist

1 column EVENT format a30

2 select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200)

from V$SESSION ses

,V$SQL stx

,V$PROCESS pro

where ses.paddr = pro.addr

and ses.status = 'ACTIVE'

and stx.hash_value = ses.sql_hash_value ;

3 prompt Active session with wait

4 select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

5 select name,bytes/1024/1024 from v$datafile;

6 col name for a100

7 set pagesize 10000

8 /

9 col name for a120

10 /

SQL> hist 8 del

SQL> hist

1 column EVENT format a30

2 select /*+rule */ distinct ses.SID, ses.sql_hash_value, ses.USERNAME, pro.SPID "OS PID", substr(stx.sql_text,1,200)

from V$SESSION ses

,V$SQL stx

,V$PROCESS pro

where ses.paddr = pro.addr

and ses.status = 'ACTIVE'

and stx.hash_value = ses.sql_hash_value ;

3 prompt Active session with wait

4 select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

5 select name,bytes/1024/1024 from v$datafile;

6 col name for a100

7 set pagesize 10000

8 col name for a120

9 /

SQL> hist 2 del

SQL> hist list

1 column EVENT format a30

2 prompt Active session with wait

3 select /*+rule */ sw.event,sw.wait_time,s.username,s.sid,s.serial#,s.SQL_id from v$session s, v$session_wait sw where s.sid=sw.sid and s.USERNAME is not null and s.status = 'ACTIVE';

4 select name,bytes/1024/1024 from v$datafile;

5 col name for a100

6 set pagesize 10000

7 col name for a120

8 /

SQL> hist clear

SQL> hist

SP2-1651: History list is empty.

SQL>

SQL> set hist off

SQL>[/code]

另外还增加了SET LOBPREFETCH、SET STATEMENTCACHE,第一个是预读取LOB字段多少字节,第二个是缓存语句到shared pool,不需要重新解析

详细官方文档:

https://docs.oracle.com/database/122/SQPUG/HISTORY.htm#SQPUG-GUID-CCF9B047-3122-4644-BA06-5FA4B5812E9F

「喜欢文章,快来给作者赞赏墨值吧」 赞赏

【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

请登录后发表评论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/506694.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

execl执行linux命令,使用execl运行Linux命令

我需要通过编写C语言程序列出当前目录中具有644权限的所有文件.我不能使用system()并且必须使用execl()才能使用系统调用.这是我在代码中使用的一行:execl("/usr/bin/find", "find . -maxdepth 1 -perm 644", (char *)NULL);问题是代码正在搜索…

Linux里面lvs的基础命令,Linux中使用ipvsadm配置LVS集群的基本方法

LVS集群有DR、TUN、NAT三种配置模式,可以对www服务、FTP服务、MAIL服务等做负载均衡,下面通过搭建www服务的负载均衡实例,讲述基于DR模式的LVS集群配置。一、 Director Server的配置  在Director Server上配置LVS负载均衡集群,有…

linux 内核 睡眠,linux内核对S3C2410睡眠模式的支持有哪些?

一、S3C2410支持4种供电模式(1)NORMAL MODE耗电最大、可以通过关闭具体控制器的时钟来节电(2)SLOW MODE在此模式下可以没有内部PLL,耗电情况依赖于外部时钟的频率(3)IDLE MODEFCLK被关断,主要由于CPU core节电。可以任何通过外部中断唤醒(4)Power_OFF MO…

linux c timeval 转化为标准时间,Linux_学习笔记_-_时钟_定时器

Linux 时钟_定时器1 时钟时钟这个东西,实际上是作为一种工具而存在,内核通过时钟来感知、管理时间。这里的时钟,更主要的还是软件上的概念,系统通过维护软件时钟来追踪时间1.1 几个概念1、时钟中断:由硬件产生的电信号…

linux 修改块大小,linux 查看及修改os系统块的大小

查看os系统块的大小[root]# /sbin/tune2fs -l /dev/sda1查看os系统页的大小[oracleskate-test ~]$ getconf PAGESIZE4096修改块的大小:创建文件系统时,可以指定块的大小。如果将来在你的文件系统中是一些比较大的文件的话,使用较大的块大小将得到较好的性…

linux的vim多选择,真的有(很多)linux大牛用vim写项目吗?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼作为一名非程序员半吊子运维,很想问一个问题:真的有(很多)linux大牛用vim写项目吗?最近折腾自己的路由器,要在LEDE的luci框架里加个显示interface信息的模块。按照惯例ggl一下最后在s…

linux spi驱动分析 三,Linux下SPI驱动分析

/* 神奇的分割线 */626/*-------------------------------------------------------------------------*/627628/* Core methods for SPI master protocol drivers. Some of the629 * other core methods are currently defined as inline functions.630 */631632/**633 * spi_…

c语言程序综合实习学生成绩,C语言程序设计综合实习报告

课题一:用指针优化学生成绩排名一、目的1.熟悉变量的指针和指向变量的的指针变量的概念和使用2.熟悉数组的指针和指向数组的的指针变量的概念和使用3. 掌握冒泡法或选择法排序的算法4. 掌握函数的定义、调用、声明,以及参数的两种…

c语言练习的软件,我想学C语言,在自己的电脑上练习,要安装什么软件呢?

希望能对你有所帮助:1。 C语言学习系统 3。2C语言是一门非常有用高级语言,是您踏上计算机学习之路的必修课,几乎所有的计算机考试dl。pconline。com。cn/html/1/9/dlid6199&dltypeid1&pn0&。html2。 C语言学习系统 3。2C语言是一门非常有用高级语言,是您…

c语言ATM机文件储存账号密码,C语言实现_ATM自动取款机系统

1、欢迎界面的实现用函数welcom实现,建立.h文件命名welcom.hvoid wel()//欢迎界面;{FILE *fp;if((fpfopen("data/welcome.txt","r"))!NULL){char ch[10000];while(!feof(fp)){fgets(ch,100,fp);printf(ch);Sleep(200);}printf("…

c语言求最多啤酒数,C语言,算法、动态规划:有一个箱子的容量为v(正整数,0=v=20000),同时有n个物品(0n=30),...

满意答案24k纯真爱l2013.11.07采纳率:42% 等级:12已帮助:9552人#include#define N 30int xiangzi(int n ,int V ,int a[]) //楼主后面的Vo数组必须放进递归函数里面或定义成全局数组 另外h[n]什么情况??{int minv,t,mV;if(n0){if(a[n]&l…

c语言休眠函数useconds类型,带你了解C语言中的Sleep函数(附代码)

Sleep函数:功 能: 执行挂起一段时间用 法:unsigned sleep(unsigned seconds);注意:在VC中使用带上头文件#include ,在Linux下,gcc编译器中,使用的头文件因gcc版本的不同而不同#include 在VC中,Sleep中的第一个英文字符为大写的"S" ,在linux下不要大写&…

2017电大c语言考试时间,2017年电大 《c语言程序设计》a课程考核说明.doc

2017年电大 《c语言程序设计》a课程考核说明中央广播电视大学计算机科学与技术专业C语言程序设计A课程考核说明(2008)一、考核说明《C语言程序设计》课程是全国电大系统计算机科学与技术专业(本科)的一门基础必修课程。本课程是学习数据结构、操作系统、计算机网络、数据库、软…

c语言可循环计算器代码,可编程简易计算器(代码)

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼while(sign[0]!a){//if(input[index]){for(int i0;i<4;i){if(firsttime 1)i3;//提取第i1个数字dexto1;char num_str[INPUT_LEN]{};while(input[index]){if(isdigit(input[index]))num_str[dexto]input[index];elseif((input[ind…

android 动态文本选取,android-用动态文本更新UI

我会使用处理程序.private static final int WHAT 1;private static final int TIME_TO_WAIT 5000;Handler regularHandler new Handler(new Handler.Callback() {public boolean handleMessage(Message msg) {// Do stuffregularHandler.sendEmptyMessageDelayed(msg.what,…

京东广告联盟android,京东APP联盟SDKAndroid版接口说明文档1.0.PDF

京东APP联盟SDKAndroid版接口说明文档1.0京东APP 联盟SDK Android 版接口说明文档1.01. 嵌入SDK1.1 添加SDKAndroid Studio 环境&#xff1a;菜单New->New Module->Import .jar or .aar package&#xff0c;然后选中App联盟SDK 所带的jar 文件。EclipseADT 环境: 将App 联…

android 环绕布局,Android自定义View实现圆形环绕效果

之前项目中需要实现一个四周环绕中心圆形头像的效果&#xff0c;感觉还是自定义比较方便&#xff0c;于是就自己封装了一个控件去实现。先贴张图显示最终效果。首先自定义一个View继承自LinearLayout,通过动态添加childView的方式将子控件添加到View中。思路是先添加中间圆形头…

android tasker,Tasker:Android系统增强神器

权限信息 net.dinglisch.android.tasker.PERMISSION_RUN_TASKS net.dinglisch.android.tasker.PERMISSION_AUTO_IMPORT com.joaomgcd.taskersettings.SET_SETTING net.dinglisch.android.zoom.permission.MAKE_CHANGES android.permission.PACKAGE_USAGE_STATS cyanogenmod.per…

android 高德地图 sh1,百度、高德地图获取发布版(Release)SHA1

一、简介&#xff1a;在百度、高德地图开发中&#xff0c;申请key的时候&#xff0c;要两个版本的sha1值。一个是开发版(debug)&#xff0c;一个是发布版(release)。debug版本的sha1比较好获取&#xff0c;网上资料一堆&#xff0c;这里引用一下&#xff0c;就不再重复写了。最…

signature=adf15bd90b83b628c647a1aa64741773,Thoracic Oncology

摘要&#xff1a;Thymic malignancies are rare epithelial tumors that may be aggressive and difficult totreat. Thymomas are usually localized to the anterior mediastinum and are frequentlyeligible for upfront surgical resection. However, nearly 30% of patien…