All parameters are optional. A brief description of each parameter follows:
min
: the minimum number of connections the pool should contain (default: 1)
max
: the maximum number of connections the pool should contain (default: 2)
increment
: the number of connections that should be added to the pool whenever the pool needs to grow (default: 1)
connectiontype
: the class of the connection that should be returned during calls to pool.acquire(). It must be oracledb.Connection or a subclass of oracledb.Connection (default: None)
getmode
: how pool.acquire() will behave. One of the constants oracledb.POOL_GETMODE_WAIT
, oracledb.POOL_GETMODE_NOWAIT
, oracledb.POOL_GETMODE_FORCEGET
, or oracledb.POOL_GETMODE_TIMEDWAIT
(default: oracledb.POOL_GETMODE_WAIT
)
homogeneous
: a boolean indicating whether the connections in the pool are homogeneous (same user) or heterogeneous (multiple users) (default: True)
timeout
: the length of time (in seconds) that a connection may remain idle in the pool before it is terminated. If it is 0 then connections are never terminated (default: 0)
wait_timeout
: the length of time (in milliseconds) that a caller should wait when acquiring a connection from the pool with getmode set to oracledb.POOL_GETMODE_TIMEDWAIT
(default: 0)
max_lifetime_session
: the length of time (in seconds) that connections can remain in the pool. If it is 0 then connections may remain in the pool indefinitely (default: 0)
session_callback
: a callable that is invoked when a connection is returned from the pool for the first time, or when the connection tag differs from the one requested (default: None)
max_sessions_per_shard
: the maximum number of connections that may be associated with a particular shard (default: 0)
soda_metadata_cache
: a boolean indicating whether or not the SODA metadata cache should be enabled (default: False)
ping_interval
: the length of time (in seconds) after which an unused connection in the pool will be a candidate for pinging when pool.acquire() is called. If the ping to the database indicates the connection is not alive a replacement connection will be returned by pool.acquire(). If ping_interval is a negative value the ping functionality will be disabled (default: 60)
ping_timeout
: the maximum length of time (in milliseconds) to wait for a connection in the pool to respond to an internal ping to the database before being discarded and replaced during a call to acquire() (default: 5000)
user
: the name of the database user to connect to (default: None)
proxy_user
: the name of the proxy user to connect to. If this value is not specified, it will be parsed out of user if user is in the form “user[proxy_user]” (default: None)
password
: the password for the database user (default: None)
newpassword
: a new password for the database user. The new password will take effect immediately upon a successful connection to the database (default: None)
wallet_password
: the password to use to decrypt the wallet, if it is encrypted. This value is only used in python-oracledb Thin mode (default: None)
access_token
: a string, or a 2-tuple, or a callable. If it is a string, it specifies an Entra ID OAuth2 token used for Open Authorization (OAuth 2.0) token based authentication. If it is a 2-tuple, it specifies the token and private key strings used for Oracle Cloud Infrastructure (OCI) Identity and Access Management (IAM) token based authentication. If it is a callable, it returns either a string or a 2-tuple used for OAuth 2.0 or OCI IAM token based authentication and is useful when the pool needs to expand and create new connections but the current authentication token has expired (default: None)
host
: the hostname or IP address of the machine hosting the database or the database listener (default: None)
port
: the port number on which the database listener is listening (default: 1521)
protocol
: one of the strings “tcp” or “tcps” indicating whether to use unencrypted network traffic or encrypted network traffic (TLS) (default: “tcp”)
https_proxy
: the hostname or IP address of a proxy host to use for tunneling secure connections (default: None)
https_proxy_port
: the port on which to communicate with the proxy host (default: 0)
service_name
: the service name of the database (default: None)
instance_name
: the instance name of the database (default: None)
sid
: the system identifier (SID) of the database. Note using a service_name instead is recommended (default: None)
server_type
: the type of server connection that should be established. If specified, it should be one of strings “dedicated”, “shared” or “pooled” (default: None)
cclass
: the connection class to use for Database Resident Connection Pooling (DRCP) (default: None)
purity
: the connection purity to use for Database Resident Connection Pooling (DRCP) (default: oracledb.PURITY_DEFAULT
)
expire_time
: the number of minutes between the sending of keepalive probes. If this parameter is set to a value greater than zero it enables keepalive (default: 0)
retry_count
: the number of times that initial connection establishment should be retried before the connection attempt is terminated (default: 0)
retry_delay
: the number of seconds to wait before retrying to establish a connection (default: 1)
tcp_connect_timeout
: a float indicating the maximum number of seconds to wait when establishing a connection to the database host (default: 20.0)
ssl_server_dn_match
: a boolean indicating whether the server certificate distinguished name (DN) should be matched in addition to the regular certificate verification that is performed. Note that if the ssl_server_cert_dn parameter is not privided, host name matching is performed instead (default: True)
ssl_server_cert_dn
: the distinguished name (DN) which should be matched with the server. This value is ignored if the ssl_server_dn_match parameter is not set to the value True. If specified this value is used for any verfication. Otherwise the hostname will be used (default: None)
wallet_location
: the directory where the wallet can be found. In python-oracledb Thin mode this must be the directory containing the PEM-encoded wallet file ewallet.pem. In python-oracledb Thick mode this must be the directory containing the file cwallet.sso (default: None)
events
: a boolean specifying whether events mode should be enabled. This value is only used in python-oracledb Thick mode and is needed for continuous query notification and high availability event notifications (default: False)
externalauth
: a boolean indicating whether to use external authentication (default: False)
mode
: the authorization mode to use. One of the constants oracledb.AUTH_MODE_DEFAULT
, oracledb.AUTH_MODE_PRELIM
, oracledb.AUTH_MODE_SYSASM
, oracledb.AUTH_MODE_SYSBKP
, oracledb.AUTH_MODE_SYSDBA
, oracledb.AUTH_MODE_SYSDGD
, oracledb.AUTH_MODE_SYSKMT
, oracledb.AUTH_MODE_SYSOPER
, or oracledb.AUTH_MODE_SYSRAC
(default: oracledb.AUTH_MODE_DEFAULT
)
disable_oob
: a boolean indicating whether out-of-band breaks should be disabled. This value is only used in python-oracledb Thin mode. It has no effect on Windows which does not support this functionality (default: False)
stmtcachesize
: the size of the statement cache (default: oracledb.defaults.stmtcachesize
)
edition
: edition to use for the connection. This parameter cannot be used simultaneously with the cclass parameter (default: None)
tag
: identifies the type of connection that should be returned from a pool. This value is only used in python-oracledb Thick mode (default: None)
matchanytag
: a boolean specifying whether any tag can be used when acquiring a connection from the pool. This value is only used in python-oracledb Thick mode (default: False)
config_dir
: a directory in which the optional tnsnames.ora configuration file is located. This value is only used in python- oracledb Thin mode. For python-oracledb Thick mode, it is used if oracledb.defaults.thick_mode_dsn_passthrough
is False. Otherwise in Thick mode use the config_dir
parameter of oracledb.init_oracle_client()
(default: oracledb.defaults.config_dir
)
appcontext
: application context used by the connection. It should be a list of 3-tuples (namespace, name, value) and each entry in the tuple should be a string (default: None)
shardingkey
: a list of strings, numbers, bytes or dates that identify the database shard to connect to. This value is only used in python-oracledb Thick mode (default: None)
supershardingkey
: a list of strings, numbers, bytes or dates that identify the database shard to connect to. This value is only used in python-oracledb Thick mode (default: None)
debug_jdwp
: a string with the format “host=<host>;port=<port>” that specifies the host and port of the PL/SQL debugger. This value is only used in python-oracledb Thin mode. For python-oracledb Thick mode set the ORA_DEBUG_JDWP environment variable (default: None)
connection_id_prefix
: an application specific prefix that is added to the connection identifier used for tracing (default: None)
ssl_context
: an SSLContext object used for connecting to the database using TLS. This SSL context will be modified to include the private key or any certificates found in a separately supplied wallet. This parameter should only be specified if the default SSLContext object cannot be used (default: None)
sdu
: the requested size of the Session Data Unit (SDU), in bytes. The value tunes internal buffers used for communication to the database. Bigger values can increase throughput for large queries or bulk data loads, but at the cost of higher memory use. The SDU size that will actually be used is negotiated down to the lower of this value and the database network SDU configuration value (default: 8192)
pool_boundary
: one of the values “statement” or “transaction” indicating when pooled DRCP connections can be returned to the pool. This requires the use of DRCP with Oracle Database 23.4 or higher (default: None)
use_tcp_fast_open
: a boolean indicating whether to use TCP fast open. This is an Oracle Autonomous Database Serverless (ADB-S) specific property for clients connecting from within OCI Cloud network. Please refer to the ADB-S documentation for more information (default: False)
ssl_version
: one of the values ssl.TLSVersion.TLSv1_2 or ssl.TLSVersion.TLSv1_3 indicating which TLS version to use (default: None)
program
: a string recorded by Oracle Database as the program from which the connection originates (default: oracledb.defaults.program
)
machine
: a string recorded by Oracle Database as the name of the machine from which the connection originates (default: oracledb.defaults.machine
)
terminal
: a string recorded by Oracle Database as the terminal identifier from which the connection originates (default: oracledb.defaults.terminal
)
osuser
: a string recorded by Oracle Database as the operating system user who originated the connection (default: oracledb.defaults.osuser
)
driver_name
: a string recorded by Oracle Database as the name of the driver which originated the connection (default: oracledb.defaults.driver_name
)
use_sni
: a boolean indicating whether to use the TLS SNI extension to bypass the second TLS neogiation that would otherwise be required (default: False)
thick_mode_dsn_passthrough
: a boolean indicating whether to pass the connect string to the Oracle Client libraries unchanged without parsing by the driver. Setting this to False makes python-oracledb Thick and Thin mode applications behave similarly regarding connection string parameter handling and locating any optional tnsnames.ora configuration file (default: oracledb.defaults.thick_mode_dsn_passthrough
)
extra_auth_params
: a dictionary containing configuration parameters necessary for Oracle Database authentication using plugins, such as the Azure and OCI cloud-native authentication plugins (default: None)
pool_name
: the name of the DRCP pool when using multi-pool DRCP with Oracle Database 23.4, or higher (default: None)
handle
: an integer representing a pointer to a valid service context handle. This value is only used in python-oracledb Thick mode. It should be used with extreme caution (default: 0)
The PoolParams class is a subclass of the ConnectParams Class. In addition to the parameters and attributes of the ConnectParams class, the PoolParams class also contains new parameters and attributes.
See Using the PoolParams Builder Class for more information.
Changed in version 3.2.0: The pool_name
parameter was added.
Changed in version 3.0.0: The use_sni
, instance_name
, thick_mode_dsn_passthrough
, extra_auth_params
, and instance_name
parameters were added.
Changed in version 2.5.0: The program
, machine
, terminal
, osuser
, and driver_name
parameters were added. Support for edition
and appcontext
was added to python-oracledb Thin mode.
Changed in version 2.3.0: The default value of the retry_delay
parameter was changed from 0 seconds to 1 second. The default value of the tcp_connect_timeout
parameter was changed from 60.0 seconds to 20.0 seconds. The ping_timeout
and ssl_version
parameters were added.
Changed in version 2.1.0: The pool_boundary
and use_tcp_fast_open
parameters were added.
Changed in version 2.0.0: The ssl_context
and sdu
parameters were added.
Changed in version 1.4.0: The connection_id_prefix
parameter was added.
Creates a copy of the parameters and returns it.
Returns the connection string associated with the instance.
Parses the connect string into its components and stores the parameters.
The connect string
parameter can be an Easy Connect string, name-value pairs, or a simple alias which is looked up in tnsnames.ora
. Parameters that are found in the connect string override any currently stored values.
All parameters are optional. A brief description of each parameter follows:
min
: the minimum number of connections the pool should contain
max
: the maximum number of connections the pool should contain
increment
: the number of connections that should be added to the pool whenever the pool needs to grow
connectiontype
: the class of the connection that should be returned during calls to pool.acquire(). It must be oracledb.Connection or a subclass of oracledb.Connection
getmode
: how pool.acquire() will behave. One of the constants oracledb.POOL_GETMODE_WAIT
, oracledb.POOL_GETMODE_NOWAIT
, oracledb.POOL_GETMODE_FORCEGET
, or oracledb.POOL_GETMODE_TIMEDWAIT
homogeneous
: a boolean indicating whether the connections in the pool are homogeneous (same user) or heterogeneous (multiple users)
timeout
: the length of time (in seconds) that a connection may remain idle in the pool before it is terminated. If it is 0 then connections are never terminated
wait_timeout
: the length of time (in milliseconds) that a caller should wait when acquiring a connection from the pool with getmode set to oracledb.POOL_GETMODE_TIMEDWAIT
max_lifetime_session
: the length of time (in seconds) that connections can remain in the pool. If it is 0 then connections may remain in the pool indefinitely
session_callback
: a callable that is invoked when a connection is returned from the pool for the first time, or when the connection tag differs from the one requested
max_sessions_per_shard
: the maximum number of connections that may be associated with a particular shard
soda_metadata_cache
: a boolean indicating whether or not the SODA metadata cache should be enabled
ping_interval
: the length of time (in seconds) after which an unused connection in the pool will be a candidate for pinging when pool.acquire() is called. If the ping to the database indicates the connection is not alive a replacement connection will be returned by pool.acquire(). If ping_interval is a negative value the ping functionality will be disabled
ping_timeout
: the maximum length of time (in milliseconds) to wait for a connection in the pool to respond to an internal ping to the database before being discarded and replaced during a call to acquire()
user
: the name of the database user to connect to
proxy_user
: the name of the proxy user to connect to. If this value is not specified, it will be parsed out of user if user is in the form “user[proxy_user]”
password
: the password for the database user
newpassword
: a new password for the database user. The new password will take effect immediately upon a successful connection to the database
wallet_password
: the password to use to decrypt the wallet, if it is encrypted. This value is only used in python-oracledb Thin mode
access_token
: a string, or a 2-tuple, or a callable. If it is a string, it specifies an Entra ID OAuth2 token used for Open Authorization (OAuth 2.0) token based authentication. If it is a 2-tuple, it specifies the token and private key strings used for Oracle Cloud Infrastructure (OCI) Identity and Access Management (IAM) token based authentication. If it is a callable, it returns either a string or a 2-tuple used for OAuth 2.0 or OCI IAM token based authentication and is useful when the pool needs to expand and create new connections but the current authentication token has expired
host
: the hostname or IP address of the machine hosting the database or the database listener
port
: the port number on which the database listener is listening
protocol
: one of the strings “tcp” or “tcps” indicating whether to use unencrypted network traffic or encrypted network traffic (TLS)
https_proxy
: the hostname or IP address of a proxy host to use for tunneling secure connections
https_proxy_port
: the port on which to communicate with the proxy host
service_name
: the service name of the database
instance_name
: the instance name of the database
sid
: the system identifier (SID) of the database. Note using a service_name instead is recommended
server_type
: the type of server connection that should be established. If specified, it should be one of strings “dedicated”, “shared” or “pooled”
cclass
: the connection class to use for Database Resident Connection Pooling (DRCP)
purity
: the connection purity to use for Database Resident Connection Pooling (DRCP)
expire_time
: the number of minutes between the sending of keepalive probes. If this parameter is set to a value greater than zero it enables keepalive
retry_count
: the number of times that initial connection establishment should be retried before the connection attempt is terminated
retry_delay
: the number of seconds to wait before retrying to establish a connection
tcp_connect_timeout
: a float indicating the maximum number of seconds to wait when establishing a connection to the database host
ssl_server_dn_match
: a boolean indicating whether the server certificate distinguished name (DN) should be matched in addition to the regular certificate verification that is performed. Note that if the ssl_server_cert_dn parameter is not privided, host name matching is performed instead
ssl_server_cert_dn
: the distinguished name (DN) which should be matched with the server. This value is ignored if the ssl_server_dn_match parameter is not set to the value True. If specified this value is used for any verfication. Otherwise the hostname will be used
wallet_location
: the directory where the wallet can be found. In python-oracledb Thin mode this must be the directory containing the PEM-encoded wallet file ewallet.pem. In python-oracledb Thick mode this must be the directory containing the file cwallet.sso
events
: a boolean specifying whether events mode should be enabled. This value is only used in python-oracledb Thick mode and is needed for continuous query notification and high availability event notifications
externalauth
: a boolean indicating whether to use external authentication
mode
: the authorization mode to use. One of the constants oracledb.AUTH_MODE_DEFAULT
, oracledb.AUTH_MODE_PRELIM
, oracledb.AUTH_MODE_SYSASM
, oracledb.AUTH_MODE_SYSBKP
, oracledb.AUTH_MODE_SYSDBA
, oracledb.AUTH_MODE_SYSDGD
, oracledb.AUTH_MODE_SYSKMT
, oracledb.AUTH_MODE_SYSOPER
, or oracledb.AUTH_MODE_SYSRAC
disable_oob
: a boolean indicating whether out-of-band breaks should be disabled. This value is only used in python-oracledb Thin mode. It has no effect on Windows which does not support this functionality
stmtcachesize
: the size of the statement cache
edition
: edition to use for the connection. This parameter cannot be used simultaneously with the cclass parameter
tag
: identifies the type of connection that should be returned from a pool. This value is only used in python-oracledb Thick mode
matchanytag
: a boolean specifying whether any tag can be used when acquiring a connection from the pool. This value is only used in python-oracledb Thick mode
config_dir
: a directory in which the optional tnsnames.ora configuration file is located. This value is only used in python- oracledb Thin mode. For python-oracledb Thick mode, it is used if oracledb.defaults.thick_mode_dsn_passthrough
is False. Otherwise in Thick mode use the config_dir
parameter of oracledb.init_oracle_client()
appcontext
: application context used by the connection. It should be a list of 3-tuples (namespace, name, value) and each entry in the tuple should be a string
shardingkey
: a list of strings, numbers, bytes or dates that identify the database shard to connect to. This value is only used in python-oracledb Thick mode
supershardingkey
: a list of strings, numbers, bytes or dates that identify the database shard to connect to. This value is only used in python-oracledb Thick mode
debug_jdwp
: a string with the format “host=<host>;port=<port>” that specifies the host and port of the PL/SQL debugger. This value is only used in python-oracledb Thin mode. For python-oracledb Thick mode set the ORA_DEBUG_JDWP environment variable
connection_id_prefix
: an application specific prefix that is added to the connection identifier used for tracing
ssl_context
: an SSLContext object used for connecting to the database using TLS. This SSL context will be modified to include the private key or any certificates found in a separately supplied wallet. This parameter should only be specified if the default SSLContext object cannot be used
sdu
: the requested size of the Session Data Unit (SDU), in bytes. The value tunes internal buffers used for communication to the database. Bigger values can increase throughput for large queries or bulk data loads, but at the cost of higher memory use. The SDU size that will actually be used is negotiated down to the lower of this value and the database network SDU configuration value
pool_boundary
: one of the values “statement” or “transaction” indicating when pooled DRCP connections can be returned to the pool. This requires the use of DRCP with Oracle Database 23.4 or higher
use_tcp_fast_open
: a boolean indicating whether to use TCP fast open. This is an Oracle Autonomous Database Serverless (ADB-S) specific property for clients connecting from within OCI Cloud network. Please refer to the ADB-S documentation for more information
ssl_version
: one of the values ssl.TLSVersion.TLSv1_2 or ssl.TLSVersion.TLSv1_3 indicating which TLS version to use
program
: a string recorded by Oracle Database as the program from which the connection originates
machine
: a string recorded by Oracle Database as the name of the machine from which the connection originates
terminal
: a string recorded by Oracle Database as the terminal identifier from which the connection originates
osuser
: a string recorded by Oracle Database as the operating system user who originated the connection
driver_name
: a string recorded by Oracle Database as the name of the driver which originated the connection
use_sni
: a boolean indicating whether to use the TLS SNI extension to bypass the second TLS neogiation that would otherwise be required
thick_mode_dsn_passthrough
: a boolean indicating whether to pass the connect string to the Oracle Client libraries unchanged without parsing by the driver. Setting this to False makes python-oracledb Thick and Thin mode applications behave similarly regarding connection string parameter handling and locating any optional tnsnames.ora configuration file
extra_auth_params
: a dictionary containing configuration parameters necessary for Oracle Database authentication using plugins, such as the Azure and OCI cloud-native authentication plugins
pool_name
: the name of the DRCP pool when using multi-pool DRCP with Oracle Database 23.4, or higher
handle
: an integer representing a pointer to a valid service context handle. This value is only used in python-oracledb Thick mode. It should be used with extreme caution
Changed in version 3.2.0: The pool_name
parameter was added.
Changed in version 3.0.0: The use_sni
, thick_mode_dsn_passthrough
, extra_auth_params
and instance_name
parameters were added.
Changed in version 2.5.0: The program
, machine
, terminal
, osuser
, and driver_name
parameters were added. Support for edition
and appcontext
was added to python-oracledb Thin mode.
Changed in version 2.3.0: The ping_timeout
and ssl_version
parameters were added.
Changed in version 2.1.0: The pool_boundary
and use_tcp_fast_open
parameters were added.
All properties are read only.
The class of the connection that should be returned during calls to pool.acquire(). It must be oracledb.Connection or a subclass of oracledb.Connection.
This attribute is supported in both python-oracledb Thin and Thick modes.
How pool.acquire() will behave. One of the constants oracledb.POOL_GETMODE_WAIT
, oracledb.POOL_GETMODE_NOWAIT
, oracledb.POOL_GETMODE_FORCEGET
, or oracledb.POOL_GETMODE_TIMEDWAIT
.
This attribute is supported in both python-oracledb Thin and Thick modes.
A boolean indicating whether the connections in the pool are homogeneous (same user) or heterogeneous (multiple users).
This attribute is only supported in python-oracledb Thick mode. The python-oracledb Thin mode supports only homogeneous modes.
The number of connections that should be added to the pool whenever the pool needs to grow.
This attribute is supported in both python-oracledb Thin and Thick modes.
The minimum number of connections the pool should contain.
This attribute is supported in both python-oracledb Thin and Thick modes.
The maximum number of connections the pool should contain.
This attribute is supported in both python-oracledb Thin and Thick modes.
The length of time (in seconds) that connections can remain in the pool. If it is 0 then connections may remain in the pool indefinitely.
Connections become candidates for termination when they are acquired or released back to the pool, and have existed for longer than max_lifetime_session
seconds. Connections that are in active use will not be closed. In python-oracledb Thick mode, Oracle Client libraries 12.1 or later must be used and, prior to Oracle Client 21, cleanup only occurs when the pool is accessed.
The maximum number of connections that may be associated with a particular shard.
This attribute is only supported in python-oracledb Thick mode.
The length of time (in seconds) after which an unused connection in the pool will be a candidate for pinging when pool.acquire() is called. If the ping to the database indicates the connection is not alive a replacement connection will be returned by pool.acquire(). If ping_interval is a negative value the ping functionality will be disabled.
This attribute is supported in both python-oracledb Thin and Thick modes.
The maximum length of time (in milliseconds) to wait for a connection in the pool to respond to an internal ping to the database before being discarded and replaced during a call to acquire().
This attribute is supported in both python-oracledb Thin and Thick modes.
Added in version 2.3.0.
A callable that is invoked when a connection is returned from the pool for the first time, or when the connection tag differs from the one requested.
This attribute is supported in both python-oracledb Thin and Thick modes.
A boolean indicating whether or not the SODA metadata cache should be enabled.
This attribute is only supported in python-oracledb Thick mode.
The length of time (in seconds) that a connection may remain idle in the pool before it is terminated. If it is 0 then connections are never terminated.
This applies only when the pool has more than min
connections open, allowing it to shrink to the specified minimum size. The default value is 0 seconds. A value of 0 means that there is no maximum time.
This attribute is supported in both python-oracledb Thin and Thick modes.
The length of time (in milliseconds) that a caller should wait when acquiring a connection from the pool with getmode set to oracledb.POOL_GETMODE_TIMEDWAIT
.
This attribute is supported in both python-oracledb Thin and Thick modes.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4