`

Java程序访问Mysql Cluster

 
阅读更多
jdbc:mysql://[host:port],[host:port].../[database][?propertyName1][=propertyValue1][&propertyName2][=propertyValue2]...


例如:
jdbc:mysql://host1:3306,host2:3307,host3:3308/test?user=root&password=root&autoReconnect=true&failOverReadOnly=false


在192.168.56.10或者192.168.56.20任意一台机器上,访问数据库,

比如现在我在192.168.56.10机器上面创建数据库assetscenterdb,执行命令:
create database assetscenterdb

创建成功之后,在192.168.56.20的机器上面就可以看到我们创建的这个数据库,接下来我们要创建数据库表,

这里我们注意数据库表的ENGINE是ndb,比如说数据库里面我的一个表结构这个样子:

CREATE TABLE `AC_ASSET`(`ID` int(11) NOT NULL AUTO_INCREMENT,
`TYPE_ID` int(11) NOT NULL,
`STATUS` tinyint(4) NOT NULL,
`SN` varchar(50) DEFAULT NULL,
`DESCRIPTION` text,
`ELTMS` varchar(50) DEFAULT NULL,
`ORDER_NAME` varchar(50) DEFAULT NULL,
`OWNER_NAME` varchar(50) DEFAULT NULL,
`WAREHOUSE_TIME` varchar(50) DEFAULT NULL,
`LOCATION` varchar(100) DEFAULT NULL,
`PRICE` double DEFAULT NULL,
`USER_NAME` varchar(50) DEFAULT NULL,
PRIMARY KEY (`ID`)) 
ENGINE=ndb AUTO_INCREMENT=1726 DEFAULT CHARSET=utf8;


只有这样子,这两台机器才能共享数据库的数据结构,此时在另外一台机器上面,执行命令:

引用
show tables

就可以看到我们创建的这张表。

那么Java程序如何访问呢,我采用的Jdbc驱动为mysql-connector-5.1.12,连接串如下:

jdbc:mysql:loadbalance://192.168.56.10:3306,192.168.56.20:3306/assetscenterdb?roundRobinLoadBalance=true

使用roundRobin算法,若是其中一台机器down掉以后,将会自动将不能访问的数据库服务器 踢除,如果还原后将继续进行压力分载。


参考:
http://www.blogjava.net/smalldirector/archive/2011/12/28/367547.html


如果在mysql集群搭建的时候,没有配置各节点的主从关系,那么这些节点都是平等的,就用 jdbc:mysql:loadbalance: 这种方式操作集群数据库.

如果mysql集群搭建的时候,指定了主从关系,java程序端需要连接到master库上,因为slave库只是readonly的,不可以写操作
参考:https://zhidao.baidu.com/question/616362483677110132.html


MySQL 数据库的读写分离和负载均衡一般是通过第三方软件来实现的。 也可以通过mysql驱动程序来实现,如com.mysql.jdbc.ReplicationDriver。

详细文档参见:http://dev.mysql.com/doc/refman/5.5/en/connector-j-info.html

参考:http://blog.csdn.net/orion61/article/details/44975181

java 程序连接集群的配置地址:
http://dev.mysql.com/doc/connector-j/5.1/en/connector-j-master-slave-replication-connection.html
分享到:
评论

相关推荐

    mysql cluster7.13集群配置

    uster 基本概念MySQL Cluster 是一种分布式数据库系统,它采用了 NoSQL 数据库的一些特性,同时保持了 SQL 访问接口。它通过数据分片(Sharding)和复制(Replication)来提供高可用性和容错性。在 MySQL Cluster 中...

    mysql cluster

    - **应用程序节点(Application Node)**:直接连接到SQL节点,进行应用层面的数据访问。 **3. 安装过程** 安装MySQL Cluster通常涉及以下几个步骤: 1. 安装基础环境:确保所有服务器满足硬件和软件要求,包括操作...

    MySQL Cluster 核心概念

    同时,MySQL还提供了特定的Java接口,如MySQLCluster Connector for Java,以及对Hibernate和JPA的支持,允许更高级别的对象映射和数据库操作。最新版本的MySQL Cluster还支持JavaScript和Node.js的查询。 在部署...

    MySQLCluster.pdf

    出现了“LinuxIP”这样的错误连接,应当理解为这部分内容在描述MySQL Cluster支持TCP/IP协议,以及可以在Linux环境下通过IP地址***.***.*.*来访问MySQL Cluster。 根据文档内容及以上对MySQL Cluster的详细解释,...

    实战体验几种MysqlCluster 方案.zip

    在本实战体验中,我们将探讨几种不同的MysqlCluster配置方案,结合Java开发环境,来理解其工作原理和优势。以下是关于MySQL Cluster的一些关键知识点: 1. **分片(Sharding)**:MySQL Cluster通过数据分片实现...

    MySQL Cluster简介.docx

    MySQL Cluster支持多种数据访问API,包括MySQL连接器,以及JavaScript、Memcached、C++、Java、JPA和HTTP/REST等NoSQL接口。 MySQL Cluster的复制是双向的,允许单向或双向复制,并且具备事务冲突检测和解决机制。...

    mysqlcluster学习1

    标准客户端使用PHP、Perl、C、C++、Java、Python、Ruby等语言编写的应用程序可以直接访问,而管理客户端则提供用于监控、控制和管理集群的工具。 搭建MySQL Cluster涉及多个步骤,包括安装和配置管理节点、SQL节点...

    mysql-connector-java-8.0.28

    MySQL Connector/J是MySQL与Java平台之间的桥梁,它实现了Java Database Connectivity (JDBC) API,这是Java标准版(Java SE)的一部分,允许Java应用程序通过Java代码访问各种类型的数据库。JDBC为开发者提供了统一...

    mysql-connector-java-8.0.19.zip

    在Java编程中,JDBC是Oracle公司定义的一套用于访问数据库的标准接口,它允许Java程序通过调用接口方法来与各种类型的数据库进行交互。MySQL Connector/J实现了JDBC驱动程序的四种类型:Type 1(纯Java,使用ODBC桥...

    mysql-connector-java.rar

    MySQL Connector/J是MySQL数据库系统与Java应用程序之间的桥梁,它是一个实现了Java Database Connectivity (JDBC) API的驱动程序,使得Java开发者能够方便地在Java应用程序中访问MySQL数据库。MySQL Connector/J在...

    mysql-connector-java-8.0.22.7z

    MySQL Connector/J是MySQL数据库系统与Java应用程序之间的桥梁,它是一个实现了Java Database Connectivity (JDBC) API的驱动程序,使得Java开发者能够方便地在他们的应用中访问MySQL数据库。标题中的"mysql-...

    基于hibernate的mysql分表分库实例-mysql-cluster-hibernate.zip

    Hibernate支持多种数据库,包括MySQL,这使得应用程序具有更好的可移植性。 **MySQL分库分表**: 随着数据量的增长,单个数据库可能无法有效处理查询和写入请求,这时需要采用分库分表策略。分库是将数据分散到多个...

    mysql-connector-java-5.1 6.0.rar

    MySQL Connector/J是MySQL数据库系统与Java应用程序之间的重要桥梁,它是一个实现了JDBC(Java Database Connectivity)规范的驱动程序,使得Java开发者能够方便地在Java应用中连接并操作MySQL数据库。本压缩包包含...

    mysql-conector-java.zip

    MySQL Connector/J是MySQL数据库与Java应用程序之间的桥梁,它是一个用于JDBC(Java Database Connectivity)的驱动程序,使得Java开发者能够方便地在Java应用中访问和操作MySQL数据。本资源包含两个版本的MySQL ...

    mysql-connector-java-5.1.x

    MySQL Connector/J是MySQL数据库系统与Java应用程序之间的桥梁,它是一个实现了Java Database Connectivity (JDBC) API的驱动程序,使得Java开发者能够通过Java代码与MySQL数据库进行交互。在本例中,我们关注的是...

    mysql-connector-java-8.0.26.zip

    MySQL Connector/J是MySQL数据库与Java应用程序之间的桥梁,它是一个实现了JDBC(Java Database Connectivity)标准的驱动程序,允许Java开发者在Java应用中访问和操作MySQL数据库。标题中的"mysql-connector-java-...

    mysql-connector-java-5.1.6.rar

    MySQL Connector/J是MySQL数据库与Java应用程序之间的桥梁,它是一个实现了Java Database Connectivity (JDBC) API的驱动程序,允许Java开发者通过编写Java代码来访问和操作MySQL数据库。在本例中,我们关注的是版本...

    mysql-cluster-ndb-bindings:MySQL 集群的 NDB 绑定。 源代码来自https

    这些连接器旨在允许从各种编程语言对 MySQL Cluster(也称为 NDB)进行低级编程访问。 希望一旦为 C++ 世界之外的人打开了 NDBAPI 的大门,许多新的和令人兴奋的想法可能会出现。如何编译? 我已经列出了如何编译 ...

    mysql驱动文件jar包

    它实现了Java Database Connectivity (JDBC) API,允许Java程序通过标准接口与MySQL数据库进行通信。 1. JDBC API简介:JDBC是Java中用于访问各种类型数据库的标准API,由Sun Microsystems(现Oracle公司)开发。它...

Global site tag (gtag.js) - Google Analytics