至于其他的场景 。如同时主从和分表分库也是支持的了 。只要了解这个实现以后再去修改配置 。都是可以实现的 。而热备及故障专业官方推荐使用haproxy配合一起使用 。大家可以试试 。
使用
Mycat的启动也很简单 。启动命令在Bin目录:

文章插图
如果在启动时发现异常 。在logs目录中查看日志 。
wrapper.log 为程序启动的日志 。启动时的问题看这个
mycat.log 为脚本执行时的日志 。SQL脚本执行报错后的具体错误内容,查看这个文件 。mycat.log是最新的错误日志 。历史日志会根据时间生成目录保存 。
mycat启动后 。执行命令不成功 。可能实际上配置有错误 。导致后面的命令没有很好的执行 。
Mycat带来的最大好处就是使用是完全不用修改原有代码的 。在mycat通过命令启动后 。你只需要将数据库连接切换到Mycat的地址就可以了 。如下面就可以进行连接了:

文章插图
连接成功后可以执行sql脚本了 。
所以 。可以直接通过sql管理工具(如:navicat、datagrip)连接 。执行脚本 。我一直用datagrip来进行日常简单的管理 。这个很方便 。
Mycat还有一个管理的连接 。端口号是9906.

文章插图
连接后可以根据管理命令查看Mycat的运行情况 。当然 。喜欢UI管理方式的人 。可以安装一个Mycat-Web来进行管理 。有兴趣自行搜索 。
简而言之 。开发中使用Mycat和直接使用Mysql机会没有差别 。
常见问题
使用Mycat后总会遇到一些坑 。我将自己遇到的一些问题在这里列一下 。希望能与大家有共鸣:
Mycat是不是配置以后 。就能完全解决分表分库和读写分离问题?
Mycat配合数据库本身的复制功能 。可以解决读写分离的问题 。但是针对分表分库的问题 。不是完美的解决 。或者说 。至今为止 。业界没有完美的解决方案 。
分表分库写入能完美解决 。但是 。不能完美解决主要是联表查询的问题 。Mycat支持两个表联表的查询 。多余两个表的查询不支持 。其实 。很多数据库中间件关于分表分库后查询的问题 。都是需要自己实现的 。而且节本都不支持联表查询 。Mycat已经算做地非常先进了 。
分表分库的后联表查询问题 。大家通过合理数据库设计来避免 。
Mycat支持哪些数据库 。其他平台如 .net、PHP能用吗?
官方说了 。支持的数据库包括MySQL、SQL Server、Oracle、DB2、PostgreSQL 等主流数据库 。很赞 。
尽量用Mysql,我试过SQL Server 。会有些小问题 。因为部分语法有点差异 。
Mycat 非JAVA平台如 .net、PHP能用吗?
可以用 。这一点MyCat做的也很棒 。
- 国内有哪些优秀的AI电销机器人开发公司?
- 波士顿公司的机器人因为其漂亮的后空翻成了网红,开发机器人的知名创业公司有哪些?
- 如何将自己开发的网站部署到阿里云上?
- 以大疆无人机公司的人工智能开发能力,如果给他们一台X-47B原机硬件,他们能否实现航母起降等功能呢?
- Edge浏览器怎么打开开发者模式?
- 2023中山市火炬开发区高层次人才免费体检
- 游戏我的世界是Java版好玩还是PC版好玩?
- 曾经开发过《拳皇2001》和《拳皇2002》的韩国公司,还打造过哪些经典游戏?
- 微信小程序开发者文档是什么?微信小程序开发者文档地址分享
- 开发手机app都需要哪些软件?
