1.Atlas是否支援多字元集?
對多字元集的支援是我們對原版MySQL-Proxy的第一項改進,符合國情是必須的。並且支援用戶端在串連時指定預設字元集。
2.Atlas是否支援事務操作?
支援,且處於事務狀態的用戶端中途退出時,Atlas會銷毀該用戶端使用的串連,讓背景mysql復原事務,保證了事務的完整性。
3.自動讀寫分離挺好,但有時候我寫完馬上就想讀,萬一主從同步延遲怎麼辦?
SQL語句前增加 /*master*/ 就可以將讀請求強制發往主庫。在mysql命令列測試該功能時,需要加-c選項,以防mysql用戶端過濾掉注釋資訊。
4.主庫宕機,讀操作受影響嗎?
在Atlas中讀操作不受影響,Atlas會將讀請求轉寄到其他還存活的從庫上。但此時寫請求將會失敗,因為主庫宕機了。
5.檢測後端DB狀態會阻塞正常請求嗎?
不會, atlas中檢測線程是非同步進行檢測的,即使有db宕機,也不會阻塞主流程。在Atlas中沒有什麼異常會讓主流程阻塞。
6.想下線一台DB, 又不想停掉mysql server, 怎麼辦?
可以通過管理介面手動上下線後端db, Atlas會優先考慮管理員的意願。
7.想給叢集中增加一台DB, 不想影響線上正常訪問可以嗎?
通過管理介面可以輕鬆實現。
8.相比官方mysql-proxy, Atlas還有哪些改進?
A: 這實在是個難以回答的問題,效能,穩定性,可靠性,易維護性,我們做過幾十項的改進,下面會盡量列一些較大的改動
9.Atlas支援mysql的prepare特性嗎?
目前Atlas部分支援prepare功能,支援java,python,PHP(PDO方式)。
10.Altas支援多個主庫的運行模式嗎?
目前還未對於Atlas後面掛接多個主庫的情形進行測試過,不建議這樣使用。建議使用一主一從或一主多從的模式。
11.在使用Atlas的過程中,發現了Atlas存在的bug或者對Atlas有新的功能需求,如何反饋給開發人員?
對於使用者反饋的bug,我們非常重視。歡迎使用者將bug的複現的環境、步驟和運行發郵件至zhuchao[AT]360.cn。同時如果使用者在實際的應用情境中,對Atlas有新的功能需求,也可以向我們發郵件,我們將及時回複。另外有熱心網友建了QQ群326544838,開發人員也已經加入,方便討論。
12.java程式串連Atlas出現亂碼問題
把jdbc串連中的amp;刪除掉,例如:將
jdbc:mysql://10.10.10.37:3306/user_db?useUnicode=true&characterEncoding=utf-8&autoReconnect=true
修改為:
jdbc:mysql://10.10.10.37:3306/user_db?useUnicode=true&characterEncoding=utf-8&autoReconnect=true
13.監控主從同步之間的延遲?
Atlas不負責MySQL的主從同步操作,需要DBA自己管理。
14.java程式串連Atlas發現不能讀寫分離,所有的請求都發向主庫,這是為什嗎?
檢查一下java架構,是不是預設將autocommit設定為0了,很多java架構將語句都封裝在一個事務中,而Atlas會將事務請求都發向主庫。
15.Atlas有sql語句黑名單過濾機制嗎?
有的,Atlas會屏蔽不帶where條件的delete和update操作,以及sleep函數。