ClickHouse创建账号和连接测试

ops/2024/11/8 18:48:19/

在之前搭建ClickHouse的时候,把账户相关的去掉了,所以登录和连接的时候是不需要账号密码的,但是实际项目中,肯定是需要根据需要创建账号。

一,创建账号

1,进入到 /etc/clickhouse-server, 编辑users.xml

找到users这个标签对, 这个里面子标签就是用户名。比如clickhouse的默认用户default,默认是没有密码的,如果需要密码,可以在<password></password>标签里输入密码。

修改之后重启服务

systemctl restart clickhouse-server.service

下面这个access_management开启之后,就可以使用default账号进行创建账号和授权给其他账号。

2,连接clickhouse,执行sql添加账号,并授权

clickhouse-client -m --password

再输入上面这个default账号的密码

-- 创建用户clickhouse
CREATE USER clickhouse HOST IP '0.0.0.0' IDENTIFIED WITH sha256_password BY 'clickhouse';

其中IP '0.0.0.0'表示允许使用clickhouse用户从任何一台主机上登录clickhouse


-- 给用户授权
GRANT ALL ON *.* TO clickhouse WITH GRANT OPTION;
-- 查看用户权限
show create user clickhouse;
-- 查看授权
show grants for clickhouse;

3, 另外一种方式创建用户

直接在上面那个users.xml里添加用户也是可以的。

在<users></users>标签中间添加

<clickhouse>

        <password>clickhouse</password>

<clickhouse>

注: 这里是创建了一个账号clickhouse,密码是clickhouse。 你可以根据你的需要去创建账号。

完成保存,之后重启一下服务

二,连接ClickHouse

1,使用clickhouse账户登录

clickhouse-client -m --user clickhouse --password clickhouse

2,查看数据库

show databases;

3,  创建数据库,并切换数据库

登录之后,默认使用的schema是default

--创建数据库

CREATE DATABASE IF NOT EXISTS account;

--切换数据库

use account;

4,创建表

CREATE TABLE student
(
    `StudentID` UInt32,
    `StudentName` String,
    `Address` String,
    `Grade` Int8,
    `Age` Int8,
    `Gender` UInt8,
    `StartTime` DateTime
)
ENGINE = CollapsingMergeTree(Grade)
PARTITION BY toYYYYMM(StartTime)
ORDER BY (StudentID);
 

5,查询表

show tables

6,删除表

drop table student1;

语法和Mysql相似。

三,代码中连接ClickHouse

1,导入pom依赖

<!-- ClickHouse Start -->
<dependency><groupId>ru.yandex.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.1.40</version>
</dependency>
<!-- ClickHouse End -->

2,加载驱动,插入数据,查询数据

package com.x.bigdata;import java.sql.*;public class TestConnectionClickHouse {private static Connection connection = null;static {try {Class.forName("ru.yandex.clickhouse.ClickHouseDriver");// 驱动包String url = "jdbc:clickhouse://x.x.x.x:8123/account";// url路径String user = "clickhouse";// 账号String password = "clickhouse";// 密码connection = DriverManager.getConnection(url, user, password);}catch (Exception e){e.printStackTrace();}}public static void main(String[] args) throws SQLException {insert();select();if (connection != null){connection.close();}}/*** 插入数据* @throws SQLException*/public static void insert() throws SQLException {PreparedStatement prepareStatement = connection.prepareStatement("insert into account.student values (?,?,?,?,?,?,?)");prepareStatement.setInt(1,1002);prepareStatement.setString(2,"小猫猫");prepareStatement.setString(3,"中国-贵州-贵阳");prepareStatement.setInt(4,1);// 年级prepareStatement.setInt(5,21);prepareStatement.setInt(6,1); // 1:男,0:女prepareStatement.setDate(7,new Date(2020,12,22));prepareStatement.executeUpdate();if (prepareStatement != null){prepareStatement.close();}}/*** 查询数据* @throws SQLException*/public static void select() throws SQLException {PreparedStatement statement = connection.prepareStatement("select * from account.student");ResultSet resultSet = statement.executeQuery();while (resultSet.next()){int studentID = resultSet.getInt(1);String studentName = resultSet.getString(2);System.out.println(studentID + "," + studentName);}}
}

后续就是集成到SpringBoot项目中。。。


http://www.ppmy.cn/ops/132006.html

相关文章

达梦数据守护集群_动态增加实时备库

目录 1、概述 2、实验环境 2.1环境信息 2.2配置信息 2.3 查看初始化参数 3、动态增加实时备库 3.1数据准备 3.2配置新备库 3.3动态增加MAL配置 3.4 关闭守护进程及监视器 3.5修改归档&#xff08;方法1&#xff1a;动态添加归档配置&#xff09; 3.6 修改归档&…

jmeter常用配置元件介绍总结之取样器

系列文章目录 1.windows、linux安装jmeter及设置中文显示 2.jmeter常用配置元件介绍总结之安装插件 3.jmeter常用配置元件介绍总结之取样器 jmeter常用配置元件介绍总结之取样器 2.取样器2.1.HTTP请求2.2.Debug Sampler2.3.JSR223 Sampler2.4.JDBC Connection Configuration和J…

net core Autofac 替换默认的服务容器 DI,微软自动的容器 不支持命名选项的

微软默认的容器&#xff0c;不支持命名选项&#xff0c;同一接口&#xff0c;多个实现。 就不支持了。 配置core 支持Autofac 容器 using Autofac; using Autofac.Extensions.DependencyInjection;namespace WebApplication13 {public interface IMyService{string GetData()…

鸿蒙生态崛起:开发者的机遇与挑战

华为OD机试 2024E卷题库疯狂收录中&#xff0c;刷题 点这里。 实战项目访问&#xff1a;http://javapub.net.cn/ 引言 作为一名技术博主&#xff0c;我对技术趋势始终保持着敏锐的洞察力。在数字化时代&#xff0c;操作系统作为智能设备的核心&#xff0c;其重要性不言而喻。随…

【Mysql NDB Cluster 集群(CentOS 7)安装笔记一】

Mysql NDB Cluster 集群(CentOS 7)安装笔记 NDB集群核心概念 NDBCLUSTER(也称为NDB)是一个内存存储引擎,提供高可用性和数据保存功能。 NDBCLUSTER存储引擎可以配置一系列故障转移和负载平衡选项,但从集群级别的存储引擎开始是最容易的。NDB集群的NDB存储引擎包含一整套…

LabVIEW离心泵性能优化测试系统

开发了一套基于LabVIEW平台开发的离心泵性能优化测试系统。系统集成了数据采集、流量控制、数据存储、报表生成等功能&#xff0c;提供了低成本、便捷操作的解决方案&#xff0c;适用于工业场景中对离心泵性能的精确测评。 项目背景 随着工业化进程的加速&#xff0c;离心泵在…

Netty篇(入门编程)

目录 一、Hello World 1. 目标 2. 服务器端 3. 客户端 4. 流程梳理 &#x1f4a1; 提示 5. 运行结果截图 二、Netty执行流程 1. 流程分析 2. 代码案例 2.1. 引入依赖 2.2. 服务端 服务端 服务端处理器 2.3. 客户端 客户端 客户端处理器 2.4. 代码截图 一、Hel…

Java智慧养老养老护理帮忙代办陪诊陪护平台系统小程序源码

&#x1f31f; 智慧养老新时代&#xff1a;养老护理、帮忙代办、陪诊陪护平台系统全解析 &#x1f3e1; &#x1f475; 引言&#xff1a;智慧养老&#xff0c;让爱无距离 随着科技的飞速发展&#xff0c;智慧养老已成为新时代老年人的新选择。通过养老护理、帮忙代办、陪诊陪护…