[20210203]19c登入連線改變一些引數.txt
[20210203]19c登入連線改變一些引數.txt
--//昨天看了https://blog.dbi-services.com/19c-serverless-logon-trigger/,19c可以實現一種特殊的方式登入時直接改變oracle參
--//數.正好我們單位買了一臺ODA,安裝19c,可以測試看看.
1.環境:
> @ prxx
==============================
PORT_STRING : x86_64/Linux 2.4.xx
VERSION : 19.0.0.0.0
BANNER : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
BANNER_FULL : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.9.0.0.0
BANNER_LEGACY : Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
CON_ID : 0
PL/SQL procedure successfully completed.
2.測試:
> show parameter optimizer_mode
NAME TYPE VALUE
-------------- ------ ----------
optimizer_mode string ALL_ROWS
> connect sys/XXXXXYYY@(DESCRIPTION=(CONNECT_DATA=(SESSION_SETTINGS=(optimizer_mode=first_rows_10))(SERVER=DEDICATED)(SERVICE_NAME=dyhis))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.99.46)(PORT=1521))) as sysdba
SYS@dyhis> show parameter optimizer_mode
NAME TYPE VALUE
-------------- ------- --------------
optimizer_mode string FIRST_ROWS_10
--//透過連線串的SESSION_SETTINGS=(optimizer_mode=first_rows_10),改變了引數.
connect sys/XXXXXYYY@(DESCRIPTION=(CONNECT_DATA=(SESSION_SETTINGS=(sql_trace=true)(tracefile_identifier=franck))(SERVER=DEDICATED)(SERVICE_NAME=dyhis))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.99.46)(PORT=1521))) as sysdba
SYS@dyhis> show parameter sql_trace
NAME TYPE VALUE
--------- ------- -------
sql_trace boolean TRUE
SYS@dyhis> select value from v$diag_info where name='Default Trace File';
VALUE
-------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/dyhis/dyhis2/trace/dyhis2_ora_29162_FRANCK.trc
--//檢視跟蹤檔案無意間發現oracle的一個觸發器:
=====================
PARSING IN CURSOR #140653736157352 len=391 dep=1 uid=0 oct=47 lid=0 tim=4805081161893 hv=2286069890 ad='b74dde98' sqlid='6s9sc8q445a42'
declare
pdb_name varchar2(64);
begin
DBMS_SYSTEM.get_env ('ORACLE_PDB_SID', pdb_name);
if(pdb_name is not null)
then
EXECUTE IMMEDIATE 'alter session set container = ' || '"' || pdb_name
|| '"';
end if;
exception
when others then
NULL;
end dbms_set_pdb;
END OF STMT
PARSE #140653736157352:c=29,e=29,p=0,cr=0,cu=0,mis=0,r=0,dep=1,og=4,plh=0,tim=4805081161893
EXEC #140653736157352:c=157,e=158,p=0,cr=0,cu=0,mis=0,r=1,dep=1,og=4,plh=0,tim=4805081162078
CLOSE #140653736157352:c=12,e=12,dep=1,type=1,tim=4805081162119
=====================
--//你可以定義一個環境變數ORACLE_PDB_SID,這樣登入直接進入某個PDB資料庫.
--//作者還提供查詢支援那些功能的命令:
$ strings $ORACLE_HOME/bin/oracle | grep ^DESCRIPTION/CONNECT_DATA/ | cut -d/ -f3-
COLOCATION
SID
NUMA_PG
CID/PROGRAM
SESSION_SETTINGS
MODULE_NAME
MODULE_ACTION
SERVICE_NAME
GLOBAL_NAME
CID/USER
REGION
PRESENTATION
SERVER
DUPLICITY
SEPARATE_PROCESS
SERVER_WAIT_TIMEOUT
COMMAND
DESIG
ORACLE_HOME
FAILOVER_MODE
FAILOVER_MODE/BACKUP
SESSION_STATE
USE_DBROUTER
RPC
--//作者還給出一些例子不再測試了.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2755627/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20160713]改變引數在另外的會話.txt會話
- JDBC連線引數JDBC
- 連續登入及其變種
- MySQL 連線相關引數MySql
- MYSQL 連線登入過程分析MySql
- [20180222]改變oracle執行時的引數0.txtOracle
- 連線PostgreSQL時,如何指定引數SQL
- 討論:大家來討論一些連線涉及到的引數
- Swift語言中為外部引數設定預設值可變引數常量引數變數引數輸入輸出引數Swift變數
- react路由引數改變不重新渲染頁面React路由
- Vue獲取位址列引數並做改變Vue
- Sqlcl 連線Oracle DataBase 19cSQLOracleDatabase
- 改變無法改變的Query 變數變數
- DBCP連線池配置引數說明
- WebForm登入頁面(連線資料庫)WebORM資料庫
- appium 資料引數化 登入模組APP
- 19c(01):Redhat:系統引數Redhat
- [20210203]max優化的困惑.txt優化
- Oracle 19c中連線RMAN客戶端的連線方法Oracle客戶端
- Go 快速入門指南 - 變長引數Go
- kettle 引數——變數引數和常量引數變數
- 建立 MQTT 連線時如何設定引數?MQQT
- [轉帖]HikariCP連線池引數解釋
- SQLSERVER 登入使用者連線不上解決SQLServer
- [20180529]模擬會話引數變化.txt會話
- 引數和變數變數
- JDBC連線資料庫時,Oracle9i的連線引數配置JDBC資料庫Oracle
- exists改為內連線
- not exists改為外連線
- CNN實現手寫數字識別並改變引數進行分析CNN
- [20150326]監測系統引數變化.txt
- SQL 改寫系列十:半連線轉內連線SQL
- Bash變數和引數變數
- win10怎麼改本地登入 win10如何改本地賬戶登入Win10
- 19c exadata不能設定的引數
- java獲取url連線地址引數的工具類Java
- datawindow.net中SQLOLEDB連線引數配置SQL
- vue-router watch 監聽路由引數改變觸發函式Vue路由函式