Navicat连接mycat可以看到库表,双击数据表提示:1146 - table ‘testdb.student‘ doesn‘t exist

在使用Mycat时,由于配置的逻辑库名TESTDB与实际数据库名test不一致,导致通过Navicat查看数据表内容时报错。日志显示查询语句使用了错误的库名。修正方案是将Mycat的server.xml和schema.xml中逻辑库名改为与真实库名相同,重启服务后,重新连接Navicat即可解决问题,查询表数据恢复正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直连数据库(不走mycat) 是可以看到如下数据的:
在这里插入图片描述mycat配置:
在这里插入图片描述我本身数据库的库名是test,在网上搜索mycat使用教程时看到大家mycat的逻辑库名都配置的是TESTDB,我也就没改,这样的话在使用navicat连接mycat时看到的数据库名也是TESTDB,如下图:
在这里插入图片描述
然后表也是有的,但是双击数据表想看内容时报错如下:
在这里插入图片描述
一时间觉得想不通,然后去看数据库的日志:
在这里插入图片描述
顿时有点恍然大悟了,我的数据库名是test的,但是配置 了逻辑库名TESTDB后,查询表数据时候就用了逻辑库名去找表(TESTDB.student),这样肯定找不到啊,于是我打算把逻辑库名改为和真实库名一样,再试试:

mycat的server.xml和schema.xml修改后如下:在这里插入图片描述

这时重启mycat服务,然后双击表名就能查到数据了:
在这里插入图片描述

如果你还有提示找不到表,试试断开Navicat和Mycat的连接,重新连接下,然后就好了。

这时再去看数据库日志:
在这里插入图片描述日志也正常了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值