黄凤灵 2023-11-30 16:08 采纳率: 0%
浏览 5

mycat执行存储过程卡住问题

环境:mysql:5.7.31 mycat:5.6.29-mycat-1.6.5-release-20180122220033

环境:linux

问题描述:

存储过程如下:

delimiter $$
CREATE DEFINER=`middb`@`%` PROCEDURE `weixin`.`test1`()
BEGIN
select * from test1;
commit;
END$$
delimiter ;

通过mysql去执行call test1()正常返回结果并退出到命令行

通过mycat执行返回结果后卡住,不会退回到mysql>命令行

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-30 18:44
    关注

    【以下回答由 GPT 生成】

    根据您描述的情况,mycat执行存储过程之后卡住没有回到mysql>命令行的问题,可能是因为mycat的配置文件中没有正确配置存储过程的路由规则。

    解决方法如下:

    1. 首先,请确保您的mycat版本支持存储过程。您提供的mycat版本为5.6.29-mycat-1.6.5-release-20180122220033,如果此版本不支持存储过程,建议升级到支持存储过程的版本。

    2. 查看您的mycat配置文件中是否正确配置了存储过程的路由规则。

    打开mycat的配置文件server.xml,通常位于mycat的conf目录下。

    1. 在配置文件中找到<dataNode name="dn1" dataHost="localhost" database="weixin" />,确保database属性值与存储过程所在的数据库名一致。

    2. 在配置文件中找到<dataHost name="localhost" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">, 确保dbType属性值为mysqldbDriver属性值为native

    3. 确保您的配置文件中已经定义了存储过程的路由规则。在配置文件中找到<schema name="weixin" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">,在其内部添加以下配置:

    ```xml

    ```

    请注意,<rule>标签内的<columns><function><run-on-nodes>分别用于配置存储过程的输入参数、函数形式和执行的节点。根据实际情况进行配置。

    1. 保存并关闭mycat的配置文件。

    2. 重启mycat服务。

    现在尝试使用mycat执行存储过程,看是否能正常返回结果并回到mysql>命令行。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 11月30日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见