Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
连接到已复制mysql数据库的Java应用程序_Java_Mysql_Database Replication - Fatal编程技术网

连接到已复制mysql数据库的Java应用程序

连接到已复制mysql数据库的Java应用程序,java,mysql,database-replication,Java,Mysql,Database Replication,我们有一个连接到mysql数据库的java应用程序。我们现在将通过添加另一个DB实例将数据库更改为复制模式。其想法是提供DB高可用性。应用程序应该能够在无法连接到主数据库的情况下切换到备用数据库。实现这一点的一种方法是维护两组连接,同时监视两个数据库,如果应用程序无法连接到主数据库,则切换到下一组连接并继续 我的问题是,是否有一种透明的方式可以通过mysql连接器本身切换连接?或者是否有任何实用程序应用程序可以位于我的应用程序和mysql连接器之间并执行此任务 为了澄清这一点,我们计划进行主-主

我们有一个连接到mysql数据库的java应用程序。我们现在将通过添加另一个DB实例将数据库更改为复制模式。其想法是提供DB高可用性。应用程序应该能够在无法连接到主数据库的情况下切换到备用数据库。实现这一点的一种方法是维护两组连接,同时监视两个数据库,如果应用程序无法连接到主数据库,则切换到下一组连接并继续

我的问题是,是否有一种透明的方式可以通过mysql连接器本身切换连接?或者是否有任何实用程序应用程序可以位于我的应用程序和mysql连接器之间并执行此任务

为了澄清这一点,我们计划进行主-主复制。写入和读取都经常发生。

是的,Connector/J(MySQL JDBC驱动程序)提供连接故障切换

不过,这并不是一件小事。这应该让你开始

@迈克·布兰特的观点很好。如果您的数据不经常写入/频繁读取,那么您最好只让您的应用程序写入主DBMS,并从从DBMS池中读取。对应用程序中的写入部分和读取数据的部分使用不同的连接是一种很好的编程实践。您可以使用负载平衡和故障切换设置只读连接,同时使写连接指向主机。

是的,Connector/J(MySQL JDBC驱动程序)提供连接故障切换

不过,这并不是一件小事。这应该让你开始


@迈克·布兰特的观点很好。如果您的数据不经常写入/频繁读取,那么您最好只让您的应用程序写入主DBMS,并从从DBMS池中读取。对应用程序中的写入部分和读取数据的部分使用不同的连接是一种很好的编程实践。您可以使用负载平衡和故障切换设置只读连接,同时使写连接指向主机。

您能否澄清此复制将是循环复制?如果您只是执行标准复制配置,则永远不希望写入复制副本,因为这样做可能会中断复制。您能否澄清此复制将是循环复制?如果只是执行标准复制配置,则永远不希望写入复制副本,因为这样做可能会中断复制。