zoukankan      html  css  js  c++  java
  • 19C新特性--通过连接字符串以及触发器修改回话参数

    根据业务需要,有些时候我们需要修改回话参数,但是应用代码无法进行修改,我们可以通过一下两种方式来进行修改
     

    一:通过连接字符串--19c可行

     
    1.通过字符串直接连接数据库
     
    在19c上测试,这种方式是可行的,但是在11g上测试未果
    [oracle@localhost ~]$ sqlplus dbmon/dbmon@"(DESCRIPTION=(CONNECT_DATA=(SESSION_SETTINGS=(optimizer_mode=first_rows_10)(statistics_level=all))(SERVER=DEDICATED)(SERVICE_NAME=ceshi))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.30)(PORT=1521)))"
    SQL*Plus: Release 19.0.0.0.0 - Production on Mon Aug 16 23:20:35 2021
    Version 19.3.0.0.0
    Copyright (c) 1982, 2019, Oracle.  All rights reserved.
    Last Successful login time: Mon Aug 16 2021 22:37:59 +08:00
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.3.0.0.0
     
     
    SQL> show parameter optimizer_mode
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    optimizer_mode                       string      FIRST_ROWS_10
    SQL> show parameter statistics_level
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    client_statistics_level              string      TYPICAL
    statistics_level                     string      ALL
     
    11g测试
    [oracle@oracle11g ~]$ sqlplus dbmon/dbmon@"(DESCRIPTION=(CONNECT_DATA=(SESSION_SETTINGS=(optimizer_mode=first_rows_10)(statistics_level=all))(SERVER=DEDICATED)(SERVICE_NAME=orcl))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.56.33)(PORT=1521)))"
    SQL*Plus: Release 11.2.0.4.0 Production on Sun Aug 15 00:16:36 2021
    Copyright (c) 1982, 2013, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
     
     
    SQL> show parameter optimizer_mode
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    optimizer_mode                       string      ALL_ROWS
    SQL> show parameter statistics_level
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    statistics_level                     string      TYPICAL
     
     
    2:通过连接字符串的方式连修改回话参数
     
    下面这种方式不通过监听的方式连接数据库
    pdbcs=
    (DESCRIPTION=
      (ADDRESS_LIST=
       (ADDRESS=
        (PROTOCOL=BEQ)
        (PROGRAM=oracle)
        (ARGV0=oracleCDB1)
        (ARGS='(DESCRIPTION=(SILLY_EXAMPLE=TRUE)(LOCAL=YEP)(ADDRESS=(PROTOCOL=beq)))')
       )
      )
      (CONNECT_DATA=
       (SESSION_SETTINGS=(container=ceshi)(optimizer_mode=first_rows_10))
       (SERVICE_NAME = ceshi)
       (INSTANCE_NAME = orcl)
      )
    )
     
     
    下面方式通过监听连接数据库
    pdbcs1 =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.56.30)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SESSION_SETTINGS=(container=ceshi)(optimizer_mode=first_rows_10))
          (SERVICE_NAME = ceshi)
          (INSTANCE_NAME = orcl)
        )
      )
     
    这里不进行演示登录之后回话参数的变化。
     

    二:通过触发器--11g可行

    create or replace trigger dbmon.set_session_settings after logon on dbmon.schema
    begin
      execute immediate 'alter session set optimizer_mode=first_rows_10';
    end;
    /
     
    1.创建触发器
    SQL> create or replace trigger dbmon.set_session_settings after logon on dbmon.schema
      2  begin
      3    execute immediate 'alter session set optimizer_mode=first_rows_10';
      4  end;
      5  /
    Trigger created.
     
    2.查看当前会话参数,并切换用户后再次查看回话参数
    SQL> show parameter optimizer_mode
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    optimizer_mode                       string      ALL_ROWS
    SQL> conn dbmon/dbmon
    Connected.
    SQL> show parameter optimizer_mode
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    optimizer_mode                       string      FIRST_ROWS_10
     
     
     
     
     
     
  • 相关阅读:
    【数据结构】线性表&&顺序表详解和代码实例
    【智能算法】超详细的遗传算法(Genetic Algorithm)解析和TSP求解代码详解
    【智能算法】用模拟退火(SA, Simulated Annealing)算法解决旅行商问题 (TSP, Traveling Salesman Problem)
    【智能算法】迭代局部搜索(Iterated Local Search, ILS)详解
    10. js时间格式转换
    2. 解决svn working copy locked问题
    1. easyui tree 初始化的两种方式
    10. js截取最后一个斜杠后面的字符串
    2. apache整合tomcat部署集群
    1. apache如何启动
  • 原文地址:https://www.cnblogs.com/hanglinux/p/15154092.html
Copyright © 2011-2022 走看看