[{"data":1,"prerenderedAt":682},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fconnections\u002Fmysql-server":3},{"id":4,"title":5,"body":6,"description":673,"extension":674,"meta":675,"navigation":676,"path":677,"redirect":678,"seo":679,"stem":680,"__hash__":681},"docs\u002Fdocs\u002Fconnections\u002Fmysql-server.md","MySQL Server Configuration",{"type":7,"value":8,"toc":664},"minimark",[9,13,17,20,33,36,39,60,68,73,76,90,94,97,118,121,137,141,232,235,271,274,448,451,482,487,491,496,499,513,516,563,566,570,573,576,590,596,600,603,636,640,660],[10,11,5],"h1",{"id":12},"mysql-server-configuration",[14,15,16],"p",{},"Use this page for self-managed MySQL-compatible servers that DBConvert Streams connects to directly.",[14,18,19],{},"It covers the base connection setup for:",[21,22,23,27,30],"ul",{},[24,25,26],"li",{},"Load workflows",[24,28,29],{},"Data Explorer access",[24,31,32],{},"MySQL CDC source preparation",[14,34,35],{},"For the current public support boundary, see the product introduction page.",[14,37,38],{},"For managed cloud databases, use the provider-specific guide instead:",[21,40,41,48,54],{},[24,42,43],{},[44,45,47],"a",{"href":46},"\u002Fdocs\u002Fconnections\u002Famazon-rds","Amazon RDS and Aurora MySQL",[24,49,50],{},[44,51,53],{"href":52},"\u002Fdocs\u002Fconnections\u002Fgoogle-cloud-sql","Google Cloud SQL",[24,55,56],{},[44,57,59],{"href":58},"\u002Fdocs\u002Fconnections\u002Fazure-database-configuration","Azure Database",[14,61,62,63,67],{},"For CDC replication settings, see ",[44,64,66],{"href":65},"\u002Fdocs\u002Fintegration\u002Fmysql-cdc-source-configuration","MySQL CDC Source Configuration",".",[69,70,72],"h2",{"id":71},"server-requirements","Server requirements",[14,74,75],{},"Use a reachable MySQL endpoint with:",[21,77,78,81,84,87],{},[24,79,80],{},"a hostname or IP address reachable from the DBConvert Streams deployment",[24,82,83],{},"a database user with the minimum privileges required for the workflow",[24,85,86],{},"remote access enabled on the server and firewall path",[24,88,89],{},"SSL\u002FTLS configured when the environment requires encrypted transport",[69,91,93],{"id":92},"minimum-privileges","Minimum privileges",[14,95,96],{},"The required access depends on the workflow:",[21,98,99,107,113],{},[24,100,101,102,106],{},"Load: ",[103,104,105],"code",{},"SELECT"," on the source tables",[24,108,109,110,112],{},"Data Explorer \u002F SQL Console: ",[103,111,105],{}," on the objects you need to inspect or query",[24,114,115,116],{},"CDC source: MySQL binlog access plus the permissions described in ",[44,117,66],{"href":65},[14,119,120],{},"Example read-only grant for Load mode:",[122,123,128],"pre",{"className":124,"code":125,"language":126,"meta":127,"style":127},"language-sql shiki shiki-themes github-light github-dark","GRANT SELECT ON database_name.* TO 'user'@'%';\n","sql","",[103,129,130],{"__ignoreMap":127},[131,132,135],"span",{"class":133,"line":134},"line",1,[131,136,125],{},[69,138,140],{"id":139},"connection-settings-in-dbconvert-streams","Connection settings in DBConvert Streams",[142,143,144,160],"table",{},[145,146,147],"thead",{},[148,149,150,154,157],"tr",{},[151,152,153],"th",{},"Setting",[151,155,156],{},"Default",[151,158,159],{},"Description",[161,162,163,174,187,197,207,217],"tbody",{},[148,164,165,169,171],{},[166,167,168],"td",{},"Host",[166,170],{},[166,172,173],{},"MySQL server hostname or IP",[148,175,176,179,184],{},[166,177,178],{},"Port",[166,180,181],{},[103,182,183],{},"3306",[166,185,186],{},"MySQL listener port",[148,188,189,192,194],{},[166,190,191],{},"Username",[166,193],{},[166,195,196],{},"Database user",[148,198,199,202,204],{},[166,200,201],{},"Password",[166,203],{},[166,205,206],{},"Database password",[148,208,209,212,214],{},[166,210,211],{},"Database",[166,213],{},[166,215,216],{},"Default schema to connect to",[148,218,219,222,225],{},[166,220,221],{},"SSL\u002FTLS",[166,223,224],{},"disabled",[166,226,227,228],{},"See ",[44,229,231],{"href":230},"\u002Fdocs\u002Fnetwork-security\u002Fssl-configuration","SSL Configuration",[14,233,234],{},"Example secure server configuration:",[122,236,240],{"className":237,"code":238,"language":239,"meta":127,"style":127},"language-ini shiki shiki-themes github-light github-dark","[mysqld]\nssl-ca=\u002Fpath\u002Fto\u002Fca.pem\nssl-cert=\u002Fpath\u002Fto\u002Fserver-cert.pem\nssl-key=\u002Fpath\u002Fto\u002Fserver-key.pem\nrequire_secure_transport=ON\n","ini",[103,241,242,247,253,259,265],{"__ignoreMap":127},[131,243,244],{"class":133,"line":134},[131,245,246],{},"[mysqld]\n",[131,248,250],{"class":133,"line":249},2,[131,251,252],{},"ssl-ca=\u002Fpath\u002Fto\u002Fca.pem\n",[131,254,256],{"class":133,"line":255},3,[131,257,258],{},"ssl-cert=\u002Fpath\u002Fto\u002Fserver-cert.pem\n",[131,260,262],{"class":133,"line":261},4,[131,263,264],{},"ssl-key=\u002Fpath\u002Fto\u002Fserver-key.pem\n",[131,266,268],{"class":133,"line":267},5,[131,269,270],{},"require_secure_transport=ON\n",[14,272,273],{},"Example connection payload:",[122,275,279],{"className":276,"code":277,"language":278,"meta":127,"style":127},"language-json shiki shiki-themes github-light github-dark","{\n  \"name\": \"mysql-secure-source\",\n  \"type\": \"mysql\",\n  \"host\": \"your-mysql-server\",\n  \"port\": 3306,\n  \"username\": \"your_user\",\n  \"password\": \"your_password\",\n  \"database\": \"your_database\",\n  \"ssl\": {\n    \"mode\": \"verify-ca\",\n    \"ca\": \"\u002Fpath\u002Fto\u002Fca.pem\",\n    \"cert\": \"\u002Fpath\u002Fto\u002Fclient-cert.pem\",\n    \"key\": \"\u002Fpath\u002Fto\u002Fclient-key.pem\"\n  }\n}\n","json",[103,280,281,287,303,315,327,338,351,364,377,386,399,412,425,436,442],{"__ignoreMap":127},[131,282,283],{"class":133,"line":134},[131,284,286],{"class":285},"sVt8B","{\n",[131,288,289,293,296,300],{"class":133,"line":249},[131,290,292],{"class":291},"sj4cs","  \"name\"",[131,294,295],{"class":285},": ",[131,297,299],{"class":298},"sZZnC","\"mysql-secure-source\"",[131,301,302],{"class":285},",\n",[131,304,305,308,310,313],{"class":133,"line":255},[131,306,307],{"class":291},"  \"type\"",[131,309,295],{"class":285},[131,311,312],{"class":298},"\"mysql\"",[131,314,302],{"class":285},[131,316,317,320,322,325],{"class":133,"line":261},[131,318,319],{"class":291},"  \"host\"",[131,321,295],{"class":285},[131,323,324],{"class":298},"\"your-mysql-server\"",[131,326,302],{"class":285},[131,328,329,332,334,336],{"class":133,"line":267},[131,330,331],{"class":291},"  \"port\"",[131,333,295],{"class":285},[131,335,183],{"class":291},[131,337,302],{"class":285},[131,339,341,344,346,349],{"class":133,"line":340},6,[131,342,343],{"class":291},"  \"username\"",[131,345,295],{"class":285},[131,347,348],{"class":298},"\"your_user\"",[131,350,302],{"class":285},[131,352,354,357,359,362],{"class":133,"line":353},7,[131,355,356],{"class":291},"  \"password\"",[131,358,295],{"class":285},[131,360,361],{"class":298},"\"your_password\"",[131,363,302],{"class":285},[131,365,367,370,372,375],{"class":133,"line":366},8,[131,368,369],{"class":291},"  \"database\"",[131,371,295],{"class":285},[131,373,374],{"class":298},"\"your_database\"",[131,376,302],{"class":285},[131,378,380,383],{"class":133,"line":379},9,[131,381,382],{"class":291},"  \"ssl\"",[131,384,385],{"class":285},": {\n",[131,387,389,392,394,397],{"class":133,"line":388},10,[131,390,391],{"class":291},"    \"mode\"",[131,393,295],{"class":285},[131,395,396],{"class":298},"\"verify-ca\"",[131,398,302],{"class":285},[131,400,402,405,407,410],{"class":133,"line":401},11,[131,403,404],{"class":291},"    \"ca\"",[131,406,295],{"class":285},[131,408,409],{"class":298},"\"\u002Fpath\u002Fto\u002Fca.pem\"",[131,411,302],{"class":285},[131,413,415,418,420,423],{"class":133,"line":414},12,[131,416,417],{"class":291},"    \"cert\"",[131,419,295],{"class":285},[131,421,422],{"class":298},"\"\u002Fpath\u002Fto\u002Fclient-cert.pem\"",[131,424,302],{"class":285},[131,426,428,431,433],{"class":133,"line":427},13,[131,429,430],{"class":291},"    \"key\"",[131,432,295],{"class":285},[131,434,435],{"class":298},"\"\u002Fpath\u002Fto\u002Fclient-key.pem\"\n",[131,437,439],{"class":133,"line":438},14,[131,440,441],{"class":285},"  }\n",[131,443,445],{"class":133,"line":444},15,[131,446,447],{"class":285},"}\n",[14,449,450],{},"Common SSL modes:",[21,452,453,458,464,470,476],{},[24,454,455,457],{},[103,456,224],{},": No SSL",[24,459,460,463],{},[103,461,462],{},"preferred",": Use SSL if available",[24,465,466,469],{},[103,467,468],{},"required",": Always use SSL",[24,471,472,475],{},[103,473,474],{},"verify-ca",": Verify server certificate",[24,477,478,481],{},[103,479,480],{},"verify-full",": Verify server certificate and hostname",[14,483,484,485,67],{},"For certificate details, use ",[44,486,231],{"href":230},[69,488,490],{"id":489},"network-and-host-access","Network and host access",[14,492,493,494,67],{},"Allow inbound access from the DBConvert Streams deployment to MySQL port ",[103,495,183],{},[14,497,498],{},"Example server setting:",[122,500,502],{"className":237,"code":501,"language":239,"meta":127,"style":127},"[mysqld]\nbind-address = 0.0.0.0\n",[103,503,504,508],{"__ignoreMap":127},[131,505,506],{"class":133,"line":134},[131,507,246],{},[131,509,510],{"class":133,"line":249},[131,511,512],{},"bind-address = 0.0.0.0\n",[14,514,515],{},"Example firewall rule:",[122,517,521],{"className":518,"code":519,"language":520,"meta":127,"style":127},"language-bash shiki shiki-themes github-light github-dark","sudo ufw allow from \u003CDBCONVERT_STREAMS_IP> to any port 3306\n","bash",[103,522,523],{"__ignoreMap":127},[131,524,525,529,532,535,538,542,545,548,551,554,557,560],{"class":133,"line":134},[131,526,528],{"class":527},"sScJk","sudo",[131,530,531],{"class":298}," ufw",[131,533,534],{"class":298}," allow",[131,536,537],{"class":298}," from",[131,539,541],{"class":540},"szBVR"," \u003C",[131,543,544],{"class":298},"DBCONVERT_STREAMS_I",[131,546,547],{"class":285},"P",[131,549,550],{"class":540},">",[131,552,553],{"class":298}," to",[131,555,556],{"class":298}," any",[131,558,559],{"class":298}," port",[131,561,562],{"class":291}," 3306\n",[14,564,565],{},"If you restrict source access by IP, make sure the allowlist matches the host that actually runs the API or reader services.",[69,567,569],{"id":568},"cdc-specific-preparation","CDC-specific preparation",[14,571,572],{},"CDC is not enabled by the base connection alone.",[14,574,575],{},"For MySQL CDC source workflows, also configure:",[21,577,578,581,584,587],{},[24,579,580],{},"binary logging",[24,582,583],{},"row-based binlog format",[24,585,586],{},"appropriate privileges for the CDC user",[24,588,589],{},"any provider-specific replication settings",[14,591,592,593,595],{},"Use ",[44,594,66],{"href":65}," for the full checklist.",[69,597,599],{"id":598},"validation-checklist","Validation checklist",[14,601,602],{},"Before you create a stream:",[604,605,606,619,625,633],"ol",{},[24,607,608,609,613,614,618],{},"Test the connection from the ",[44,610,612],{"href":611},"\u002Fdocs\u002Fdatabase-explorer\u002F","Data Explorer"," sidebar (right-click → ",[615,616,617],"strong",{},"Test connection",") or from the connection editor.",[24,620,621,622,624],{},"Open the connection in ",[44,623,612],{"href":611}," to confirm the visible objects.",[24,626,627,628,632],{},"Run a simple query in the ",[44,629,631],{"href":630},"\u002Fdocs\u002Fdatabase-explorer\u002Fsql-console","SQL Console"," if you need to validate filters or permissions.",[24,634,635],{},"Only then create the Load or CDC workflow.",[69,637,639],{"id":638},"related-docs","Related docs",[21,641,642,648,652,656],{},[24,643,644],{},[44,645,647],{"href":646},"\u002Fdocs\u002Fconnections\u002Fconnection-management","Connection Management",[24,649,650],{},[44,651,66],{"href":65},[24,653,654],{},[44,655,47],{"href":46},[24,657,658],{},[44,659,231],{"href":230},[661,662,663],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":127,"searchDepth":249,"depth":249,"links":665},[666,667,668,669,670,671,672],{"id":71,"depth":249,"text":72},{"id":92,"depth":249,"text":93},{"id":139,"depth":249,"text":140},{"id":489,"depth":249,"text":490},{"id":568,"depth":249,"text":569},{"id":598,"depth":249,"text":599},{"id":638,"depth":249,"text":639},"Configure self-managed MySQL-compatible servers for Load and MySQL CDC workflows in DBConvert Streams.","md",{},false,"\u002Fdocs\u002Fconnections\u002Fmysql-server",null,{"title":5,"description":673},"docs\u002Fconnections\u002Fmysql-server","z0ay8HSBhdHB3MHP6IldNOr5bi0FEIgE35vT9HY6EWc",1783896284367]