{"id":4829,"date":"2023-02-03T11:45:03","date_gmt":"2023-02-03T03:45:03","guid":{"rendered":"http:\/\/euhat.com\/wp\/?p=4829"},"modified":"2023-05-18T09:40:09","modified_gmt":"2023-05-18T01:40:09","slug":"install-clickhouse","status":"publish","type":"post","link":"http:\/\/euhat.com\/wp\/2023\/02\/03\/install-clickhouse\/","title":{"rendered":"Install ClickHouse"},"content":{"rendered":"<pre lang=\"bash\" line=\"1\">\r\ncurl https:\/\/clickhouse.com\/ | sh\r\nsudo service clickhouse-server start\r\nclickhouse-client\r\n<\/pre>\n<p>Qt code for connecting clickhouse is<\/p>\n<pre lang=\"cpp\" line=\"1\">\r\n#include <QSqlDatabase>\r\n#include <QSqlQuery>\r\n#include <QSqlError>\r\n\r\nint main(int argc, char *argv[])\r\n{\r\n\tQSqlDatabase db = QSqlDatabase::addDatabase(\"QMYSQL\");\r\n\tdb.setHostName(\"192.168.22.129\");\r\n\tdb.setPort(9004);\r\n\tdb.setDatabaseName(\"default\");\r\n\tdb.setUserName(\"default\");\r\n\tdb.setPassword(\"1\");\r\n\tbool ok = db.open();\r\n\tif (!ok)\r\n\t{\r\n\t\tprintf(\"error, %s\\n\", db.lastError().text().toStdString().c_str());\r\n\t\treturn -1;\r\n\t}\r\n\tQSqlQuery query(db);\r\n\tquery.exec(\"select * from Tst01;\");\r\n\twhile (query.next())\r\n\t{\r\n\t\tdouble price = query.value(\"Price\").toDouble();\r\n\t\tQString name = query.value(\"Name\").toString();\r\n\t\tprintf(\"price:%f, name:%s\\n\", (float)price, name.toStdString().c_str());\r\n\t}\r\n\treturn 0;\r\n}\r\n<\/pre>\n<p>CMakeLists.txt<\/p>\n<pre lang=\"cmake\" line=\"1\">\r\nfind_package(Qt5 COMPONENTS Core ... Sql ...)\r\ntarget_link_libraries(exe_1 Qt::Core ... Qt::Sql ...)\r\n<\/pre>\n<p>Connection refused,<\/p>\n<pre line=\"1\">\r\n# \/etc\/clickhouse-server\/config.xml\r\n<listen_host>::<\/listen_host>\r\n# sudo clickhouse restart\r\n<\/pre>\n<p>Dbeaver,<\/p>\n<pre line=\"1\">\r\njdbc:clickhouse:\/\/192.168.22.129:8123\r\n<\/pre>\n<p>Python,<\/p>\n<pre lang=\"python\" line=\"1\">\r\n#pip install clickhouse_driver\r\nfrom clickhouse_driver import Client\r\nimport pandas as pd\r\nclient = Client(host=\"192.168.22.129\", port=9000, database=\"default\", user=\"default\", password=\"1\")\r\ntable = client.query_dataframe(\"select * from Tst01;\")\r\ntable.to_csv(\"d:\\\\aa.csv\")\r\n<\/pre>\n<p>Sql,<\/p>\n<pre lang=\"sql\" line=\"1\">\r\nTRUNCATE table db.table;\r\n<\/pre>\n<p>refer to:<br \/>\n<a href=\"https:\/\/blog.csdn.net\/csgarten\/article\/details\/127439859\" rel=\"nofollow\">https:\/\/blog.csdn.net\/csgarten\/article\/details\/127439859<\/a><br \/>\n<a href=\"https:\/\/www.jianshu.com\/p\/aeb1053f4e96\" rel=\"nofollow\">https:\/\/www.jianshu.com\/p\/aeb1053f4e96<\/a><br \/>\n<a href=\"https:\/\/github.com\/ClickHouse\/clickhouse-odbc\/releases\" rel=\"nofollow\">https:\/\/github.com\/ClickHouse\/clickhouse-odbc\/releases<\/a><br \/>\n<a href=\"https:\/\/blog.csdn.net\/weixin_46076132\/article\/details\/123462457\" rel=\"nofollow\">https:\/\/blog.csdn.net\/weixin_46076132\/article\/details\/123462457<\/a><br \/>\n<a href=\"https:\/\/www.codenong.com\/cs106775070\/\" rel=\"nofollow\">https:\/\/www.codenong.com\/cs106775070\/<\/a><br \/>\n<a href=\"https:\/\/blog.csdn.net\/xiaoyw71\/article\/details\/117692741\" rel=\"nofollow\">https:\/\/blog.csdn.net\/xiaoyw71\/article\/details\/117692741<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>curl https:\/\/clickhouse.com\/ | sh sudo service clickhouse-server start clickhouse-client Qt code for connecting clickhouse is #include #include #include int main(int argc, char *argv[]) { QSqlDatabase db = QSqlDatabase::addDatabase(\"QMYSQL\"); db.setHostName(\"192.168.22.129\"); db.setPort(9004); db.setDatabaseName(\"default\"); db.setUserName(\"default\"); db.setPassword(\"1\"); bool ok = db.open(); if (!ok) { printf(\"error, %s\\n\", db.lastError().text().toStdString().c_str()); return -1; } QSqlQuery query(db); query.exec(\"select * from Tst01;\"); while (query.next()) { ... <a title=\"Install ClickHouse\" class=\"read-more\" href=\"http:\/\/euhat.com\/wp\/2023\/02\/03\/install-clickhouse\/\" aria-label=\"More on Install ClickHouse\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[878],"_links":{"self":[{"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/posts\/4829"}],"collection":[{"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/comments?post=4829"}],"version-history":[{"count":18,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/posts\/4829\/revisions"}],"predecessor-version":[{"id":5086,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/posts\/4829\/revisions\/5086"}],"wp:attachment":[{"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/media?parent=4829"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/categories?post=4829"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/euhat.com\/wp\/wp-json\/wp\/v2\/tags?post=4829"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}