5

Load balance read replicas using ProxySQL in Azure Database for MySQL

 3 years ago
source link: https://techcommunity.microsoft.com/t5/azure-database-for-mysql/load-balance-read-replicas-using-proxysql-in-azure-database-for/ba-p/880042
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Load balance read replicas using ProxySQL in Azure Database for MySQL%3CLINGO-SUB%20id%3D%22lingo-sub-880042%22%20slang%3D%22en-US%22%3ELoad%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-880042%22%20slang%3D%22en-US%22%3E%3CH3%20aria-level%3D%221%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%20id%3D%22toc-hId-1627230878%22%3E%3CSTRONG%3EOverview%26nbsp%3B%3C%2FSTRONG%3E%3C%2FH3%3E%0A%3CP%3E%3CA%20href%3D%22https%3A%2F%2Fwww.proxysql.com%2F%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3E%3CSPAN%20data-contrast%3D%22none%22%3EProxySQL%3C%2FSPAN%3E%3C%2FA%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ea%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehigh-performance%20MySQL%20proxy%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Benables%20users%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Edistribute%20different%20queries%20to%20multiple%20servers%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Edistribute%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bthe%20load%20more%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eefficiently%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehas%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eseveral%20benefits%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Einclud%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ein%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eg%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ei%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Entelligent%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bload%20balancing%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eacross%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ediffer%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eent%20databases%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Band%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Et%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehe%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bability%20to%20determine%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eif%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ea%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Edatabase%20instance%20is%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eso%20that%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eread%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Etraffic%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecan%20be%20redirected%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eaccordingly%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ET%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehis%20blog%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Epost%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eshows%20how%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eset%20up%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eas%20a%20load%20balancer%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esplit%20the%20read%20and%20write%20workload%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Es%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bto%20Azure%20Database%20for%20MySQL.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3ENote%3A%20%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3EProxySQL%20is%20an%20open%20source%20community%20tool.%20It%20is%20supported%20by%20Microsoft%20on%20a%20best%20effort%20basis.%20In%20order%20to%20get%20production%20support%20with%20authoritative%20guidance%2C%20you%20can%20evaluate%20and%20reach%20out%20to%20%3CA%20href%3D%22https%3A%2F%2Fnam06.safelinks.protection.outlook.com%2F%3Furl%3Dhttps%253A%252F%252Fproxysql.com%252Fservices%252Fsupport%252F%26amp%3Bdata%3D02%257C01%257CAmol.Bhatnagar%2540microsoft.com%257C648e1ab1ec23494dc5bd08d814d6de91%257C72f988bf86f141af91ab2d7cd011db47%257C1%257C0%257C637282260392282862%26amp%3Bsdata%3Dv7EoCThD9VAeoZOOwmxGqUlfDtu9W7FqCRN1ZhfSnEE%253D%26amp%3Breserved%3D0%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3EProxySQL%20Product%20support%3C%2FA%3E.%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH3%20aria-level%3D%221%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%20id%3D%22toc-hId--924926083%22%3E%3CSTRONG%3EProxySQL%26nbsp%3Bon%26nbsp%3BAzure%20Database%20for%20MySQL%26nbsp%3Bset%20up%26nbsp%3B%3C%2FSTRONG%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ET%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehe%20below%20figure%20shows%20the%20basic%20set%20up%20for%20ProxySQL%20with%20Azure%20Database%20for%20MySQL%20as%20a%20master%20and%20read%20replica%20server.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20style%3D%22text-align%3A%20center%3B%20padding-left%3A%20300px%3B%22%3E%3CI%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-left%22%20image-alt%3D%22Capture.PNG%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F133815iC8A7E8F4252F7332%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20title%3D%22Capture.PNG%22%20alt%3D%22Capture.PNG%22%20%2F%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FI%3E%3C%2FP%3E%0A%3CP%20style%3D%22text-align%3A%20center%3B%22%3E%3CI%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFigure%201%3A%26nbsp%3B%3C%2FSPAN%3E%3C%2FI%3E%3CI%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%20with%20Azure%20Database%20for%20MySQL%3C%2FSPAN%3E%3C%2FI%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335551550%26quot%3B%3A2%2C%26quot%3B335551620%26quot%3B%3A2%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%20aria-level%3D%221%22%3EYou%20can%20also%20set%20up%20ProxySQL%20using%20%3CSTRONG%3EAzure%20Resource%20Manager%3C%2FSTRONG%3E.%20To%20deploy%20above%20setup%2C%20please%20refer%20to%26nbsp%3B-ERR%3AREF-NOT-FOUND-%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2FAzure%2Fazure-mysql%2Ftree%2Fmaster%2Farm-templates%2FExampleWithProxySQL%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2FAzure%2Fazure-mysql%2Ftree%2Fmaster%2Farm-templates%2FExampleWithProxySQL%3C%2FA%3E%3C%2FP%3E%0A%3CH3%20aria-level%3D%221%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%20id%3D%22toc-hId-817884252%22%3E%3CSTRONG%3EPrerequisites%3C%2FSTRONG%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ETo%20prepare%20for%20setting%20up%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eyou%20need%3A%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%20data-leveltext%3D%22%EF%82%A7%22%20data-font%3D%22Wingdings%22%20data-listid%3D%221%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EA%20Linux%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EVirtual%20Machine%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EUbuntu%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20which%20will%20be%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bserver.%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFor%20more%20information%2C%20see%20the%20articl%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ee%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3ECreate%20a%20Linux%20virtual%20machine%20in%20the%20Azure%20portal%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%EF%82%A7%22%20data-font%3D%22Wingdings%22%20data-listid%3D%221%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAn%20Azure%20Database%20for%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EMySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bserver%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Euse%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eas%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eh%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eost%20group%200%20(%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EMaster%20Server)%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%26nbsp%3B%3CSPAN%20data-contrast%3D%22auto%22%3EFor%20more%20information%2C%20see%20the%20article%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3ECreate%20an%20Azure%20Database%20for%20MySQL%20server%20by%20using%20the%20Azure%20portal%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3EProxySQL%26nbsp%3B%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Ewill%20be%20configured%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Eto%20direct%20all%20the%20write%20workload%20to%20this%20server%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559685%26quot%3B%3A720%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%20data-leveltext%3D%22%EF%82%A7%22%20data-font%3D%22Wingdings%22%20data-listid%3D%221%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFi%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Erewall%20rules%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Ballow%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eing%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bthe%20Linux%20VM%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bconnect%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20Azure%20Database%20for%20MySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emaster%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eserver.%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFor%20more%20information%2C%20see%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3ECreate%20a%20server-level%20firewall%20rule%20in%20the%20Azure%20portal%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%EF%82%A7%22%20data-font%3D%22Wingdings%22%20data-listid%3D%221%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EA%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3En%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAzure%20Database%20for%20MySQL%20server%20to%20use%20as%20the%20host%20group%201%20(%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3ERead%20Replica%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Es%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eerver%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E)%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%26nbsp%3B%3CSPAN%20data-contrast%3D%22auto%22%3EFor%20more%20information%2C%20see%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3ECreate%20a%20replica%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3EProxySQL%26nbsp%3B%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Ewill%20be%20configured%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Eto%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Edirect%20all%20the%20read%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Eworkload%20to%20this%20server.%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559685%26quot%3B%3A720%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%20data-leveltext%3D%22%EF%82%A7%22%20data-font%3D%22Wingdings%22%20data-listid%3D%221%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFi%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Erewall%20rules%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Ballowing%20the%20Linux%20VM%20to%20connect%20to%20the%20Azure%20Database%20for%20MySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eread%20replica%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eserver.%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EFor%20more%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Einformation%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20see%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3ECreate%20a%20server-level%20firewall%20rule%20in%20the%20Azure%20portal%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%3CSTRONG%3E%3CSPAN%20data-contrast%3D%22auto%22%3EImportant%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EEnforcement%20of%20SSL%20connections%20is%20enabled%20by%20default%20on%20Azure%20Database%20for%20MySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%20We%20recommend%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eavoiding%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bdisabling%20the%20SSL%20option%20and%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Econfigure%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bto%20use%20SSL%20as%20outlin%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eed%20below.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CH3%20aria-level%3D%221%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%20id%3D%22toc-hId--1734272709%22%3E%3CSTRONG%3EProcedure%26nbsp%3B%3C%2FSTRONG%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EThe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eprocess%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Efor%20setting%20up%26nbsp%3BProxySQL%26nbsp%3Bas%20a%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3El%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eoad%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eb%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ealancer%20in%20Azure%20Database%20for%20MySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bi%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Envolves%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EInstalling%20ProxySQL%20on%20Ubuntu%20VM.%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ESetting%20up%20ProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECreating%20MySQL%20users%20on%20master%20server.%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECreating%20the%20ProxySQL%20user%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EConfigur%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eing%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Em%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eonitoring%20on%20ProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EConfigur%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eing%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bthe%20routing%20rules%20for%20read%20and%20write%20split%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251)%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%223%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ESav%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eing%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20changes%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%20configuration%20to%20persist%20across%20restarts%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%20id%3D%22toc-hId-8537626%22%3E%3CSTRONG%3EInstall%20ProxySQL%20on%20Ubuntu%20VM%3C%2FSTRONG%3E%3C%2FH3%3E%0A%3CP%3E%3CSTRONG%3E%3CSPAN%20data-contrast%3D%22auto%22%3EImportant%3C%2FSPAN%3E%3C%2FSTRONG%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAzure%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3ED%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eatabase%20for%20MySQL%20supports%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eversion%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E2.0.6%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eand%20later%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%22%20data-listid%3D%222%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EDownload%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3Elatest%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bversion%20of%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Einto%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bthe%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2F%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Etmp%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bdirectory%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bpackages%20are%20on%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3EGitHub%20release%20page%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Ecd%20%2Ftmp%20%0Acurl%20-OL%20%20https%3A%2F%2Fgithub.com%2Fsysown%2Fproxysql%2Freleases%2Fdownload%2Fv2.0.6%2Fproxysql_2.0.6-ubuntu18_amd64.deb%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%222%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EInstall%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bby%20using%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Edpkg%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Band%20update%20the%20package%20repository%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Een%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esure%20that%20you%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehave%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Elatest%20version%20build.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esudo%20dpkg%20-i%20proxysql_*%20%0Asudo%20apt-get%20update%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%222%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EInstall%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emysql%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E-client%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esudo%20apt-get%20install%20mysql-client%E2%80%8B%3C%2FCODE%3E%3C%2FPRE%3E%26nbsp%3B%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%222%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAfter%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Einstall%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eing%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Estart%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bservice%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20as%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eit%20does%20not%20start%20automatically%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esudo%20systemctl%20start%20proxysql%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%222%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%225%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECheck%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Estatus%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bof%20service%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esystemctl%20status%20proxysql%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3EAfter%20the%26nbsp%3B%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Ep%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Eroxysql%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Esuccessfully%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%26nbsp%3Bstart%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Es%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Ea%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Emessage%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3Esimilar%20to%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%26nbsp%3Bthe%20following%20appears%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CSPAN%20style%3D%22font-family%3A%20inherit%3B%22%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559685%26quot%3B%3A360%2C%26quot%3B335559731%26quot%3B%3A360%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CP%20style%3D%22padding-left%3A%2060px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Capture1.PNG%22%20style%3D%22width%3A%20630px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Fgxcuf89792.i.lithium.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F133817i420AC7202F2547ED%2Fimage-size%2Flarge%3Fv%3D1.0%26amp%3Bpx%3D999%22%20title%3D%22Capture1.PNG%22%20alt%3D%22Capture1.PNG%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%20id%3D%22toc-hId-1751347961%22%3E%3CSPAN%20data-contrast%3D%22none%22%3ESetting%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3Eup%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3Ethe%20ProxySQL%3C%2FSPAN%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559738%26quot%3B%3A120%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3EExecute%20the%20below%20steps%20on%20ProxySQL%20server%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%224%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EConnect%20to%20the%20ProxySQL%20administration%20interface%20with%20the%20default%20password%20%E2%80%98admin%E2%80%99%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Emysql%20%E2%80%93u%20admin%20%E2%80%93padmin%20-h%20127.0.0.1%20-P%206032%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Calibri%2C%20Calibri_MSFontService%2C%20sans-serif%22%20data-listid%3D%224%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAdd%20the%20reader%20and%20writer%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Enodes%20ProxySQL%20server%20pool%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Einsert%20into%20mysql_servers(hostgroup_id%2Chostname%2Cport%2Cweight%2Ccomment)%20values(1%2C'mydemomasterserver.mysql.database.azure.com'%2C3306%2C1%2C'Write%20Group')%3B%0Ainsert%20into%20mysql_servers(hostgroup_id%2Chostname%2Cport%2Cweight%2Ccomment)%20values(2%2C'mydemoreplicaserver.mysql.database.azure.com'%2C3306%2C1%2C'Read%20Group')%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Calibri%2C%20Calibri_MSFontService%2C%20sans-serif%22%20data-listid%3D%224%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EEnable%20SSL%20support%20in%20ProxySQL%20server%20pool%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EUPDATE%20mysql_servers%20SET%20use_ssl%3D1%20WHERE%20hostgroup_id%3D1%3B%20%0AUPDATE%20mysql_servers%20SET%20use_ssl%3D1%20WHERE%20hostgroup_id%3D2%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%20id%3D%22toc-hId--800809000%22%3E%3CSPAN%20data-contrast%3D%22none%22%3ECreating%20the%20MySQL%20users%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559738%26quot%3B%3A120%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3Bon%20master%20server%3C%2FSPAN%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EIn%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EP%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EroxySQL%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Euser%20connects%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20ProxySQL%20and%20in%20turn%20ProxySQL%20passes%20the%20connection%20to%20the%20MySQL%20node.%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3ETo%20allow%20ProxySQL%20to%20access%20to%20the%20MySQL%20database%2C%20we%20need%20to%20create%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ea%20user%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eon%20MySQL%20database%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ewith%20the%20same%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecredentials%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bas%20on%20the%20ProxySQL%20server.%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Calibri%2C%20Calibri_MSFontService%2C%20sans-serif%22%20data-listid%3D%225%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECreate%20a%20new%20user%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emydemouser%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%20with%20the%20password%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esecretpassword%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-applescript%22%3E%3CCODE%3ECREATE%20USER%20'mydemouser'%40'%25'%20IDENTIFIED%20BY%20'secretpassword'%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Calibri%2C%20Calibri_MSFontService%2C%20sans-serif%22%20data-listid%3D%225%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EGrant%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emydemouser%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eprivileges%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20fully%20access%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20MySQL%20server.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EGRANT%20SELECT%2C%20INSERT%2C%20UPDATE%2C%20DELETE%2C%20CREATE%2C%20DROP%2C%20RELOAD%2C%20PROCESS%2C%20REFERENCES%2C%20INDEX%2C%20ALTER%2C%20SHOW%20DATABASES%2C%20CREATE%20TEMPORARY%20TABLES%2C%20LOCK%20TABLES%2C%20EXECUTE%2C%20REPLICATION%20SLAVE%2C%20REPLICATION%20CLIENT%2C%20CREATE%20VIEW%2C%20SHOW%20VIEW%2C%20CREATE%20ROUTINE%2C%20ALTER%20ROUTINE%2C%20CREATE%20USER%2C%20EVENT%2C%20TRIGGER%20ON%20*.*%20TO%20'mydemouser'%40'%25'%20WITH%20GRANT%20OPTION%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Calibri%2C%20Calibri_MSFontService%2C%20sans-serif%22%20data-listid%3D%225%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EApply%20the%20changes%20to%20the%20permissions%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EFLUSH%20PRIVILEGES%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%20id%3D%22toc-hId-942001335%22%3E%3CSPAN%20data-contrast%3D%22none%22%3ECreating%20the%20ProxySQL%20user%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559738%26quot%3B%3A120%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAllow%20the%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emydemouser%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%20user%20to%20connect%20to%20ProxySQL%20server%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3EExecute%20the%20below%20query%20on%20ProxySQL%20server%3A%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-applescript%22%3E%3CCODE%3Einsert%20into%20mysql_users(username%2Cpassword%2Cdefault_hostgroup%2Ctransaction_persistent)values('mydemouser'%2C'secretpassword'%2C1%2C1)%3B%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%20id%3D%22toc-hId--1610155626%22%3E%3CSPAN%20data-contrast%3D%22none%22%3EConfigure%20Monitoring%20on%20ProxySQL%3C%2FSPAN%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECreate%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emonitoring%20user%20on%20the%20Master%20server%20and%20then%20configure%20ProxySQL%20to%20monitor%20the%20nodes.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A40%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3ECreate%20monitoring%20user%20on%20the%20master%20server%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%226%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ECreate%20a%20new%20user%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emonito%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Er%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Euser%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bwith%20the%20password%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esecretpassword%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-applescript%22%3E%3CCODE%3ECREATE%20USER%20'monitoruser'%40'%25'%20IDENTIFIED%20BY%20'secretpassword'%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%226%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EGrant%20%E2%80%98%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emonitoruser%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%E2%80%99%20privileges%20to%20fully%20access%20the%20MySQL%20server%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EGRANT%20SELECT%20ON%20*.*%20TO%20'%20monitoruser'%40'%25'%20WITH%20GRANT%20OPTION%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%226%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EApply%20the%20changes%20to%20the%20permissions%26nbsp%3B%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EFLUSH%20PRIVILEGES%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EOn%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20server%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20c%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eonfigure%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emysql%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E-monitor%20to%20the%20username%20of%20the%20new%20account%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-applescript%22%3E%3CCODE%3Eset%20mysql-monitor_username%3D'monitoruser'%3B%20%0Aset%20mysql-monitor_password%3D'secretpassword'%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%20id%3D%22toc-hId-132654709%22%3E%3CSPAN%20data-contrast%3D%22none%22%3EConfigure%20the%20routing%20rules%20for%20read%20and%20write%20split%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559738%26quot%3B%3A120%2C%26quot%3B335559739%26quot%3B%3A20%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FH3%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%227%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EOn%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EP%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eroxy%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3ESQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3BServer%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20configure%20the%20write%20traffic%20to%20route%20to%20the%20master%20server%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Einsert%20into%20mysql_query_rules(rule_id%2Cactive%2Cmatch_digest%2Cdestination_hostgroup%2Capply)values(1%2C1%2C'%5ESELECT.*FOR%20UPDATE%24'%2C1%2C1)%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%227%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EOn%20the%20ProxySQL%20Server%2C%20configure%20the%20read%20traffic%20to%20route%20to%20the%20read%20replica%20server%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Einsert%20into%20mysql_query_rules(rule_id%2Cactive%2Cmatch_digest%2Cdestination_hostgroup%2Capply)values(2%2C1%2C'%5ESELECT'%2C2%2C1)%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CH3%20aria-level%3D%222%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%20id%3D%22toc-hId-1160303755%22%3E%3CSPAN%20data-contrast%3D%22none%22%3ESave%20the%20changes%20made%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22none%22%3EProxySQL%20configuration%20to%20persists%20across%20restarts%3C%2FSPAN%3E%3C%2FH3%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EIn%20ProxySQL%20configuration%20system%2C%20the%20changes%20we%20made%20are%20in%20memory%20and%20to%20make%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethem%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Epersist%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bacross%20the%20restarts%2C%20you%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Emust%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bcopy%20settings%20to%20runtime%20and%20save%20them%20to%20disk%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%221%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EOn%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20server%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ee%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Execute%20the%20below%20commands%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20save%20the%20settings%20to%20runtime%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eload%20mysql%20users%20to%20runtime%3B%20%0Aload%20mysql%20servers%20to%20runtime%3B%20%0Aload%20mysql%20query%20rules%20to%20runtime%3B%20%0Aload%20mysql%20variables%20to%20runtime%3B%20%0Aload%20admin%20variables%20to%20runtime%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%2C%E6%B8%B8%E6%98%8E%E6%9C%9D%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%222%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EOn%20the%20server%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ee%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Execute%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Efollowing%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecommands%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20save%20the%20settings%20to%20disk%3A%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Esave%20mysql%20users%20to%20disk%3B%20%0Asave%20mysql%20servers%20to%20disk%3B%20%0Asave%20mysql%20query%20rules%20to%20disk%3B%20%0Asave%20mysql%20variables%20to%20disk%3B%20%0Asave%20admin%20variables%20to%20disk%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAfter%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esuccessfully%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecompleting%20the%20above%20steps%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eis%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Econfigure%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ed%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Band%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eis%20ready%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20split%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eread%20and%20write%20workload.%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3ETo%20test%20the%20functionality%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%20determine%20if%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%20read%20and%20write%20splits%20are%20being%20forwarded%20properly%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%223%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ELog%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ein%20to%20the%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bserver%20running%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ewith%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQ%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Buser%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eyou%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecreated%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Emysql%20%E2%80%93u%20mydemouser%20%E2%80%93p%20secretpassword%20-h127.0.0.1%20-P6033%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%224%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3ERun%20the%20read%20and%20write%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Equeries%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3ESELECT%20*%20%20%0AFROM%20mydemotable%3B%3C%2FCODE%3E%3C%2FPRE%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3EUPDATE%20mydemotable%20%0ASET%20mydemocolumn%3Dvalue%20%0AWHERE%20condition%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ETo%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Everify%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethat%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%26nbsp%3Bhas%20routed%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eabove%20read%20and%20write%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ecorrectly%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3COL%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%225%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EConnect%20to%20the%20ProxySQL%20administration%20interface%20with%20the%20default%20password%20%E2%80%98admin%E2%80%99%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E.%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Emysql%20%E2%80%93u%20admin%20%E2%80%93p%20admin%20-h127.0.0.1%20-P6032%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3CLI%20data-leveltext%3D%22%251.%22%20data-font%3D%22Segoe%20UI%22%20data-listid%3D%228%22%20aria-setsize%3D%22-1%22%20data-aria-posinset%3D%226%22%20data-aria-level%3D%221%22%3E%3CSPAN%20data-contrast%3D%22auto%22%3EExecute%20the%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Efollowing%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Equery%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%3A%3C%2FSPAN%3E%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3ESELECT%20*%20FROM%20stats_mysql_query_digest%3B%20%3C%2FCODE%3E%3C%2FPRE%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B134233279%26quot%3B%3Atrue%2C%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A80%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FLI%3E%0A%3C%2FOL%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EIf%20you%20have%20trouble%20setting%20up%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%20on%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3BAzure%20Database%20for%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EMySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%2C%20please%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Econtact%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ethe%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAzure%20Database%20for%20MySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eteam%20at%26nbsp%3B%3C%2FSPAN%3E-ERR%3AREF-NOT-FOUND-%3CSPAN%20data-contrast%3D%22none%22%3EAskAzureDBforMySQL%40service.microsoft.com%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A120%2C%26quot%3B335559740%26quot%3B%3A259%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EThank%20you!%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EAmol%20Bhatnagar%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProgram%20Manager%20-%20Microsoft%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-880042%22%20slang%3D%22en-US%22%3E%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3ET%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Ehis%20blog%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Epost%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eshows%20how%20to%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eset%20up%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eas%20a%20load%20balancer%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eto%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Esplit%20the%20read%20and%20write%20workload%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Es%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3Bto%20Azure%20Database%20for%20MySQL.%3C%2FSPAN%3E%3CSPAN%20data-ccp-props%3D%22%7B%26quot%3B201341983%26quot%3B%3A0%2C%26quot%3B335559739%26quot%3B%3A160%2C%26quot%3B335559740%26quot%3B%3A264%7D%22%3E%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-880042%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3ELoad%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1484278%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1484278%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F359825%22%20target%3D%22_blank%22%3E%40ambhatna%3C%2FA%3E%2C%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EWhen%20you%20connect%20to%20Azure%20DB%20for%20MySQL%20do%20you%20need%20to%20embed%20the%20database%20name%20in%20the%20username%20or%20is%20it%20not%20necessary%20(eg%20mydemouser%40mydemomasterserver)%3F%20This%20limited%20my%20use%20of%20Azure%20DB%20for%20MySQL%20with%20ProxySQL.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThank%20you.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1484743%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1484743%22%20slang%3D%22en-US%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F708050%22%20target%3D%22_blank%22%3E%40wchiquito%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3EYes%2C%20as%20of%20now%20we%20do%20require%20the%20server%20name%20with%20the%20username.%20Please%20read%20%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-for-mysql%2Fwhy-is-username-servername-required-to-connect-to-azure-database%2Fba-p%2F1204525%22%20target%3D%22_self%22%3EWhy%20is%20username%40servername%20required%20to%20connect%20to%20Azure%20Database%20for%20MySQL%3F%3C%2FA%3E%26nbsp%3B%20for%20more%20details.%3C%2FP%3E%0A%3CP%3ESaid%20that%2C%20we%20have%20made%20a%20fix%20in%20ProxySQL%20to%20take%20care%20of%20this%20issue.%26nbsp%3B%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eversion%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E2.0.6%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eand%20later%20can%20be%20used%20with%20Azure%20Database%20for%20MySQL.%26nbsp%3B%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EPlease%20let%20me%20know%20if%20you%20are%20facing%20issues%20while%20setting%20up%20ProxySQL.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1487132%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1487132%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F359825%22%20target%3D%22_blank%22%3E%40ambhatna%3C%2FA%3E%2C%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThanks%20for%20the%20quick%20reply.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3ETo%20better%20understand%20it%2C%20does%20Azure%20Database%20for%20MySQL%20now%20understand%20the%20new%20connection%20attribute%20%3CSTRONG%3E_server_host%3C%2FSTRONG%3E%20sent%20from%20ProxySQL%3F%2C%20see%20%3CA%20title%3D%22Let%20ProxySQL%20support%20Azure%20MySQL%22%20href%3D%22https%3A%2F%2Fgithub.com%2Fsysown%2Fproxysql%2Fpull%2F2185%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3ELet%20ProxySQL%20support%20Azure%20MySQL%3C%2FA%3E.%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EThank%20you.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1488381%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1488381%22%20slang%3D%22en-US%22%3E%3CP%3EHi%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F708050%22%20target%3D%22_blank%22%3E%40wchiquito%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EProxySQL%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eversion%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3E2.0.6%26nbsp%3B%3C%2FSPAN%3E%3CSPAN%20data-contrast%3D%22auto%22%3Eand%20later%20can%20be%20used%20with%20Azure%20Database%20for%20MySQL.%20I%20have%20discussed%20with%20the%20submitter%20of%20the%20PR%3A%26nbsp%3B%3CA%20title%3D%22Let%20ProxySQL%20support%20Azure%20MySQL%22%20href%3D%22https%3A%2F%2Fgithub.com%2Fsysown%2Fproxysql%2Fpull%2F2185%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%20noopener%20noreferrer%22%3ELet%20ProxySQL%20support%20Azure%20MySQL%3C%2FA%3E.%20and%20told%20him%20that%20this%20is%20already%20a%20supported%20scenario.%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20data-contrast%3D%22auto%22%3EPlease%20follow%20the%20below%20blogs%20as%20per%20your%20requirements%20for%20setting%20up%20the%20ProxySQL%3A%3C%2FSPAN%3E%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-for-mysql%2Fload-balance-read-replicas-using-proxysql-in-azure-database-for%2Fba-p%2F880042%22%20target%3D%22_blank%22%3ELoad%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-for-mysql%2Fscaling-an-azure-database-for-mysql-workload-running-on%2Fba-p%2F1105847%22%20target%3D%22_blank%22%3EScaling%20an%20Azure%20Database%20for%20MySQL%20workload%20running%20on%20Kubernetes%20with%20read%20replicas%20and%20ProxySQL%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-for-mysql%2Fdeploy-proxysql-as-a-service-on-kubernetes-using-azure-database%2Fba-p%2F1105959%22%20target%3D%22_blank%22%3EDeploy%20ProxySQL%20as%20a%20service%20on%20Kubernetes%20using%20Azure%20Database%20for%20MySQL%3C%2FA%3E%3C%2FLI%3E%0A%3CLI%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fazure-database-for-mysql%2Fconnecting-efficiently-to-azure-database-for-mysql-with-proxysql%2Fba-p%2F1279842%22%20target%3D%22_blank%22%3EConnecting%20efficiently%20to%20Azure%20Database%20for%20MySQL%20with%20ProxySQL%3C%2FA%3E%3C%2FLI%3E%0A%3C%2FUL%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1489695%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1489695%22%20slang%3D%22en-US%22%3E%3CP%3EHi%20%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F359825%22%20target%3D%22_blank%22%3E%40ambhatna%3C%2FA%3E%2C%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20am%20already%20using%20ProxySQL%202.0.6%20or%20later%20and%20just%20what%20I%20want%20is%20to%20understand%20what%20were%20the%20changes%20ProxySQL%202.0.6%20or%20later%20and%20in%20Azure%20Database%20for%20MySQL%20because%20when%20I%20connect%20via%20MySQL%20CLI%20I%20have%20to%20use%20it%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%3Emysql%20-hmydemomaster.mysql.database.azure.com%20-umydemo%40mydemomaster%20-p%E2%80%8B%3C%2FPRE%3E%3CP%3Ebut%20in%20ProxySQL%202.0.6%20or%20later%20I%20just%20insert%3A%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CPRE%3Einsert%20into%20mysql_users(username%2Cpassword)values('mydemouser'%2C'secretpassword')%3B%3C%2FPRE%3E%3CP%3E%26nbsp%3BThank%20you.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1490229%22%20slang%3D%22en-US%22%3ERe%3A%20Load%20balance%20read%20replicas%20using%20ProxySQL%20in%20Azure%20Database%20for%20MySQL%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1490229%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F708050%22%20target%3D%22_blank%22%3E%40wchiquito%3C%2FA%3E%2C%3C%2FP%3E%0A%3CP%3EThe%20changes%20we%20did%20was%20on%20the%20ProxySQL%20side%20(%3CA%20href%3D%22https%3A%2F%2Fgithub.com%2Fsysown%2Fproxysql%2Fpull%2F2185%22%20target%3D%22_blank%22%20rel%3D%22noopener%20noreferrer%20noopener%20noreferrer%22%3Ehttps%3A%2F%2Fgithub.com%2Fsysown%2Fproxysql%2Fpull%2F2185%3C%2FA%3E)%20.%20If%20you%20want%20to%20connect%20to%20Azure%20Database%20for%20MySQL%20using%20CLI%20then%20%3CA%20href%3D%22mailto%3AUsername%40Servername%22%20target%3D%22_blank%22%20rel%3D%22nofollow%20noopener%20noreferrer%20noopener%20noreferrer%22%3EUsername%40Servername%3C%2FA%3E%26nbsp%3Bformat%20is%20still%20required.%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E

‎09-30-2019 09:56 AM

Overview 

ProxySQL, a high-performance MySQL proxy, enables users to distribute different queries to multiple servers to distribute the load more efficiently. 

ProxySQL has several benefits, including intelligent load balancing across different databases and the ability to determine if a database instance is running so that read traffic can be redirected accordingly. 

This blog post shows how to set up ProxySQL as a load balancer to split the read and write workloads to Azure Database for MySQL. 

Note:

ProxySQL is an open source community tool. It is supported by Microsoft on a best effort basis. In order to get production support with authoritative guidance, you can evaluate and reach out to ProxySQL Product support.

ProxySQL on Azure Database for MySQL set up 

The below figure shows the basic set up for ProxySQL with Azure Database for MySQL as a master and read replica server. 

thumbnail image 1 of blog post titled                                              Load balance read replicas using ProxySQL in Azure Database for MySQL

Figure 1: ProxySQL with Azure Database for MySQL 

You can also set up ProxySQL using Azure Resource Manager. To deploy above setup, please refer to https://github.com/Azure/azure-mysql/tree/master/arm-templates/ExampleWithProxySQL

Prerequisites

To prepare for setting up ProxySQL, you need: 

  • Firewall rules allowing the Linux VM to connect to the Azure Database for MySQL master server. For more information, see Create a server-level firewall rule in the Azure portal
  • An Azure Database for MySQL server to use as the host group 1 (the Read Replica server). For more information, see Create a replica. ProxySQL will be configured to direct all the read workload to this server. 

Important: Enforcement of SSL connections is enabled by default on Azure Database for MySQL. We recommend avoiding disabling the SSL option and configure ProxySQL to use SSL as outlined below. 

Procedure 

The process for setting up ProxySQL as a load balancer in Azure Database for MySQL involves: 

  1. Installing ProxySQL on Ubuntu VM.
  2. Setting up ProxySQL. 
  3. Creating MySQL users on master server.
  4. Creating the ProxySQL user. 
  5. Configuring monitoring on ProxySQL. 
  6. Configuring the routing rules for read and write split. 
  7. Saving the changes to the ProxySQL configuration to persist across restarts. 

Install ProxySQL on Ubuntu VM

Important: Azure Database for MySQL supports ProxySQL version2.0.6 and later. 

  1. Download the latest version of ProxySQL into the /tmp directory. ProxySQL packages are on ProxySQL GitHub release page.
    cd /tmp 
    curl -OL  https://github.com/sysown/proxysql/releases/download/v2.0.6/proxysql_2.0.6-ubuntu18_amd64.deb
     
  2. Install ProxySQL by using dpkg and update the package repository to ensure that you have the latest version build.
    sudo dpkg -i proxysql_* 
    sudo apt-get update
     
  3. Install mysql-client. 
    sudo apt-get install mysql-client​
     
  4. After installing ProxySQL, start the ProxySQL service, as it does not start automatically
    sudo systemctl start proxysql
     
  5. Check the status of service.
    systemctl status proxysql 
     After the proxysql successfully starts, a message similar to the following appears: 

Setting up the ProxySQL

Execute the below steps on ProxySQL server:

  1. Connect to the ProxySQL administration interface with the default password ‘admin’.
    mysql –u admin –padmin -h 127.0.0.1 -P 6032 
     
  2. Add the reader and writer nodes ProxySQL server pool.
    insert into mysql_servers(hostgroup_id,hostname,port,weight,comment) values(1,'mydemomasterserver.mysql.database.azure.com',3306,1,'Write Group');
    insert into mysql_servers(hostgroup_id,hostname,port,weight,comment) values(2,'mydemoreplicaserver.mysql.database.azure.com',3306,1,'Read Group'); 
     
  3. Enable SSL support in ProxySQL server pool
    UPDATE mysql_servers SET use_ssl=1 WHERE hostgroup_id=1; 
    UPDATE mysql_servers SET use_ssl=1 WHERE hostgroup_id=2; 
     

Creating the MySQL users on master server

In ProxySQL, the user connects to ProxySQL and in turn ProxySQL passes the connection to the MySQL node. To allow ProxySQL to access to the MySQL database, we need to create a user on MySQL database with the same credentials as on the ProxySQL server. 

  1. Create a new user ‘mydemouser’ with the password ‘secretpassword’
    CREATE USER 'mydemouser'@'%' IDENTIFIED BY 'secretpassword'; 
     
  2. Grant ‘mydemouser’ privileges to fully access the MySQL server.
    GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'mydemouser'@'%' WITH GRANT OPTION
     
  3. Apply the changes to the permissions
    FLUSH PRIVILEGES; 
      

Creating the ProxySQL user 

Allow the ‘mydemouser’ user to connect to ProxySQL server. 

Execute the below query on ProxySQL server:

insert into mysql_users(username,password,default_hostgroup,transaction_persistent)values('mydemouser','secretpassword',1,1);

Configure Monitoring on ProxySQL

Create the monitoring user on the Master server and then configure ProxySQL to monitor the nodes.

Create monitoring user on the master server:

  1. Create a new user ‘monitoruser’ with the password ‘secretpassword’
    CREATE USER 'monitoruser'@'%' IDENTIFIED BY 'secretpassword'; 
     
  2. Grant ‘monitoruser’ privileges to fully access the MySQL server
    GRANT SELECT ON *.* TO ' monitoruser'@'%' WITH GRANT OPTION; 
     
  3. Apply the changes to the permissions 
    FLUSH PRIVILEGES; 
     

On the server running ProxySQL, configure mysql-monitor to the username of the new account. 

set mysql-monitor_username='monitoruser'; 
set mysql-monitor_password='secretpassword'; 

Configure the routing rules for read and write split 

  1. On the ProxySQL Server, configure the write traffic to route to the master server
    insert into mysql_query_rules(rule_id,active,match_digest,destination_hostgroup,apply)values(1,1,'^SELECT.*FOR UPDATE$',1,1); 
     
  2. On the ProxySQL Server, configure the read traffic to route to the read replica server
    insert into mysql_query_rules(rule_id,active,match_digest,destination_hostgroup,apply)values(2,1,'^SELECT',2,1); 
     

Save the changes made to the ProxySQL configuration to persists across restarts

In ProxySQL configuration system, the changes we made are in memory and to make them persist across the restarts, you must copy settings to runtime and save them to disk. 

  1. On the server running ProxySQL, execute the below commands to save the settings to runtime:
    load mysql users to runtime; 
    load mysql servers to runtime; 
    load mysql query rules to runtime; 
    load mysql variables to runtime; 
    load admin variables to runtime; 
     
  2. On the server running ProxySQL, execute the following commands to save the settings to disk:
    save mysql users to disk; 
    save mysql servers to disk; 
    save mysql query rules to disk; 
    save mysql variables to disk; 
    save admin variables to disk; 
     

After successfully completing the above steps, ProxySQL is configured and is ready to split the read and write workload. To test the functionality to determine if the read and write splits are being forwarded properly: 

  1. Log in to the server running ProxySQL with the ProxySQL user you created.
    mysql –u mydemouser –p secretpassword -h127.0.0.1 -P6033 
     
  2. Run the read and write queries
    SELECT *  
    FROM mydemotable;
    UPDATE mydemotable 
    SET mydemocolumn=value 
    WHERE condition; 

To verify that ProxySQL has routed the above read and write correctly: 

  1. Connect to the ProxySQL administration interface with the default password ‘admin’.
    mysql –u admin –p admin -h127.0.0.1 -P6032 
     
  2. Execute the following query:
    SELECT * FROM stats_mysql_query_digest; 
     

If you have trouble setting up ProxySQL on Azure Database for MySQL, please contact the Azure Database for MySQL team at [email protected] 

Thank you! 

Amol Bhatnagar 

Program Manager - Microsoft

6 Comments

‎06-23-2020 10:25 AM

Hi @ambhatna,

When you connect to Azure DB for MySQL do you need to embed the database name in the username or is it not necessary (eg mydemouser@mydemomasterserver)? This limited my use of Azure DB for MySQL with ProxySQL.

Thank you.

‎06-23-2020 02:50 PM

Hi @wchiquito,

Yes, as of now we do require the server name with the username. Please read  Why is username@servername required to connect to Azure Database for MySQL?  for more details.

Said that, we have made a fix in ProxySQL to take care of this issue. ProxySQL version2.0.6 and later can be used with Azure Database for MySQL. 

Please let me know if you are facing issues while setting up ProxySQL.

‎06-24-2020 11:32 AM

Hi @ambhatna,

Thanks for the quick reply.

To better understand it, does Azure Database for MySQL now understand the new connection attribute _server_host sent from ProxySQL?, see Let ProxySQL support Azure MySQL.

Thank you.

‎06-25-2020 09:29 AM

Hi @ambhatna,

I am already using ProxySQL 2.0.6 or later and just what I want is to understand what were the changes ProxySQL 2.0.6 or later and in Azure Database for MySQL because when I connect via MySQL CLI I have to use it

mysql -hmydemomaster.mysql.database.azure.com -umydemo@mydemomaster -p​

but in ProxySQL 2.0.6 or later I just insert:

insert into mysql_users(username,password)values('mydemouser','secretpassword');

 Thank you.

‎06-25-2020 12:33 PM

@wchiquito,

The changes we did was on the ProxySQL side (https://github.com/sysown/proxysql/pull/2185) . If you want to connect to Azure Database for MySQL using CLI then Username@Servername format is still required. 

You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK