Lindorm使用教程

前提

阿里Lindorm数据库是收费的,需在阿里云官网购买实例,链接:云原生多模数据库Lindorm

1. 使用 Lindorm-cli 连接 Lindorm

Lindorm-cli类似于mysqlshell命令行,使用命令行连接数据库,具体操作见 Lindorm-cli

我这里用的宽表引擎,共有6中引擎,宽表引擎,时序引擎,搜索引擎,文件引擎,计算引擎,流引擎。详见Lindorm - 介绍

1.1 进入实例详情页面

进入 Lindorm 控制台

点击 ID 进入实例详情

1.2 开通外网地址

点击左侧数据库连接

点击开通外网地址

点击后上方的实例状态会变成网络变更中,等待即可。

接下来配置IP白名单,此白名单为连接数据库的客户端IP地址

1.3 修改分组白名单

点击左侧访问控制,然后点击修改分组白名单

多个IP用英文逗号隔开

1.4 下载 Lindom-cli

接下来我们去下载Lindorm为我们提供的Lindorm-cli数据库连接工具,有WindowsLinuxMac三个版本。下载地址:Lindorm-cli   

根据自身情况选择不同版本,我这里选择 Linux 版的 

1.5 使用连接命令

下载成功后使用以下命令连接,尖括号和里面的为需要替换的内容

./lindorm-cli -url <host:port> -username <用户名> -password <密码>

其中 url 实例详情 -> 数据库连接页面的公网,如下图所示:

usernamepassword默认为root

1.6 测试

 Lindorm-cli使用教程完毕

2. 使用 HBaseue Shell 连接宽表引擎

因为Lindorm宽表引擎兼容HBase,所以此功能相当于使用HBase Shell 连接HBase数据库,详情官方文档:HBaseue Shell连接并使用宽表引擎

2.1 Lindorm Shell 下载

进入Lindorm控制台实例详情,点击左侧数据库连接,点击 【Lindorm Shell 下载】

2.2 解压压缩包

将压缩包放在 Linux 系统下,执行以下命令解压HBaseue Shell压缩包

tar zxvf hbaseue-shell.tar.gz

此时会解压出名为alihbase-2.0.18的文件夹

2.3 配置连接参数

进入alihbase-2.0.18/conf目录,打开hbase-site.xml文件

vi hbase-site.xml

配置Lindorm实例的连接地址和用户名密码

<configuration>
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>ld-bp17j28j2y7pm****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020</value>
    </property>
    <property>
        <name>hbase.client.username</name>
        <value>root</value>
    </property>
    <property>
        <name>hbase.client.password</name>
        <value>root</value>
    </property>
</configuration>

说明

  • hbase.zookeeper.quorum:填写为Lindorm宽表引擎的使用HBase Java API访问连接地址。
  • hbase.client.username和hbase.client.password:填写访问Lindorm宽表的用户名和密码,如果您忘记密码可以通过宽表引擎的集群管理系统修改密码,具体操作请参见修改用户密码

2.4 运行连接命令

通过HBaseue Shell访问Lindorm宽表引擎

进入alihbase-2.0.18/bin目录执行以下命令

./hbase shell

返回如下信息表示成功访问。

Version 2.0.18, r08b8d58a9d6ce89765d5ebe2ddff425aed644c16, Mon Feb  1 12:46:39 CST 2021
Took 0.0034 seconds

 说明

  • Shell的使用方法可以参见HBase Shell使用介绍
  • 通过HBaseue Shell连接Lindorm宽表引擎仅支持简单的DDL操作和数据读写操作,详情请参见使用限制

3. 使用 Java API 连接 Lindorm

3.1 maven 依赖

<dependency> 
  <groupId>com.aliyun.lindorm</groupId>  
  <artifactId>lindorm-all-client</artifactId>
  <version>2.0.4</version>
</dependency>

3.2 初始化 Lindorm 客户端

初始化 Lindorm 客户端。在项目中输入下述代码,然后根据下表描述修改代码

String LINDORM_JDBC_URL =  "Lindorm宽表SQL的连接地址";
String LINDORM_USER = "user";
String LINDORM_PASSWORD = "password";
String USER_NAME = "Lindorm控制台获取的数据库用户名";
String PASSWORD = "Lindorm控制台获取的数据库密码";
Properties properties = new Properties();
properties.put(LINDORM_USER, USER_NAME);
properties.put(LINDORM_PASSWORD, PASSWORD);         
//如果需要建连的时候指定对应的database(namespace),默认链接default database
properties.put("database", 业务想指定的database);    

 database 为数据库名,类型 mysql 的 database 概念,Lindorm 默认有两个 database,一个名为default,另一个名为lindorm。建数据库语法参考CREATE DATABASE

参数示例值获取方法
LINDORM_JDBC_URLjdbc:lindorm:table:url=http://ld-bp17j28j2y7pm****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30060Lindorm宽表SQL的连接地址,具体获取方法请参见访问实例
USER_NAMEroot如果您忘记用户名密码,可以通过Lindorm宽表引擎的集群管理系统修改密码,具体操作请参见修改用户密码
PASSWORDroot
databasedefault表示用户首次链接时指定的database(namespace)。

3.3 示例代码

public static void main(String[]args) {
    String LINDORM_JDBC_URL =  "jdbc:lindorm:table:url=http://xxx-pub.lindorm.rds.aliyuncs.com:30060";
        String LINDORM_USER = "user";
        String LINDORM_PASSWORD = "password";
        String USER_NAME = "root";
        String PASSWORD = "root";
        Properties properties = new Properties();
        properties.put(LINDORM_USER, USER_NAME);
        properties.put(LINDORM_PASSWORD, PASSWORD);
        //如果需要建连的时候指定对应的database(namespace),默认链接default database
        properties.put("database", "test");
        java.sql.Connection connection = null;
        try {
            System.out.println("正在获取连接...");
            connection = DriverManager.getConnection(LINDORM_JDBC_URL, properties);
            System.out.println("连接成功");

            String sqlCreate = "select id, name from test where id = '1'";

            Statement statement = connection.createStatement();
//如果不指定schema默认是"default",可以使用statement.execute("use schema名字"); 进行切换schema。
            ResultSet resultSet = statement.executeQuery(sqlCreate);
            if (resultSet.next()) {
                System.out.println("查询结果:" + resultSet.getString("id") + resultSet.getString("name"));
            } else {
                System.out.println("查询结果为空");
            }


//            //删除表
//            String sqlDelete = "drop table " + tableName;
//            Statement deletestatement = pconn.createStatement();
//            int retDel = deletestatement.executeUpdate(sqlDelete);
        } catch (SQLException e) {
            throw new RuntimeException(e);
        } finally {
            if (connection != null) {
                try {
                    connection.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
}

具体请参考官方文档:通过Lindorm宽表SQL Java API连接并使用宽表引擎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值