public class UrlParser extends Object implements Cloneable
basic syntax :
jdbc:(mysql|mariadb):[replication:|failover|loadbalance:|aurora:]//<hostDescription>[,<hostDescription>]/[database>]
[?<key1>=<value1>[&<key2>=<value2>]]
hostDescription:
- simple :
<host>:<portnumber>
(for example localhost:3306)
- complex :
address=[(type=(master|slave))][(port=<portnumber>)](host=<host>)
type is by default master
port is by default 3306
host can be dns name, ipv4 or ipv6.
in case of ipv6 and simple host description, the ip must be written inside bracket.
exemple : jdbc:mariadb://[2001:0660:7401:0200:0000:0000:0edf:bdd7]:3306
Some examples :
jdbc:mariadb://localhost:3306/database?user=greg&password=pass
jdbc:mariadb://address=(type=master)(host=master1),address=(port=3307)(type=slave)(host=slave1)/database?user=greg&password=pass
Constructor and Description |
---|
UrlParser(String database,
List<HostAddress> addresses,
Options options,
HaMode haMode)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
static boolean |
acceptsUrl(String url)
Tell if mariadb driver accept url string.
|
UrlParser |
auroraPipelineQuirks()
Permit to set parameters not forced. if options useBatchMultiSend and usePipelineAuth are not
explicitly set in connection string, value will default to true or false according if aurora
detection.
|
Object |
clone() |
boolean |
equals(Object parser) |
CredentialPlugin |
getCredentialPlugin() |
String |
getDatabase() |
HaMode |
getHaMode() |
List<HostAddress> |
getHostAddresses() |
String |
getInitialUrl() |
Options |
getOptions() |
String |
getPassword() |
String |
getUsername() |
int |
hashCode() |
boolean |
isAurora()
Detection of Aurora.
|
boolean |
isMultiMaster() |
static UrlParser |
parse(String url) |
static UrlParser |
parse(String url,
Properties prop)
Parse url connection string with additional properties.
|
void |
parseUrl(String url)
Parse url connection string.
|
void |
setDatabase(String database) |
void |
setPassword(String password) |
protected void |
setProperties(String urlParameters) |
void |
setUsername(String username) |
String |
toString()
ToString implementation.
|
public UrlParser(String database, List<HostAddress> addresses, Options options, HaMode haMode) throws SQLException
database
- databaseaddresses
- list of hostsoptions
- connection optionhaMode
- High availability modeSQLException
- if credential plugin cannot be loadedpublic static boolean acceptsUrl(String url)
url
- url Stringpublic static UrlParser parse(String url) throws SQLException
SQLException
public static UrlParser parse(String url, Properties prop) throws SQLException
url
- connection stringprop
- propertiesSQLException
- if parsing exception occurpublic UrlParser auroraPipelineQuirks()
public boolean isAurora()
Aurora rely on MySQL, then cannot be identified by protocol. But Aurora doesn't permit some behaviour normally working with MySQL : pipelining. So Driver must identified if server is Aurora to disable pipeline options that are enable by default.
public void parseUrl(String url) throws SQLException
url
- connection stringSQLException
- if url format is incorrectpublic String getUsername()
public void setUsername(String username)
public String getPassword()
public void setPassword(String password)
public String getDatabase()
public void setDatabase(String database)
public List<HostAddress> getHostAddresses()
public Options getOptions()
protected void setProperties(String urlParameters)
public CredentialPlugin getCredentialPlugin()
public String toString()
public String getInitialUrl()
public HaMode getHaMode()
public boolean isMultiMaster()
public Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
Copyright © 2020 mariadb.com. All rights reserved.