(window.webpackJsonp=window.webpackJsonp||[]).push([[38],{YMpH:function(e,t,a){"use strict";a.r(t),a.d(t,"_frontmatter",(function(){return b})),a.d(t,"default",(function(){return i}));var r=a("wx14"),n=a("zLVn"),c=(a("q1tI"),a("7ljp")),o=a("hhGP"),b=(a("qKvR"),{});void 0!==b&&b&&b===Object(b)&&Object.isExtensible(b)&&!b.hasOwnProperty("__filemeta")&&Object.defineProperty(b,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/Connecting to Databases/vertica.mdx"}});var l={_frontmatter:b},s=o.a;function i(e){var t=e.components,a=Object(n.a)(e,["components"]);return Object(c.b)(s,Object(r.a)({},l,a,{components:t,mdxType:"MDXLayout"}),Object(c.b)("h2",{id:"vertica"},"Vertica"),Object(c.b)("p",null,"The recommended connector library is\n",Object(c.b)("a",{href:"https://pypi.org/project/sqlalchemy-vertica-python/",parentName:"p"},"sqlalchemy-vertica-python"),". The\n",Object(c.b)("a",{href:"http://www.vertica.com/",parentName:"p"},"Vertica")," connection parameters are:"),Object(c.b)("ul",null,Object(c.b)("li",{parentName:"ul"},Object(c.b)("strong",{parentName:"li"},"User Name:")," UserName"),Object(c.b)("li",{parentName:"ul"},Object(c.b)("strong",{parentName:"li"},"Password:")," DBPassword"),Object(c.b)("li",{parentName:"ul"},Object(c.b)("strong",{parentName:"li"},"Database Host:"),Object(c.b)("ul",{parentName:"li"},Object(c.b)("li",{parentName:"ul"},"For Localhost : localhost or 127.0.0.1"),Object(c.b)("li",{parentName:"ul"},"For On Prem : IP address or Host name"),Object(c.b)("li",{parentName:"ul"},"For Cloud: IP Address or Host Name"))),Object(c.b)("li",{parentName:"ul"},Object(c.b)("strong",{parentName:"li"},"Database Name:")," Database Name"),Object(c.b)("li",{parentName:"ul"},Object(c.b)("strong",{parentName:"li"},"Port:")," default 5433")),Object(c.b)("p",null,"The connection string is formatted as follows:"),Object(c.b)("pre",null,Object(c.b)("code",{parentName:"pre"},"vertica+vertica_python://{username}:{password}@{host}/{database}\n")),Object(c.b)("p",null,"Other parameters:"),Object(c.b)("ul",null,Object(c.b)("li",{parentName:"ul"},"Load Balancer - Backup Host")))}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/vertica.mdx"}}),i.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-connecting-to-databases-vertica-mdx-f170b81ca458da65ff6d.js.map