We are using jdbc url like jdbc:mysql://localhost:3306/mysql
. How could I set second mysql host in this url? If this is imposible, how could I set in my java application (hibernate) connection to second MySQL server?
Thanks!
PS. actually we want to parallelize operations to two different databases. Is there any solution for that in Hibernate?
This is really about failover/clustering.
jdbc:mysql://192.168.29.20:3306,192.168.29.20:6306/mysql should do it. see http://lists.mysql.com/cluster/249
Reference:
an example for Oracle (failover with 3 hosts):
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.200.40.5)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.200.40.6)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=10.200.40.7)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=OLTP.WORLD)))
Regards.
2 options here:
1) You can write some code which would change your hibernate properties and switch your DB url.
2) you can have multiple hibernate configurations for multiple session-factories.
来源:https://stackoverflow.com/questions/17788085/two-hosts-in-jdbc-url