日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

重要

本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業(yè)務(wù)造成影響,請務(wù)必仔細(xì)閱讀。

本文介紹PolarDB MySQL版的常見問題和解答。

基本問題

  • Q:什么是PolarDB

    A:PolarDB是一個關(guān)系型數(shù)據(jù)庫云服務(wù),目前已在全球十多個地域(Region)的數(shù)據(jù)中心部署,向用戶提供開箱即用的在線數(shù)據(jù)庫服務(wù)。PolarDB目前支持3種獨立的引擎,分別可以100%兼容MySQL、100%兼容PostgreSQL、高度兼容Oracle語法,存儲容量最高可達200 TB。詳情請參見什么是PolarDB MySQL企業(yè)版

  • Q:為什么云原生數(shù)據(jù)庫PolarDB優(yōu)于傳統(tǒng)數(shù)據(jù)庫?

    A:相較于傳統(tǒng)數(shù)據(jù)庫,云原生數(shù)據(jù)庫PolarDB支持上百TB級別海量數(shù)據(jù)存儲,提供高可用和高可靠保障、快速彈性升降級、無鎖備份等功能,詳情請參見產(chǎn)品優(yōu)勢

  • Q:PolarDB是什么時候發(fā)布?什么時候開始商用?

    A:2017年9月發(fā)布公測,2018年3月開始商用。

  • Q:集群和節(jié)點分別指的是什么?

    A:PolarDB集群版采用多節(jié)點集群的架構(gòu),集群中有一個主節(jié)點和多個只讀節(jié)點。單個PolarDB集群支持跨可用區(qū),但不能跨地域,面向集群進行管理和計費。詳情請參見術(shù)語

  • Q:支持哪些編程語言?

    A:PolarDB支持Java、Python、PHP、Golang、C、C++、.NET、Node.js等編程語言。只要支持原生MySQL的編程語言都可以直接使用PolarDB MySQL版,詳情請參見MySQL官網(wǎng)

  • Q:支持哪些存儲引擎?

    A:PolarDB支持2種產(chǎn)品系列,不同系列支持的存儲引擎詳情如下:

    PolarDB MySQL版集群版全部表均使用InnoDB存儲引擎。創(chuàng)建表的時候,PolarDB MySQL版會自動將非InnoDB引擎(如MyISAM、Memory、CSV等)轉(zhuǎn)換為InnoDB引擎,因此即使遷移之前的數(shù)據(jù)表不是InnoDB,也仍然能夠正常遷移至PolarDB MySQL版

  • Q:是否支持自建Slave實例,是否有推薦的實現(xiàn)方式?

    A:支持。啟用Binlog后可以將PolarDB MySQL版同步到其他MySQL庫,構(gòu)成Master-Slave架構(gòu)。為方便后續(xù)維護,建議您使用數(shù)據(jù)傳輸服務(wù)DTS(Data Transmission Service),關(guān)于如何使用DTS實現(xiàn)同步,請參見PolarDB MySQL版同步至RDS MySQL

  • Q:PolarDB是分布式數(shù)據(jù)庫嗎?

    A:是的,PolarDB是基于Parallel Raft一致性協(xié)議的分布式存儲集群,計算引擎是由1~16個分布在不同服務(wù)器上的計算節(jié)點構(gòu)成,存儲容量最高可達200 TB,最高支持88核710 GB內(nèi)存,可在線動態(tài)擴容存儲和計算資源,擴容時不會影響業(yè)務(wù)的正常運行。

  • Q:購買PolarDB后,如果需要分庫分表是否還需要購買PolarDB-X數(shù)據(jù)庫中間件?

    A:是的。

  • Q:PolarDB是否支持表的分區(qū)?

    A:支持。

  • Q:PolarDB是否已經(jīng)自動包含了分區(qū)機制?

    A:PolarDB在存儲層做了分區(qū),對用戶透明,無感知。

  • Q:單節(jié)點系列是如何保證服務(wù)可用性和數(shù)據(jù)可靠性呢?

    A:單節(jié)點是基于單個計算節(jié)點提供特定用途的數(shù)據(jù)庫產(chǎn)品。雖然只有一個節(jié)點,但單節(jié)點借助秒級計算調(diào)度、分布式多副本存儲等技術(shù),依舊可以保證服務(wù)的高可用性和數(shù)據(jù)的高可靠性。

  • Q:在DMS中執(zhí)行SQL時,出現(xiàn)如下報錯,該如何處理?事務(wù)報錯

    A:這個報錯是由鎖等待超時導(dǎo)致的,具體的原因是有未提交的事務(wù)阻塞了當(dāng)前的會話。建議您重新登錄DMS控制臺新建連接會話,再次執(zhí)行SQL命令。

  • Q:如何購買單節(jié)點形態(tài)的PolarDB集群?

    A:當(dāng)前單節(jié)點產(chǎn)品系列已經(jīng)下線,但您可以在購買集群時將節(jié)點個數(shù)中只讀節(jié)點個數(shù)設(shè)置為0,即可購買單節(jié)點形態(tài)的PolarDB集群。

兼容性

  • Q:是否兼容社區(qū)版MySQL?

    A:PolarDB MySQL版可以100%兼容社區(qū)版MySQL。

  • Q:支持哪些事務(wù)隔離級別?

    A:PolarDB MySQL版支持READ_UNCOMMITTED、READ_COMMITTED(默認(rèn))、REPEATABLE_READ這三種隔離級別,不支持SERIALIZABLE隔離級別。

  • Q:SHOW PROCESSLIST與社區(qū)版MySQL是否存在差異?

    A:如果是通過主地址查詢,兩者沒有區(qū)別。但如果是通過集群地址查詢,略有差異,此時會出現(xiàn)有多條相同Thread ID的記錄,分別對應(yīng)PolarDB MySQL版集群中的每一個節(jié)點。

  • Q:PolarDB MySQL版MDL鎖機制和社區(qū)版MySQL是否存在差異?

    A:PolarDB MySQL版與社區(qū)版MySQL的MDL機制保持一致。但由于PolarDB MySQL版的數(shù)據(jù)庫節(jié)點是基于共享存儲的架構(gòu),這將導(dǎo)致主節(jié)點在執(zhí)行DDL操作的時候,只讀節(jié)點可能會查詢到DDL操作的中間數(shù)據(jù)而出現(xiàn)數(shù)據(jù)不一致的問題。因此,PolarDB MySQL版會將DDL操作中涉及到的Exclusive MDL鎖通過Redo日志同步到只讀節(jié)點上,以阻止只讀節(jié)點上其它用戶線程在DDL操作過程中訪問表數(shù)據(jù)。在特定場景下,這可能會堵塞DDL操作。您可以通過show processlist命令查看DDL操作的執(zhí)行狀態(tài),若執(zhí)行狀態(tài)為Wait for syncing with replicas,則說明發(fā)生了上述情況。具體解決措施請參考查看DDL執(zhí)行狀態(tài)和MDL鎖狀態(tài)

  • Q:Binlog格式和MySQL原生格式是否存在差異?

    A:沒有差異。

  • Q:是否支持performance schema和sys schema?

    A:支持。

  • Q:表統(tǒng)計信息收集和社區(qū)版MySQL是否存在差異?

    A:PolarDB MySQL版主節(jié)點的表統(tǒng)計信息和社區(qū)版MySQL一致。為了保證主節(jié)點和只讀節(jié)點執(zhí)行計劃的一致性,主節(jié)點每次更新統(tǒng)計信息時,會同步到只讀節(jié)點。此外,只讀節(jié)點還可以通過ANALYZE TABLE操作,主動從磁盤加載最新的統(tǒng)計信息。

  • Q:PolarDB是否支持XA事務(wù),和官方MySQL是否存在差異?

    A: 支持,沒有差異。

  • Q:PolarDB是否支持全文索引?

    A:支持。

    說明

    目前,用戶使用全文索引時,只讀節(jié)點存在一定的索引緩存數(shù)據(jù)延遲,建議讀寫全文索引的操作都使用主地址,以讀到最新的數(shù)據(jù)。

  • Q:是否支持Percona工具集?

    A: 支持,但是建議您使用online DDL。

  • Q:是否支持gh-ost?

    A:支持,但是建議您使用online DDL。

費用

  • Q:PolarDB的費用都包含哪些?

    A:包含存儲空間、計算節(jié)點、備份(附贈免費額度)、SQL洞察(可選),詳情請參見計費項概覽

  • Q:收費的存儲空間都包含哪些內(nèi)容?

    A:包含數(shù)據(jù)庫表文件、索引文件、undo日志文件、Redo日志文件、Binlog文件、slowlog文件及少量的系統(tǒng)文件,詳情請參見概覽

  • Q:PolarDB的存儲包怎么用?

    A:購買的包年包月或按量付費的集群,均可使用存儲包抵扣存儲費用。例如您有3個存儲容量均為40 GB的集群(即總?cè)萘繛?20 GB),這3個集群可以共享一個100 GB的存儲包,多出的20 GB則按量計費,詳情請參見購買存儲包

  • Q:如果增加一個只讀節(jié)點,價格如何收費?

    A:只讀節(jié)點的價格和主節(jié)點的價格一致,請參見計算節(jié)點價格細(xì)則

  • Q:如果增加一個只讀節(jié)點,存儲容量是否會增大一倍?

    A:PolarDB采用計算與存儲分離的架構(gòu),購買的只讀節(jié)點是計算資源,因此存儲容量不會增加。

    存儲空間采用Serverless方式,購買時無需選擇容量,隨著數(shù)據(jù)增長而在線自動擴容,只按實際數(shù)據(jù)量大小收費。每個集群規(guī)格都有對應(yīng)的最大存儲容量。如需提高存儲容量上限,請升級集群規(guī)格

  • Q:如何釋放包年包月的PolarDB集群?

    A:包年包月的集群無法直接釋放,需要走退訂流程。具體請參見退款說明

  • Q:按量付費的集群,如何操作不再產(chǎn)生費用?

    A:如果您確認(rèn)不再使用該集群,可以釋放集群。集群釋放后將不再產(chǎn)生費用。

  • Q:臨時升配期間的集群還可以變配嗎?

    A:臨時升配期間(集群狀態(tài)為運行中)支持手動升配,但是不支持手動降配、自動變配和增加或刪除節(jié)點

  • Q:PolarDB的公網(wǎng)帶寬是多少?是否會產(chǎn)生費用?

    A:PolarDB本身沒有公網(wǎng)帶寬限制,主要取決于您所使用的SLB服務(wù)的帶寬。PolarDB的公網(wǎng)連接不收費。

  • Q:為什么包年包月的集群每天還有費用產(chǎn)生?

    A:PolarDB的計費項主要包括:計算節(jié)點(主節(jié)點和只讀節(jié)點)、存儲空間、數(shù)據(jù)備份(僅超出免費額度時收費)、SQL洞察(可選)、全球數(shù)據(jù)庫網(wǎng)絡(luò)GDN(可選),具體請參考計費項概覽。包年包月是指在新建數(shù)據(jù)庫集群時您需預(yù)支付集群的計算節(jié)點費用,但存儲空間、數(shù)據(jù)備份和SQL洞察的費用不包含在內(nèi)。實際使用數(shù)據(jù)庫的過程中,會根據(jù)集群所占用的存儲空間,從賬戶中按小時扣除一定的存儲空間的費用。因此在包年包月的購買方式下,依舊會產(chǎn)生按量付費的賬單。

  • Q:RDS一鍵遷移至PolarDB是否額外收費?

    A:一鍵遷移過程免費,僅收取RDS實例和PolarDB集群本身的費用。

  • Q:為什么PolarDB表數(shù)據(jù)使用delete刪除后仍然收取存儲空間費用?

    A:delete只是給表打上刪除的標(biāo)記,并不會釋放表空間。

集群訪問(讀寫分離)

  • Q:如何實現(xiàn)PolarDB的讀寫分離?

    A:只需在應(yīng)用程序中使用集群地址,即可根據(jù)配置的讀寫模式實現(xiàn)讀寫分離,詳情請參見配置數(shù)據(jù)庫代理

  • Q:一個PolarDB集群內(nèi)最多可以支持多少個只讀節(jié)點?

    A:PolarDB采用分布式集群架構(gòu),一個集群包含一個主節(jié)點和最多15個只讀節(jié)點(至少一個,用于保障高可用)。

  • Q:多個只讀節(jié)點間負(fù)載不均衡的原因是什么?

    A:只讀節(jié)點間負(fù)載不均衡的原因有只讀節(jié)點連接數(shù)較少、自定義集群地址分配時未包括某個只讀節(jié)點等。

  • Q:造成主節(jié)點負(fù)載高或低的原因是什么?

    A:造成主節(jié)點(主庫)負(fù)載高的原因有直連主地址、主庫接受讀請求、存在大量的事務(wù)請求、主從復(fù)制延遲高導(dǎo)致請求被路由到主庫、只讀節(jié)點異常導(dǎo)致讀請求被路由到主庫等。

    而主節(jié)點負(fù)載較低的原因可能是主庫開啟了不接受讀選項。

  • Q:怎么降低主節(jié)點的負(fù)載?

    A: 您可以使用如下幾種方式降低主節(jié)點負(fù)載:

    • 使用集群地址來連接PolarDB集群,詳情請參見配置數(shù)據(jù)庫代理

    • 如果由于事務(wù)較多導(dǎo)致主節(jié)點壓力大,您可以通過控制臺打開事務(wù)拆分功能,把事務(wù)中的部分查詢路由到只讀節(jié)點,詳情請參見事務(wù)拆分

    • 如果由于復(fù)制延遲導(dǎo)致請求被路由到主庫,您可以考慮降低一致性等級(如使用最終一致性),詳情請參見一致性級別

    • 主庫接受讀請求,可能也會導(dǎo)致主庫負(fù)載高,您可以通過控制臺開啟主庫不接受讀功能,減少讀請求被路由到主庫,詳情請參見主庫不接受讀

  • Q:為什么讀不到剛插入的數(shù)據(jù)?

    A:該問題可能是由于一致性級別的配置導(dǎo)致的,PolarDB的集群地址支持如下幾種一致性級別:

    • 最終一致性:不論是同一會話(連接)或不同會話,最終一致性都不保證讀能夠馬上讀到剛插入的數(shù)據(jù)。

    • 會話一致性:一定能夠讀到同一會話插入之后的數(shù)據(jù)。

    • 全局一致性:保證同一會話和不同會話都能夠讀到最新數(shù)據(jù)。

    說明

    一致性等級越高,性能越差,對主庫的壓力越大,請謹(jǐn)慎選擇。對于大多數(shù)應(yīng)用場景會話一致性能夠保證業(yè)務(wù)正常工作,對于少數(shù)有強一致性的需求的語句,可以通過Hint /* FORCE_MASTER */來實現(xiàn),詳情請參見一致性級別

  • Q:如何強制SQL到主節(jié)點執(zhí)行?

    A:使用集群地址時,在SQL語句前加上/* FORCE_MASTER *//* FORCE_SLAVE */,即可強制指定這條SQL的路由方向,詳情請參見HINT語法

    • /* FORCE_MASTER */強制請求被路由到主庫。該用法可以用于解決少數(shù)一致性要求較高的讀請求的場景。

    • /* FORCE_SLAVE */強制請求被路由到從庫。該用法可以用于解決少數(shù)PolarDB代理由于保證正確性,要求特殊語法被路由到從庫的場景(比如存儲過程的調(diào)用,multistatement的使用等語句默認(rèn)是會被路由到主庫)。

    說明
    • Hint的路由優(yōu)先級最高,不受一致性級別和事務(wù)拆分的約束,使用前請進行評估。

    • Hint語句里不要有修改 GUC 參數(shù)的語句,例如/*FORCE_SLAVE*/ set enable_hashjoin = off; 等,這類語句可能導(dǎo)致查詢結(jié)果非預(yù)期。

  • Q:是否可以給不同的業(yè)務(wù)分配不同的地址?不同地址間是否可以達到隔離的效果?

    A:您可以創(chuàng)建多個自定義地址給不同的業(yè)務(wù)使用,若底層節(jié)點不同則自定義地址間可同時具備隔離的效果,不會互相影響。關(guān)于如何創(chuàng)建自定義地址,詳情請參見新增自定義集群地址

  • Q:如果有多個只讀節(jié)點,如何為其中某個只讀節(jié)點單獨創(chuàng)建單節(jié)點地址?

    A:僅當(dāng)集群地址讀寫模式為只讀且集群內(nèi)擁有三個及以上節(jié)點時,才支持創(chuàng)建單節(jié)點地址,詳細(xì)操作步驟請參見設(shè)置集群地址

    警告

    創(chuàng)建單節(jié)點地址后,當(dāng)此節(jié)點故障時,該地址可能會出現(xiàn)最多1小時不可用的情況,請勿用于生產(chǎn)環(huán)境。

  • Q:一個集群內(nèi)最多允許創(chuàng)建多少個單節(jié)點地址?

    A:如果您的集群內(nèi)有3個節(jié)點,則只允許為其中1個只讀節(jié)點創(chuàng)建單節(jié)點地址;若集群內(nèi)有4個節(jié)點,則允許為其中2個只讀節(jié)點創(chuàng)建各自的單節(jié)點地址,以此類推。

  • Q:只用了主地址,但是發(fā)現(xiàn)只讀節(jié)點也有負(fù)載,是否主地址也支持讀寫分離?

    A:主地址不支持讀寫分離,始終只連接到主節(jié)點。只讀節(jié)點有少量QPS是正常現(xiàn)象,與主地址無關(guān)。

管理與維護

  • Q:如何在線添加字段和索引?

    A:支持原生自帶的online DDL、pt-osc和gh-ost等工具,建議您使用自帶的online DDL操作。

    說明

    使用pt-osc工具時,請不要使用用于設(shè)置主從檢測的相關(guān)參數(shù),如參數(shù)recursion-method。因為pt-osc工具是基于Binlog復(fù)制進行主從檢測的,但PolarDB內(nèi)部采用的是物理復(fù)制,沒有基于Binlog的復(fù)制信息。

  • Q:是否支持bulk insert功能?

    A:支持。

  • Q:若只向只寫節(jié)點寫入數(shù)據(jù),是否支持bulk insert?一次最多支持insert多少個values?

    A:支持。一次最多支持的values數(shù)量由max_allowed_packet參數(shù)值決定,詳細(xì)請參見Replication and max_allowed_packet

  • Q:是否支持通過集群地址執(zhí)行bulk insert操作?

    A:支持。

  • Q:主節(jié)點(主)與只讀節(jié)點(備)是否存在復(fù)制延遲?

    A:是,它們之間存在毫秒級延遲。

  • Q:什么情況下會導(dǎo)致復(fù)制延遲增大?

    A:出現(xiàn)如下情況時會導(dǎo)致復(fù)制延遲增大:

    • 主節(jié)點寫入負(fù)載高,產(chǎn)生了過多的Redo日志,導(dǎo)致只讀節(jié)點來不及應(yīng)用。

    • 只讀節(jié)點負(fù)載過高,搶占了過多原本屬于應(yīng)用Redo日志的資源。

    • I/O出現(xiàn)瓶頸,導(dǎo)致讀寫Redo日志過慢。

  • Q:存在復(fù)制延遲的情況下,如何保證查詢的一致性?

    A:您可以使用集群地址并為其選擇合適的一致性級別。目前一致性從高到低分別為全局一致性(強一致性)、會話一致性和最終一致性,詳情請參見一致性級別

  • Q:單節(jié)點故障的情況下是否可以保證RPO為0?

    A:可以。

  • Q:升級規(guī)格配置(比如從2核8 GB升級到4核16 GB)后端是怎么實現(xiàn)的?對業(yè)務(wù)有什么影響?

    A:PolarDB的代理(Proxy)和數(shù)據(jù)庫節(jié)點(Node)均需要升級到最新的配置,采用多個節(jié)點滾動升級的方式盡量減少對業(yè)務(wù)的影響。目前每次升級大概需要10~15分鐘,對業(yè)務(wù)的影響時間不超過30秒,期間可能會產(chǎn)生1~3次連接閃斷,詳情請參見手動變配

  • Q:添加節(jié)點要多久?是否會影響業(yè)務(wù)?

    A:每增加一個節(jié)點需要5分鐘,對業(yè)務(wù)無影響。關(guān)于如何添加節(jié)點,詳情請參見增加只讀節(jié)點

    說明

    新增只讀節(jié)點之后新建的讀寫分離連接會轉(zhuǎn)發(fā)請求到該只讀節(jié)點。新增只讀節(jié)點之前建立的讀寫分離連接不會轉(zhuǎn)發(fā)請求到新增的只讀節(jié)點,需要斷開該連接并重新建立連接,例如,重啟應(yīng)用。

  • Q:升級到最新修訂版本需要多久?是否會影響業(yè)務(wù)?

    A:PolarDB采用多節(jié)點滾動升級的方式盡量減少對業(yè)務(wù)的影響。版本升級一般不超過30分鐘,升級過程中會重啟數(shù)據(jù)庫代理Proxy或內(nèi)核引擎DB,可能會導(dǎo)致數(shù)據(jù)庫連接閃斷。請您盡量在業(yè)務(wù)低峰期執(zhí)行升級操作,并且確保您的應(yīng)用有自動重連機制。詳情請參見小版本升級

  • Q:如何進行故障自動切換?

    A:PolarDB采用雙活(Active-Active)的高可用集群架構(gòu),可讀寫的主節(jié)點和只讀節(jié)點之間自動進行故障切換(Failover),系統(tǒng)自動選舉新的主節(jié)點。PolarDB每個節(jié)點都有一個故障切換(Failover)優(yōu)先級,決定了故障切換時被選舉為主節(jié)點的概率高低。當(dāng)多個節(jié)點的優(yōu)先級相同時,則有相同的概率被選舉為主節(jié)點,詳情請參見自動/手動主備切換

備份與恢復(fù)

  • Q:PolarDB采用什么備份方式?

    A:PolarDB采用快照(Snapshot)的方式進行備份,詳情請參見備份方式1:自動備份備份方式2:手動備份

  • Q:數(shù)據(jù)庫恢復(fù)的速度如何?

    A:目前,基于備份集(快照)進行恢復(fù)(克隆)的速度是40分鐘/TB。如果是恢復(fù)到任意時間點,則需要包含應(yīng)用Redo日志的時間,這部分的恢復(fù)速度大概是20~70秒/GB,整個恢復(fù)時間是這兩部分之和。

性能和容量

  • Q:為什么PolarDB MySQL版相比RDS MySQL性能提升不明顯?

    A:在您對PolarDB MySQL版和RDS MySQL進行性能對比前,請了解以下注意事項,以便能獲得比較準(zhǔn)確、合理的性能對比結(jié)果。

    • 使用相同規(guī)格配置的PolarDB MySQL版和RDS MySQL進行性能對比。

    • 使用相同版本的PolarDB MySQL版和RDS MySQL進行性能對比。

      因為不同版本的實現(xiàn)機制不一樣,例如MySQL 8.0針對多核數(shù)CPU做優(yōu)化,單獨抽象出來Log_writer、log_fluser、log_checkpoint、log_write_notifier等線程,但在CPU核數(shù)較少的情況下性能則不如MySQL 5.6或5.7。不推薦使用PolarDB MySQL版5.6和RDS MySQL 5.7或8.0進行對比,因為MySQL 5.6的優(yōu)化器比較舊,不如新版本。

    • 推薦使用模擬線上壓力的場景進行實際性能對比,或者使用sysbench進行對比,這樣獲得的數(shù)據(jù)更接近線上實際場景。

    • 在對比讀性能的時候,不推薦您使用單條SQL進行比較。

      因為PolarDB是計算存儲分離的架構(gòu),所以單條語句有網(wǎng)絡(luò)延遲的影響,導(dǎo)致讀性能不如RDS。線上數(shù)據(jù)庫的緩存命中率基本都在99%以上,只有第一次的讀會調(diào)用I/O,因此讀取性能會降低;后續(xù)數(shù)據(jù)都在緩存池(Buffer Pool)中,并不需要調(diào)用I/O,因此性能是一樣的。

    • 在對比寫性能的時候,同樣不推薦您使用單條SQL進行比較,推薦模擬線上環(huán)境進行壓力測試。

      如果要對比RDS性能,請使用PolarDB(主節(jié)點+只讀節(jié)點)和RDS(主實例+半同步的只讀實例)進行對比。這是因為PolarDB的架構(gòu)在寫入數(shù)據(jù)的時候默認(rèn)采用Quorum機制,即寫入數(shù)據(jù)時默認(rèn)寫入到三副本里面的大多數(shù)(在三個副本中的兩個或兩個以上寫入成功,就認(rèn)為寫操作成功了)。PolarDB已經(jīng)在存儲層面做數(shù)據(jù)冗余,并保證三副本強同步高可靠,使用RDS MySQL的半同步復(fù)制(而不是異步復(fù)制)進行對比更合理。

    PolarDB MySQL版與RDS MySQL的性能對比結(jié)果,請參見PolarDB MySQL版與RDS MySQL性能對比

  • Q:刪除數(shù)據(jù)庫后為什么還是占用很多空間?

    A:這是由于Redo日志文件占用了空間,通常在2 GB~11 GB左右,最多時會占用11 GB,其中包括緩沖池中8個Redo日志(8 GB)、正在寫的Redo日志(1 GB)、提前創(chuàng)建的Redo日志(1 GB)以及最后一個Redo日志(1 GB)。

    緩沖池內(nèi)的Redo日志文件數(shù)量由參數(shù)loose_innodb_polar_log_file_max_reuse控制,默認(rèn)值為8。您可以修改這個參數(shù)從而減少日志空間占用量,但在壓力大的情況下,性能可能會出現(xiàn)周期性的小幅波動。

    loose_innodb_polar_log_file_max_reuse

  • Q:表個數(shù)上限是多少?表個數(shù)到多少時有可能會引起性能下降?

    A:表個數(shù)的上限受文件數(shù)量限制,詳情請參見使用限制

  • Q:表分區(qū)能夠提高PolarDB的查詢性能嗎?

    A:通常來說,如果查詢SQL能夠落在某個分區(qū)內(nèi),是可以提升性能的。

  • Q:PolarDB是否支持創(chuàng)建1萬個數(shù)據(jù)庫?數(shù)據(jù)庫個數(shù)上限是多少?

    A:PolarDB支持創(chuàng)建1萬個數(shù)據(jù)庫。數(shù)據(jù)庫個數(shù)上限受文件數(shù)量限制,詳情請參見使用限制

  • Q:只讀節(jié)點的數(shù)量與最大連接數(shù)有關(guān)系嗎?可以通過增加只讀節(jié)點來增加最大連接數(shù)嗎?

    A:只讀節(jié)點的數(shù)量與最大連接數(shù)無關(guān),PolarDB的最大連接數(shù)由節(jié)點規(guī)格決定,詳情請參見使用限制。若需更大的連接數(shù),請升級規(guī)格

  • Q:IOPS是怎么限制和隔離的?是否會出現(xiàn)多個PolarDB集群節(jié)點的I/O爭搶?

    A:PolarDB集群的每個節(jié)點根據(jù)規(guī)格大小設(shè)置IOPS,每個節(jié)點之間IOPS獨立隔離,互不影響。

  • Q:只讀節(jié)點的性能變慢是否會影響主節(jié)點?

    A:只讀節(jié)點的負(fù)載過高、復(fù)制延遲增高時,可能會少量增加主節(jié)點的內(nèi)存消耗。

  • Q:打開Binlog之后,對性能有什么影響?

    A:開啟Binlog不會影響查詢(SELECT)性能,只會影響寫入更新(INSERT、UPDATE、DELETE)性能。一般情況下,在讀寫均衡的數(shù)據(jù)庫中,開啟Binlog后對性能影響不超過10%。

  • Q:打開SQL洞察(全量SQL日志審計),對性能有什么影響?

    A:無影響。

  • Q:PolarDB使用了什么高速網(wǎng)絡(luò)協(xié)議?

    A:PolarDB的數(shù)據(jù)庫計算節(jié)點和存儲節(jié)點之間,以及存儲數(shù)據(jù)多副本之間,都使用了雙25 Gbps RDMA技術(shù),提供低延遲、高吞吐的強勁I/O性能。

  • Q:PolarDB外網(wǎng)連接的帶寬上限是多少?

    A:PolarDB外網(wǎng)連接的帶寬上限為10 Gbit/s。

大表問題

  • Q:對比傳統(tǒng)本地盤的數(shù)據(jù)庫,PolarDB MySQL版中的大表存儲有什么優(yōu)勢?

    A:PolarDB MySQL版中的一張表,物理上會被拆分到N臺存儲服務(wù)器上存儲,因此對一張表的I/O會被分?jǐn)偟蕉鄩K存儲磁盤中,I/O讀取的整體吞吐性能(而不是I/O延遲)要遠優(yōu)于集中式的本地盤數(shù)據(jù)庫。

  • Q:大表如何優(yōu)化?

    A:推薦使用分區(qū)表。

  • Q:哪種情況下適合使用分區(qū)表?

    A:需要通過裁剪大表來控制查詢訪問的數(shù)據(jù)量并且希望該裁剪對業(yè)務(wù)代碼透明(無需修改業(yè)務(wù)代碼)的場景下,適合使用分區(qū)表。例如您可以通過使用分區(qū)表來定期清理業(yè)務(wù)歷史數(shù)據(jù)(如刪除最早的一個月份分區(qū)并新建下個月份分區(qū),實現(xiàn)只保留最近6個月份數(shù)據(jù)的效果)。

  • Q:在同一個PolarDB MySQL版的數(shù)據(jù)庫里復(fù)制一個數(shù)據(jù)量很大的表(如將整張表A復(fù)制到表B中),什么方式比較合適?

    A:您可以使用如下SQL語句直接復(fù)制:

    create table B as select * from A

穩(wěn)定性

  • Q:是否可以對高并發(fā)下的PHP短連接進行優(yōu)化?

    A:可以。在集群地址中,可以通過開啟會話級連接池進行優(yōu)化,詳情請參見設(shè)置集群地址

  • Q:如何規(guī)避個別執(zhí)行效率低下的SQL拖垮整個數(shù)據(jù)庫?

    A:如果您的PolarDB MySQL版集群是5.6或8.0版本,您可以使用語句并發(fā)控制Concurrency Control特性來實現(xiàn)針對指定語句的限流。

  • Q:PolarDB是否支持空閑會話超時?

    A:支持。您可以通過修改wait_timeout參數(shù)來自定義空閑會話的超時時間,具體操作步驟請參見設(shè)置集群參數(shù)和節(jié)點參數(shù)

  • Q:如何發(fā)現(xiàn)慢SQL?

    A:您可以通過如下兩種方式發(fā)現(xiàn)慢SQL:

    • 直接在控制臺上查詢慢SQL,詳情請參見慢SQL

    • 連接數(shù)據(jù)庫集群后執(zhí)行show processlist;,找出執(zhí)行時間過長的SQL,關(guān)于如何連接數(shù)據(jù)庫集群,請參見連接數(shù)據(jù)庫集群發(fā)現(xiàn)慢SQL

  • Q:如何終止慢SQL?

    A:發(fā)現(xiàn)慢SQL后,您可以先查看慢SQL的ID,然后執(zhí)行kill <Id>終止慢SQL。終止慢SQL