注意:
默认情况下仅支持与腾讯云数据仓库 TCHouse-P 集群处于同一 VPC 子网下的 CVM 服务器对 TCHouse-P 进行访问。如需支持公网直接访问腾讯云数据仓库 TCHouse-P,请参见公网开通。
您在创建好 TCHouse-P 数据仓库集群,开始使用 TCHouse-P 服务前,需要使用数据库客户端连接到数据库。请参考以下指导,使用命令行工具或 JDBC 驱动连接数据库。
前提条件
1. 已获取腾讯云数据仓库 TCHouse-P 集群的数据库管理员密码。数据库管理员密码为开始创建集群时设置的管理员账号密码。
2. 已获取创建好的腾讯云数据仓库 TCHouse-P 集群的访问 IP、端口以及 VPC 和子网。
获取集群访问地址和本地网络
选择对应的集群,详细信息如图所示。获取 VPC 网络:vpc-1asw4o73,子网:subnet-rdlodajk。链接 TCHouse-P 的 IP 为10.0.16.27,端口为9000,登录账户为 dbadmin。

命令行工具连接数据库
在获取的 VPC 网络:vpc-1asw4o73,子网:subnet-rdlodajk 中选择一台 CVM 服务器(如果不存在,则购买一台即可)。登录该服务器,执行以下命令,即可安装 PostgreSQL 客户端。
yum install -y postgresql.x86_64
执行下面的 SQL 命令,然后输入创建集群时输入的密码。
# 使用参数登录psql -h 10.0.16.27 -p 9000 -d postgres -U dbadmin# 使用conninfo字符串或者URL登录psql postgresql://dbadmin@10.0.16.27:9000/postgres
执行后,即可用管理员账号 dbadmin 成功登录 TCHouse-P 集群的 postgres 库,并进行交互式执行 sql。

JDBC 驱动连接数据库
示例代码
package com.qcloud.tchouse_p;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;import java.sql.SQLException;public class TCHousePConn {/** args: ip port user pwd*/public static void main(String[] args) throws ClassNotFoundException, SQLException {if (args.length < 4){System.out.println("args err");return;}String vip = args[0];String vport = args[1];String userName = args[2];String userPwd = args[3];System.out.printf("ip:%s, port:%s, userName:%s, userPwd:%s\\n",vip, vport, userName, userPwd);String jdbcUrl = "jdbc:postgresql://" + vip+":"+vport+"/postgres";System.out.printf("jdbcUrl:%s \\n",jdbcUrl);Class.forName("org.postgresql.Driver");Connection tchousep = DriverManager.getConnection(jdbcUrl,userName,userPwd);Statement st = tchousep.createStatement();ResultSet rs = st.executeQuery("select distinct tablename from pg_tables limit 2;");while (rs.next()) {System.out.print("result: " + rs.getString(1));System.out.print("\\n");}rs.close();st.close();}}
将代码编译后,将.class 文件上传到 CVM上,放到 com/qcloud/tchouse_p/ 目录下,同时上传 JDBC 驱动到与 com 同级目录下,执行命令:
java -cp .:postgresql-42.3.3.jar com.qcloud.tchouse_p.TCHousePConn 10.0.16.27 9000 dbadmin 管理员账号密码
即可在 Java 代码中通过 JDBC 连接数据库。

注意:
IP 和端口分别为腾讯云数据仓库 TCHouse-P 集群链接地址,用户名和密码分别是创建集群时填写的信息,具体获取方式见前文。