blob: 0af62362d631f8f830ee259481c81658bea029d2 [file] [log] [blame]
(window.webpackJsonp=window.webpackJsonp||[]).push([[564],{1132:function(s,a,t){"use strict";t.r(a);var e=t(70),n=Object(e.a)({},(function(){var s=this,a=s.$createElement,t=s._self._c||a;return t("ContentSlotsDistributor",{attrs:{"slot-key":s.$parent.slotKey}},[t("h2",{attrs:{id:"获取iotdb的途径"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#获取iotdb的途径"}},[s._v("#")]),s._v(" 获取IoTDB的途径")]),s._v(" "),t("p",[s._v("IoTDB为您提供了两种安装方式,您可以参考下面的建议,任选其中一种:")]),s._v(" "),t("p",[s._v("第一种,从官网下载安装包。这是我们推荐使用的安装方式,通过该方式,您将得到一个可以立即使用的、打包好的二进制可执行文件。")]),s._v(" "),t("p",[s._v("第二种,使用源码编译。若您需要自行修改代码,可以使用该安装方式。")]),s._v(" "),t("h3",{attrs:{id:"安装环境要求"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#安装环境要求"}},[s._v("#")]),s._v(" 安装环境要求")]),s._v(" "),t("p",[s._v("安装前请保证您的电脑上配有JDK>=1.8的运行环境,并配置好JAVA_HOME环境变量。")]),s._v(" "),t("p",[s._v("如果您需要从源码进行编译,还需要安装:")]),s._v(" "),t("ol",[t("li",[s._v("Maven >= 3.6 的运行环境,具体安装方法可以参考以下链接:"),t("a",{attrs:{href:"https://maven.apache.org/install.html",target:"_blank",rel:"noopener noreferrer"}},[s._v("https://maven.apache.org/install.html"),t("OutboundLink")],1),s._v("。")])]),s._v(" "),t("blockquote",[t("p",[s._v("注: 也可以选择不安装,使用我们提供的'mvnw.sh' 或 'mvnw.cmd' 工具。使用时请用'mvnw.sh' 或 'mvnw.cmd'命令代替下文的'mvn'命令。")])]),s._v(" "),t("h3",{attrs:{id:"从官网下载二进制可执行文件"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#从官网下载二进制可执行文件"}},[s._v("#")]),s._v(" 从官网下载二进制可执行文件")]),s._v(" "),t("p",[s._v("您可以从"),t("a",{attrs:{href:"http://iotdb.apache.org/Download/",target:"_blank",rel:"noopener noreferrer"}},[s._v("http://iotdb.apache.org/Download/"),t("OutboundLink")],1),s._v(" 上下载已经编译好的可执行程序iotdb-xxx.zip,该压缩包包含了IoTDB系统运行所需的所有必要组件。")]),s._v(" "),t("p",[s._v("下载后,您可使用以下操作对IoTDB的压缩包进行解压:")]),s._v(" "),t("div",{staticClass:"language- line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("Shell > uzip iotdb-<version>.zip\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("h3",{attrs:{id:"使用源码编译"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#使用源码编译"}},[s._v("#")]),s._v(" 使用源码编译")]),s._v(" "),t("p",[s._v("您可以获取已发布的源码"),t("a",{attrs:{href:"https://iotdb.apache.org/Download/",target:"_blank",rel:"noopener noreferrer"}},[s._v("https://iotdb.apache.org/Download/"),t("OutboundLink")],1),s._v(" ,或者从"),t("a",{attrs:{href:"https://github.com/apache/iotdb/tree/master",target:"_blank",rel:"noopener noreferrer"}},[s._v("https://github.com/apache/iotdb/tree/master"),t("OutboundLink")],1),s._v(" git仓库获取")]),s._v(" "),t("p",[s._v("源码克隆后,进入到源码文件夹目录下,使用以下命令进行编译:")]),s._v(" "),t("div",{staticClass:"language- line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("> mvn clean package -pl server -am -Dmaven.test.skip=true\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v('编译后,IoTDB 服务器会在 "server/target/iotdb-server-{project.version}" 文件夹下,包含以下内容:')]),s._v(" "),t("div",{staticClass:"language- line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("+- sbin/ <-- script files\n|\n+- conf/ <-- configuration files\n|\n+- lib/ <-- project dependencies\n|\n+- tools/ <-- system tools\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br"),t("span",{staticClass:"line-number"},[s._v("3")]),t("br"),t("span",{staticClass:"line-number"},[s._v("4")]),t("br"),t("span",{staticClass:"line-number"},[s._v("5")]),t("br"),t("span",{staticClass:"line-number"},[s._v("6")]),t("br"),t("span",{staticClass:"line-number"},[s._v("7")]),t("br")])]),t("h3",{attrs:{id:"通过docker安装-dockerfile"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#通过docker安装-dockerfile"}},[s._v("#")]),s._v(" 通过Docker安装 (Dockerfile)")]),s._v(" "),t("p",[s._v("Apache IoTDB的Docker镜像已经上传至 "),t("a",{attrs:{href:"https://hub.docker.com/r/apache/iotdb",target:"_blank",rel:"noopener noreferrer"}},[s._v("https://hub.docker.com/r/apache/iotdb"),t("OutboundLink")],1),s._v(",\n使用"),t("code",[s._v("docker pull apache/iotdb:latest")]),s._v("即可获取最新的docker镜像。")]),s._v(" "),t("p",[s._v("用户也可以根据代码提供的Dockerfile文件来自己生成镜像。\nDockerfile 存放在的 docker 工程下的 src/main/Dockerfile 中.")]),s._v(" "),t("ol",[t("li",[s._v("您可以使用下面的命令构建 docker image:")])]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker build -t iotdb:base git://github.com/apache/iotdb"),t("span",{pre:!0,attrs:{class:"token comment"}},[s._v("#master:docker")]),s._v("\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v("或者:")]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("git")]),s._v(" clone https://github.com/apache/iotdb\n$ "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("cd")]),s._v(" iotdb\n$ mvn package -DskipTests\n$ "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("cd")]),s._v(" docker\n$ docker build -t iotdb:base "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v(".")]),s._v("\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br"),t("span",{staticClass:"line-number"},[s._v("3")]),t("br"),t("span",{staticClass:"line-number"},[s._v("4")]),t("br"),t("span",{staticClass:"line-number"},[s._v("5")]),t("br")])]),t("p",[s._v("当 docker image 在本地构建完成当时候 (示例中的 tag为 iotdb:base),已经距完成只有一步之遥了!")]),s._v(" "),t("ol",{attrs:{start:"2"}},[t("li",[s._v("创建数据文件和日志的 docker 挂载目录(docker volume):")])]),s._v(" "),t("div",{staticClass:"language- line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v("$ docker volume create mydata\n$ docker volume create mylogs\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br")])]),t("ol",{attrs:{start:"3"}},[t("li",[s._v("运行 docker container:")])]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker run -p "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6667")]),s._v(":6667 -v mydata:/iotdb/data -v mylogs:/iotdb/logs -d iotdb:base /iotdb/bin/start-server.sh\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v("您可以使用"),t("code",[s._v("docker ps")]),s._v("来检查是否运行成功,当成功时控制台会输出下面的日志:")]),s._v(" "),t("div",{staticClass:"language- line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-text"}},[t("code",[s._v('CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES\n2a68b6944cb5 iotdb:base "/iotdb/bin/start-se…" 4 minutes ago Up 5 minutes 0.0.0.0:6667->6667/tcp laughing_meitner\n')])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br")])]),t("p",[s._v("您可以使用下面的命令来获取 container 的 ID:")]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker container "),t("span",{pre:!0,attrs:{class:"token function"}},[s._v("ls")]),s._v("\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v("假设这个 ID 为 <C_ID>.")]),s._v(" "),t("p",[s._v("然后使用下面的命令获取这个 ID 对应的 IP 地址:")]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker inspect --format"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("=")]),t("span",{pre:!0,attrs:{class:"token string"}},[s._v("'{{.NetworkSettings.IPAddress}}'")]),s._v(" "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("C_ID"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v("假设获取的 IP 为 <C_IP>.")]),s._v(" "),t("ol",{attrs:{start:"4"}},[t("li",[s._v("如果您想尝试使用 iotdb-cli 命令行, 您可以使用如下命令:")])]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker "),t("span",{pre:!0,attrs:{class:"token builtin class-name"}},[s._v("exec")]),s._v(" -it /bin/bash "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("C_ID"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v("\n$ "),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("(")]),s._v("now you have enter the container"),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(")")]),s._v(": /cli/sbin/start-cli.sh -h localhost -p "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6667")]),s._v(" -u root -pw root\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br")])]),t("p",[s._v("或者运行一个新的 client docker container,命令如下:")]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ docker run -it iotdb:base /cli/sbin/start-cli.sh -h "),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v("<")]),s._v("C_IP"),t("span",{pre:!0,attrs:{class:"token operator"}},[s._v(">")]),s._v(" -p "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6667")]),s._v(" -u root -pw root\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("p",[s._v("还可以使用本地的 iotdb-cli (比如:您已经使用"),t("code",[s._v("mvn package")]),s._v("编译过源码), 假设您的 work_dir 是 cli/bin, 那么您可以直接运行:")]),s._v(" "),t("div",{staticClass:"language-shell line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-shell"}},[t("code",[s._v("$ start-cli.sh -h localhost -p "),t("span",{pre:!0,attrs:{class:"token number"}},[s._v("6667")]),s._v(" -u root -pw root\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br")])]),t("ol",{attrs:{start:"5"}},[t("li",[s._v("如果您想写一些代码来插入或者查询数据,您可以在 pom.xml 文件中加入下面的依赖:")])]),s._v(" "),t("div",{staticClass:"language-xml line-numbers-mode"},[t("pre",{pre:!0,attrs:{class:"language-xml"}},[t("code",[s._v(" "),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("<")]),s._v("dependency")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("<")]),s._v("groupId")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("org.apache.iotdb"),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("</")]),s._v("groupId")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("<")]),s._v("artifactId")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("iotdb-jdbc"),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("</")]),s._v("artifactId")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("<")]),s._v("version")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("0.10.0"),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("</")]),s._v("version")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("\n "),t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token tag"}},[t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v("</")]),s._v("dependency")]),t("span",{pre:!0,attrs:{class:"token punctuation"}},[s._v(">")])]),s._v("\n")])]),s._v(" "),t("div",{staticClass:"line-numbers-wrapper"},[t("span",{staticClass:"line-number"},[s._v("1")]),t("br"),t("span",{staticClass:"line-number"},[s._v("2")]),t("br"),t("span",{staticClass:"line-number"},[s._v("3")]),t("br"),t("span",{staticClass:"line-number"},[s._v("4")]),t("br"),t("span",{staticClass:"line-number"},[s._v("5")]),t("br")])]),t("p",[s._v("这里是一些使用 IoTDB-JDBC 连接 IoTDB 的示例: https://github.com/apache/iotdb/tree/master/example/jdbc/src/main/java/org/apache/iotdb")]),s._v(" "),t("ol",{attrs:{start:"6"}},[t("li",[s._v("现在已经大功告成了")])])])}),[],!1,null,null,null);a.default=n.exports}}]);