user=Database user name
password=Password of database user
database=Database
socketFactory=to use a custom socket factory, set it to the full name of the class that implements javax.net.SocketFactory.
connectTimeout=The connect timeout value, in milliseconds, or zero for no timeout.
pipe=On Windows, specify named pipe name to connect.
localSocket=Permits connecting to the database via Unix domain socket, if the server allows it. The value is the path of Unix domain socket (i.e "socket" database parameter : select @@socket)
tcpKeepAlive=Sets corresponding option on the connection socket. Default: True
tcpAbortiveClose=This option can be used in environments where connections are created and closed in rapid succession. Often, it is not possible to create a socket in such an environment after a while, since all local �ephemeral� ports are used up by TCP connections in TCP_WAIT state. Using tcpAbortiveClose works around this problem by resetting TCP connections (abortive or hard close) rather than doing an orderly close. It is accomplished by using socket.setSoLinger(true,0) for abortive close
localSocketAddress=Hostname or IP address to bind the connection socket to a local (UNIX domain) socket.
socketTimeout=Defined the network socket timeout (SO_TIMEOUT) in milliseconds. Value of 0 disables this timeout.If the goal is to set a timeout for all queries, since MariaDB 10.1.1, the server has permitted a solution to limit the query time by setting a system variable, max_statement_time. The advantage is that the connection then is still usable. Default: 0ms.
allowMultiQueries=permit multi-queries like insert into ab (i) values (1); insert into ab (i) values (2). Default: false.
useCompression=Compresses the exchange with the database through gzip. This permits better performance when the database is not in the same location.
blankTableNameMeta=Resultset metadata getTableName always return blank. This option is mainly for ORACLE db compatibility.
credentialType=Indicate the credential plugin type to use. Plugin must be present in classpath
sslMode=Indicate SSL demand. Possible value disable, trust (no certificate and hostname validation), verify-ca (Encryption, certificates validation, BUT no hostname verification), verify-full (Standard SSL use: Encryption, certificate validation and hostname)
enabledSslCipherSuites=Force TLS/SSL cipher (comma separated list). Example : "TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_DSS_WITH_AES_256_GCM_SHA384"
sessionVariables=<var>=<value> pairs separated by comma, mysql session variables, set upon establishing successful connection.
tinyInt1isBit=Datatype mapping flag, handle MySQL Tiny as BIT(boolean).
yearIsDateType=Year is date type, rather than numerical.
dumpQueriesOnException=If set to 'true', an exception is thrown during query execution containing a query string.
prepStmtCacheSize=if useServerPrepStmts = true, defines the prepared statement cache size that option `cachePrepStmts` use. Default: 250
useAffectedRows=If false (default), use "found rows" for the row count of statements. This corresponds to the JDBC standard. If true, use "affected rows" for the row count. This changes the behavior of, for example, UPDATE... ON DUPLICATE KEY statements.
useServerPrepStmts=PrepareStatement are prepared on the server side before executing. The applications that repeatedly use the same queries have value to activate this option, but the general case is to use the direct command (text protocol).
connectionAttributes=When performance_schema is active, permit to send server some client information in a key;value pair format (example: connectionAttributes=key1:value1,key2,value2). Those informations can be retrieved on server within tables performance_schema.session_connect_attrs and performance_schema.session_account_connect_attrs. This can permit from server an identification of client/application
useBulkStmts=Use dedicated COM_STMT_BULK_EXECUTE protocol for batch insert when possible. (batch without Statement.RETURN_GENERATED_KEYS and streams) to have faster batch. (significant only on >= MariaDB 10.2.7). Default: false.
autocommit=Set default autocommit value on connection initialization. Default: true.
includeInnodbStatusInDeadlockExceptions=add "SHOW ENGINE INNODB STATUS" result to exception trace when having a deadlock exception.
includeThreadDumpInDeadlockExceptions=add thread dump to exception trace when having a deadlock exception.
servicePrincipalName=When using GSSAPI authentication, use this value as the Service Principal Name (SPN) instead of the one defined for the user account on the database server.
defaultFetchSize=The driver will call setFetchSize(n) with this value on all newly-created Statements. Default: 0.
tlsSocketType=Indicate the TLS org.mariadb.jdbc.tls.TlsSocketPlugin plugin type to use. Plugin must be present in classpath
maxQuerySizeToLog=Only the first characters corresponding to this options size will be displayed in logs. Default: 1024
retriesAllDown=When the connector is performing a failover and all hosts are down, this parameter defines the maximum number of connection attempts the connector will make before throwing an exception. Default: 120 seconds.
galeraAllowedState=Usually, Connection.isValid just send an empty packet to server, and server send a small response to ensure connectivity. When this option is set, connector will ensure Galera server state "wsrep_local_state" correspond to allowed values (separated by comma). example "4,5", recommended is "4". see galera state to know more.
enabledSslProtocolSuites=Force TLS/SSL protocol to a specific set of TLS versions (comma separated list). Example : "TLSv1, TLSv1.1, TLSv1.2"
pool=Use pool. This option is useful only if not using a DataSource object, but only a connection object. Default: false.
poolName=Pool name that permits identifying threads. default: auto-generated as MariaDb-pool-<pool-index>
maxPoolSize=The maximum number of physical connections that the pool should contain. Default: 8.
minPoolSize=When connections are removed due to not being used for longer than than "maxIdleTime", connections are closed and removed from the pool. "minPoolSize" indicates the number of physical connections the pool should keep available at all times. Should be less or equal to maxPoolSize.
maxIdleTime=The maximum amount of time in seconds that a connection can stay in the pool when not used. This value must always be below @wait_timeout value - 45s. Default: 600 in seconds (=10 minutes), minimum value is 60 seconds.
registerJmxPool=Register JMX monitoring pools. Default: true.
poolValidMinDelay=When asking a connection to pool, the pool will validate the connection state. "poolValidMinDelay" permits disabling this validation if the connection has been borrowed recently avoiding useless verifications in case of frequent reuse of connections. 0 means validation is done each time the connection is asked. Default: 1000 (in milliseconds).
useResetConnection=When a connection is closed() (given back to pool), the pool resets the connection state. Setting this option, the prepare command will be deleted, session variables changed will be reset, and user variables will be destroyed when the server permits it (>= MariaDB 10.2.4, >= MySQL 5.7.3), permitting saving memory on the server if the application make extensive use of variables. Must not be used with the useServerPrepStmts option. Default: false.
serverSslCert=Permits providing server's certificate in DER form, or server's CA certificate. The server will be added to trustStor. This permits a self-signed certificate to be trusted. Can be used in one of 3 forms : * serverSslCert=/path/to/cert.pem (full path to certificate) * serverSslCert=classpath:relative/cert.pem (relative to current classpath) * or as verbatim DER-encoded certificate string "------BEGIN CERTIFICATE-----" .
serverRsaPublicKeyFile=Indicate path to RSA server public key file for sha256_password and caching_sha2_password authentication password
allowPublicKeyRetrieval=Authorize client to retrieve RSA server public key when serverRsaPublicKeyFile is not set (for sha256_password and caching_sha2_password authentication password). Default: false.
useReadAheadInput=use a buffered inputSteam that read socket available data. This cost a bit more in CPU, but permit returning result-set faster. Default true
cachePrepStmts=enable/disable prepare Statement cache. When enable, PreparedStatement.close won't close prepare immediately, keeping a pool of most used prepared results. Default true.
timezone=permits to force session timezone in case of client having a different timezone compare to server. The option `timezone` can have 3 types of value: 'disabled' (default) : connector doesn't change time_zone. '<a timezone>': connector will set connection variable to value. see timezone consideration tp know more
transactionReplay=When having a failover, can current transaction being re-executed, having a completely transparent failover. All commands must be idempotent. Default false.
transactionReplaySize=replay cache buffer maximum size. If a transaction has more command that this size and a failover occurs, transaction will then not be replayed, just throwing an exception error. (Integer) default 64.
allowLocalInfile=Indicate if LOAD DATA LOCAL INFILE commands are permitted. This will disable all pipelining implementation. Default false.
geometryDefaultType=Indicate what default Object type Geometry a resultset.getObject must return. null or empty is WKB byte array. 'default' will return org.mariadb.mariadb.jdbc.type Object. Default null
keyStore=File path of the keyStore file that contain client private key store and associate certificates (similar to java System property "javax.net.ssl.keyStore", but ensure that only the private key's entries are used)
keyStorePassword="Password for the client certificate keyStore (similar to java System property "javax.net.ssl.keyStorePassword")
keyStoreType=indicate key store type (JKS/PKCS12). default is null, then using java default type
transactionIsolation=Default transaction isolation level. Possible values READ-UNCOMMITTED, READ-COMMITTED, REPEATABLE-READ, SERIALIZABLE. default REPEATABLE-READ
restrictedAuth=if set, restrict authentication plugin to secure list. Default provided plugins are mysql_native_password,client_ed25519,auth_gssapi_client,caching_sha2_password,dialog and mysql_clear_password. (String) Default null
tcpKeepIdle=permit setting socket TCP_KEEPIDLE value. Only valid for java 11+(for previous version, this option will have no use). (Integer) Default null
tcpKeepCount=permit setting socket TCP_KEEPCOUNT value. Only valid for java 11+(for previous version, this option will have no use). (Integer) Default null
tcpKeepInterval=permit setting socket TCP_KEEPINTERVAL value. Only valid for java 11+(for previous version, this option will have no use). (Integer) Default null
useMysqlMetadata=force DatabaseMetadata.getDatabaseProductName() to return "MySQL" (for compatibility reason)
maxAllowedPacket=permit to driver to avoid sending command with size > to server max_allowed_packet, throwing an error in place of server dropping the connection.
createDatabaseIfNotExist=the specified database in the url will be created if nonexistent. Default: false
initSql=Initial command to execute on new connection creation
transformedBitIsBoolean=Indicate for TINYINT(1) in column metadata that type is BOOLEAN in place of BIT 
disablePipeline=option permitting disabling pipelining
uuidAsString=must uuid fields return as String and not java.util.UUID when using getObject()