zoukankan      html  css  js  c++  java
  • 小知识:设置sqlplus默认vi编辑器的好处

    如果是客户生产环境,不允许修改任何环境类的配置,那发现sqlplus默认不是我们熟悉的vi,可以在SQL>下临时指定,方便操作;

    SQL> define_editor=vi
    SQL> ed file_name
    

    如果是自己运维的环境,可以修改配置,建议修改glogin.sql,添加指定vi为默认编辑器:

    cd $ORACLE_HOME/sqlplus/admin/
    vi glogin.sql 加入配置:
    
    define_editor=vi
    

    以一个最简单的例子说明其便利性,比如我们要修改所有ASM磁盘组的compatible.rdbms属性,肯定要反复用到如下SQL:

    --查询ASM磁盘组的相关信息:
    select NAME , TOTAL_MB, FREE_MB , COMPATIBILITY, DATABASE_COMPATIBILITY from v$asm_diskgroup;
    
    --修改ASM磁盘组的DATABASE_COMPATIBILITY属性
    ALTER DISKGROUP &dgname SET ATTRIBUTE 'compatible.rdbms' = '11.2';
    

    那么,如果我们设置了熟悉的vi为默认sqlplus的编辑器,就可以方便编辑:

    --ed 文件名,就相当于是vi操作这个文件
    ed asm
    ed alterdg
    
    --保存到文件,如果文件存在就覆盖
    save asm rep
    save alterdg rep
    
    --获取到某个文件的内容
    get asm
    get alterdg
    

    比如当我们ed编辑好后sql内容后,就可以这样反复调用:

    SQL> 
    SQL> get alterdg
      1* ALTER DISKGROUP &dgname SET ATTRIBUTE 'compatible.rdbms' = '11.2'
    SQL> get asm
      1  set lines 180
      2  col name for a30
      3  col COMPATIBILITY for a30
      4  col DATABASE_COMPATIBILITY for a30
      5* select NAME , TOTAL_MB, FREE_MB , COMPATIBILITY, DATABASE_COMPATIBILITY from v$asm_diskgroup
    SQL> @asm
    
    NAME                             TOTAL_MB    FREE_MB COMPATIBILITY                  DATABASE_COMPATIBILITY
    ------------------------------ ---------- ---------- ------------------------------ ------------------------------
    CRS                                  3060       2088 19.0.0.0.0                     10.1.0.0.0
    DATA                                24568       7104 19.0.0.0.0                     10.1.0.0.0
    FRA                                 12284      12152 19.0.0.0.0                     10.1.0.0.0
    
    SQL> @alterdg
    Enter value for dgname: <输入要修改的磁盘组名称>
    
    SQL> @alterdg
    Enter value for dgname: <输入要修改的磁盘组名称>
    
    SQL> @alterdg
    Enter value for dgname: <输入要修改的磁盘组名称>
    
    SQL> @asm
    
    NAME                             TOTAL_MB    FREE_MB COMPATIBILITY                  DATABASE_COMPATIBILITY
    ------------------------------ ---------- ---------- ------------------------------ ------------------------------
    CRS                                  3060       2088 19.0.0.0.0                     11.2.0.0.0
    DATA                                24568       7104 19.0.0.0.0                     11.2.0.0.0
    FRA                                 12284      12152 19.0.0.0.0                     11.2.0.0.0
    

    可以看到,这样就可以方便反复调用@asm验证修改结果,调用@alterdg修改要修改的磁盘组名称,避免重复输入的同时,还有效减少了误操作,大幅提升DBA在sqlplus下的工作效率。如果你日常经常使用sqlplus进行SQL调优等工作,将会在反复查看执行计划和分析ASH等数据中更深刻的感受到这个设置带来的便利。

  • 相关阅读:
    dfs
    spring框架(3)— spring集合类的注入
    android入门 — Service
    android入门 — 多线程(一)
    android入门 — Activity启动模式
    android入门 — Activity生命周期
    android入门 — ProgressDialog/DatePickerDialog/TimePickerDialog
    Numpy入门
    Numpy入门
    Numpy入门
  • 原文地址:https://www.cnblogs.com/jyzhao/p/11836633.html
Copyright © 2011-2022 走看看