gpt4 book ai didi

mysql - 同步mysql中的存储过程

转载 作者:可可西里 更新时间:2023-11-01 08:34:05 24 4
gpt4 key购买 nike

我有两个应用程序,它们都在 MySQL 中使用相同的存储过程。我希望这个过程是同步的,也就是说,当一个应用程序调用它时,另一个应用程序必须等待。

有没有办法在不改变应用程序代码的情况下(即只修改存储过程)做到这一点?

谢谢,克丽丝

最佳答案

您完全可以在存储过程中执行此操作而无需更改您的应用程序代码,但请记住,您将引入锁定问题和超时的可能性。

使用GET_LOCK()RELEASE_LOCK()照顾同步。运行 GET_LOCK 以在存储过程开始时执行同步,并在完成后运行 RELEASE_LOCK:

IF (GET_LOCK('lock_name_for_this_SP', 60)) THEN
.... body of SP
RELEASE_LOCK('lock_name_for_this_SP');
ELSE
.... lock timed out
END IF

您还需要注意您的应用程序超时时间是否长于锁定超时时间,以免引发其他问题。

关于mysql - 同步mysql中的存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18438762/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com