V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
0576coder
V2EX  ›  Java

关于 mysql-connector- Java 在执行 insert 跟 update 之前都要去读取一下数据库是否 read only 这合理吗?

  •  
  •   0576coder · Jun 28, 2021 · 1841 views
    This topic created in 1769 days ago, the information mentioned may be changed or developed.

    版本

    mysql-connector-java 8.0.x

    问题 执行 insert 或者 update 的时候都回去判断数据库是否只读,手动查看源码在这里

    这里就是判断了数据库版本版本 然后根据版本不同去

    select @@session.tx_read_only

    select @@session.transaction_read_only

    虽然这样做很严谨 但是我感觉读写分离之类的应该在数据库中间件或者手动指定库来区别,为什么要多次一举这么设计

    4 replies    2021-06-29 02:29:23 +08:00
    nullcoder
        1
    nullcoder  
       Jun 28, 2021 via Android
    很合理,他有它的道理
    nullcoder
        2
    nullcoder  
       Jun 28, 2021 via Android
    但我可能解释不好
    0576coder
        3
    0576coder  
    OP
       Jun 29, 2021
    @nullcoder

    为啥 这样还多了一次查询- - 虽然可以通过 useLocalSessionState 设为 true 让他不走这段逻辑
    akira
        4
    akira  
       Jun 29, 2021   ❤️ 1
    你是否有考虑过,用户的环境可能性有多少 稀奇古怪的情况
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2503 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 08:41 · PVG 16:41 · LAX 01:41 · JFK 04:41
    ♥ Do have faith in what you're doing.