(window.webpackJsonp=window.webpackJsonp||[]).push([[33],{LbG8:function(e,t,n){"use strict";n.r(t),n.d(t,"_frontmatter",(function(){return c})),n.d(t,"default",(function(){return i}));var a=n("k1TG"),o=n("8o2o"),r=(n("q1tI"),n("7ljp")),s=n("hhGP"),c=(n("qKvR"),{});void 0!==c&&c&&c===Object(c)&&Object.isExtensible(c)&&!c.hasOwnProperty("__filemeta")&&Object.defineProperty(c,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/Connecting to Databases/mysql.mdx"}});var b={_frontmatter:c},l=s.a;function i(e){var t=e.components,n=Object(o.a)(e,["components"]);return Object(r.b)(l,Object(a.a)({},b,n,{components:t,mdxType:"MDXLayout"}),Object(r.b)("h2",{id:"mysql"},"MySQL"),Object(r.b)("p",null,"The recommended connector library for MySQL is ",Object(r.b)("a",Object(a.a)({parentName:"p"},{href:"https://pypi.org/project/mysqlclient/"}),"mysqlclient"),"."),Object(r.b)("p",null,"Set up the Connection String using the following settings:"),Object(r.b)("p",null,"User Name: UserName\nPassword: DBPassword\nDatabase Host:"),Object(r.b)("ul",null,Object(r.b)("li",{parentName:"ul"},"For Localhost or docker running Linux: localhost or 127.0.0.1"),Object(r.b)("li",{parentName:"ul"},"For On Prem: IP address or Host name"),Object(r.b)("li",{parentName:"ul"},"For AWS Endpoint"),Object(r.b)("li",{parentName:"ul"},"For Docker running in OSX: docker.for.mac.host.internal\nDatabase Name: Database Name\nPort: default 3306")),Object(r.b)("p",null,"Connection String"),Object(r.b)("pre",null,Object(r.b)("code",Object(a.a)({parentName:"pre"},{}),"mysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>\n")))}void 0!==i&&i&&i===Object(i)&&Object.isExtensible(i)&&!i.hasOwnProperty("__filemeta")&&Object.defineProperty(i,"__filemeta",{configurable:!0,value:{name:"MDXContent",filename:"src/pages/docs/Connecting to Databases/mysql.mdx"}}),i.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-connecting-to-databases-mysql-mdx-da615c5b28efe65015d6.js.map