(window.webpackJsonp=window.webpackJsonp||[]).push([[99],{664:function(t,e,s){"use strict";s.r(e);var r=s(69),n=Object(r.a)({},(function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[s("h1",{attrs:{id:"single-node-setup"}},[s("a",{staticClass:"header-anchor",attrs:{href:"#single-node-setup"}},[t._v("#")]),t._v(" Single Node Setup")]),t._v(" "),s("p",[t._v("Users are able to start IoTDB through the start-server script under the sbin folder.")]),t._v(" "),s("div",{staticClass:"language- line-numbers-mode"},[s("pre",{pre:!0,attrs:{class:"language-text"}},[s("code",[t._v("# Unix/OS X\n> nohup sbin/start-server.sh >/dev/null 2>&1 &\nor\n> nohup sbin/start-server.sh -c <conf_path> -rpc_port <rpc_port> >/dev/null 2>&1 &\n\n# Windows\n> sbin\\start-server.bat -c <conf_path> -rpc_port <rpc_port>\n")])]),t._v(" "),s("div",{staticClass:"line-numbers-wrapper"},[s("span",{staticClass:"line-number"},[t._v("1")]),s("br"),s("span",{staticClass:"line-number"},[t._v("2")]),s("br"),s("span",{staticClass:"line-number"},[t._v("3")]),s("br"),s("span",{staticClass:"line-number"},[t._v("4")]),s("br"),s("span",{staticClass:"line-number"},[t._v("5")]),s("br"),s("span",{staticClass:"line-number"},[t._v("6")]),s("br"),s("span",{staticClass:"line-number"},[t._v("7")]),s("br")])]),s("ul",[s("li",[t._v('"-c" and "-rpc_port" are optional.')]),t._v(" "),s("li",[t._v('option "-c" specifies the system configuration file directory.')]),t._v(" "),s("li",[t._v('option "-rpc_port" specifies the rpc port.')]),t._v(" "),s("li",[t._v("if both option specified, the "),s("em",[t._v("rpc_port")]),t._v(" will override the rpc_port in "),s("em",[t._v("conf_path")]),t._v(".")])])])}),[],!1,null,null,null);e.default=n.exports}}]);