上篇简单介绍了如何在Windows环境下建立配置MySQL集群,这里用一个实现注册功能的小Demo通过jdbc的方式连接到MySQL集群中。

外部程序想要远程连接到mysql集群,还需要做的一个操作就是设置sql节点的mysql可以被远程连接。
具体操作为:

mysql> grant all privileges on MySQL_Cluster_Test.* to root@'%' identified by '';
mysql> flush privileges;

表示将MySQL_Cluster_Test这个数据库中所有的表授权给所有机器,登录名为root,密码为空。如果只指定某台机器可以连接此数据节点,那把“%”换成相应IP即可。

UserDAO代码:

public class UserDAO{/*** 添加用户* @param name 用户名* @param age 用户年龄* @return*/public boolean AddUser(String name,int age){boolean result=false;//返回值默认为falseConnection conn=null;//创建数据库连接对象ConnectionPreparedStatement pstmt=null;//创建预处理对象PreparedStatementtry {//注册驱动Class.forName("com.mysql.jdbc.Driver");//建立连接conn=DriverManager.getConnection("jdbc:mysql://192.168.25.48:3306/MySQL_Cluster_Test","root","");       }catch (Exception e){e.printStackTrace();}try{          String sql="insert into T_User (Name,Age) values(?,?)";pstmt=conn.prepareStatement(sql);pstmt.setString(1, name);          pstmt.setInt(2, age);int count=pstmt.executeUpdate();   //更新数据库并返回受影响行数if(count>0){result=true;}}catch(Exception e){e.printStackTrace();}return result;}/*** 查询所有用户* @return List<User>*/public List<User> QueryAllUsers(){List<User> userList=new ArrayList<User>();Connection conn=null;Statement stmt=null;try {//注册驱动Class.forName("com.mysql.jdbc.Driver");//建立连接conn=DriverManager.getConnection("jdbc:mysql://192.168.25.48:3306/MySQL_Cluster_Test","root","");        }catch (Exception e){e.printStackTrace();}try {String sql = "select * from T_User";stmt=conn.createStatement();ResultSet rs =stmt.executeQuery(sql);while(rs.next()){User tmpUser=new User();tmpUser.setName(rs.getString("Name"));tmpUser.setAge(rs.getInt("Age"));userList.add(tmpUser);}} catch (SQLException e) {e.printStackTrace();}return userList;}
}

如果前面的MySQL集群配置好的话,就可以实现多个服务器上发布的外部程序都可以共享、操作整个集群中的数据。但此时的MySQL集群还无法实现负载均衡和读写分离的效果,只起到了数据备份的作用。后面将继续研究如何实现MySQL集群的负载均衡和读写分离。

(以上只是主要代码,如果需要整个项目,可以点击【下载地址】下载源码)

【MySQL集群】——Java程序连接MySQL集群相关推荐

  1. java为什么运行不了mysql_运行java程序连接mysql数据库是出现如下结果怎么回事?...

    运行java程序连接mysql数据库是出现如下结果怎么回事? 关注:160  答案:3  mip版 解决时间 2021-01-24 13:56 提问者你若离去丶巴掌扇去 2021-01-24 05:2 ...

  2. java linux mysql数据库_Linux Java连接MySQL数据库

    Linux(Ubuntu平台)Java通过JDBC连接MySQL数据库,与Windows平台类似,步骤如下: 解压 jdbc: tar -zxvf mysql-connector-java-5.1.1 ...

  3. java 连接mysql 8.0,java连接mysql 8.0的问题

    mysql 8.0 是现在较新的版本,所以很多项目都开始用户mysql 8,在使用java连接mysql 8的时候,很多人想当然觉得需要使用新的连接驱动程序,比如mysql-connector-jav ...

  4. java连接mysql数据库 R,java连接MySql数据库!

    package com.roytel.rtccp.util; import java.sql.*; public class DBManager { //用户名 private String user ...

  5. mysql gunzip 远程,Java 操作mysql 导入|导出 gzip|gunzip 工具类

    package util; import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import ...

  6. MySQL——Java 访问 MySQL 数据库

    一.   下载与安装 MySQL   Connector/J MySOL  驱动  MySQL Connector/J  下载网站 https://dev.mysql.com/downloads/co ...

  7. MySQL安装与java配合

    MySQL安装与java配合 MySQL下载地址:https://dev.mysql.com/downloads/mysql/ 这个是安装数据库服务器 选择不用了,请开始下载 (1)选择微软windo ...

  8. 【java 操作mysql】java连接mysql数据库并查询数据

    做java开发不可避免要处理数据库,所以这里写篇用jdbc来连接mysql的文章,java是一种高性能,通用的语言 .这使得它适合于编写高效的ETL生产代码和计算密集型的机器学习算法. 主要内容包括: ...

  9. java连接MySQL几种方法_Java连接MySQL数据库三种方法

    好久没有更新博客了!今天利用周目时学习了一下数据库mysql.介绍一下数据库的三种连接方式! 开发工具:Myeclipse MySQL5.6 MySQL连接驱动:mysql-connector-jav ...

最新文章

  1. tableau必知必会之用 Fixed 函数实现客户回购分析
  2. Go语言程序结构分析初探
  3. 【新版上线】网易云点播内容加密服务正式发布啦!
  4. pexpect与fabric
  5. 封装属性_「Python基础学习」之封装大法
  6. Python精简入门级学习(二)
  7. Python之网络编程(TCP套接字与UDP套接字)
  8. 中国酒器市场趋势报告、技术动态创新及市场预测
  9. Android对话框_详解
  10. 游戏开发中的向量数学
  11. 微信小程序 环形进度条_微信小程序实现圆形进度条
  12. 零信任大风已起,网络安全理念重塑,百亿市场空间有望开启
  13. opencv中使用摄像头录制视频
  14. 新能源汽车行业研究报告
  15. linux安装mysql centos_Linux CentOS安装Mysql
  16. java 替换指定位置的字符_java Sting 如何替换指定位置的 字符?
  17. [HNOI2001] 产品加工
  18. 数字图像处理——图像退化与复原
  19. python3 爬虫相关学习7:使用 BeautifulSoup下载网页图片到本地文件夹
  20. 洛谷-P1010-幂次方-普及(摁写+递归/二进制+递归)

热门文章

  1. html中如何插入pdf文件,如何创建PDF文件
  2. AR+LBS线下社交游戏尝试
  3. LabVIEW入门第三天(软件及驱动包下载)
  4. RC4原理以及Python实现
  5. vue 自定义指令 directives
  6. ins的更新带来的一系列问题
  7. js 判断是域名还是ip并获取当前url中指定部分
  8. 解决文件名是中文时的下载乱码问题
  9. jquery遍历对象,数组,集合
  10. vscode默认输出到调试控制台