將數據庫拆分到不同物理機下以后,原來的跨庫查詢語句就不能用了,有什么比較好的代替方案?
3 回答

四季花海
TA貢獻1811條經驗 獲得超5個贊
跨庫查詢意味著你的請求會發(fā)往多個數據庫,然后多個數據庫會有多個返回結果集,這是客觀事實。
解決的方法有兩種,一種是應用層程序對查詢請求進行分發(fā),對返回結果進行合并,另外一種是交給據有分庫分表功能的數據庫中間件來幫你屏蔽掉后面的多個數據源,這種方式應用層的代碼無需改動。
應用層的現成方案有當當網開源的sharding-jdbc,數據庫中間件可以選用cobar,mycat,openddal等開源軟件。

白衣染霜花
TA貢獻1796條經驗 獲得超10個贊
解決方案:
1.你用的tddl或者cobar它都是在業(yè)務層面之下的分庫路由,所以你可以在測試用例里面寫一個demo,每次把sql當做字符串,運行測試用例,來查詢數據。
2.跨庫查詢,在mybatis中帶數據庫名是可以的。
添加回答
舉報
0/150
提交
取消