【YashanDB知识库】如何远程连接、使用YashanDB?

news2024/12/28 19:17:55

问题现象

在各个项目实施中,我们经常遇到客户、开发人员需要连接和使用YashanDB但不知如何操作的问题,本文旨在介绍远程连接、使用YashanDB的几种方式。

问题的风险及影响

无风险

问题影响的版本

历史版本~23.2

问题发生原因

解决方法及规避方式

不需要规避

问题分析和处理过程

方式一 客户端工具yasql

yasql简介

yasql 是YashanDB的客户端连接管理工具,可以通过此工具连接数据库服务器并对其进行操作和维护,除了具备操作数据库的基本功能,yasql还提供了若干其他功能,便于用户使用。

一般而言,在部署YashanDB的数据库上会同步部署yasql,其安装目录一般在$YASDB_HOME/bin下。

yasql的一般使用

使用yasql -H命令可查看帮助和版本信息。

$ yasql -H

使用yasql -V命令可查看版本信息。

$ yasql -V

常用的登录方式:

  • 方式一:通过输入用户名 、密码、数据库主机名和监听端口等信息登录并连接数据库,格式为"yasql /@:"。

  • 方式二:通过在${YASDB_HOME}/client/yasc_service.ini中定义的连接别名登录并连接数据库,格式为"yasql /@alias"。

  • 方式三:通过操作系统认证方式登录,格式为"yasql / as sysdba"或"yasql / as sysdba",连接到本地YASDB_DATA环境变量对应的数据库实例。操作系统认证方式登录需配置后才可使用,配置操作请参考数据库管理手册操作系统身份认证配置。

操作示例

使用Yasql执行一个sql文件

可以通过参数"-f [-e]" 执行一个SQL文件。其中,“-e”显示执行的语句。通过重定向符,还可以记录输出。

操作示例

通过 “!” 执行外部的shell命令

可以通过使用 "!“ 在yasql中执行外部命令

操作示例

如何退出

通过 “exit” 或者 ctrl+z的方式退出yasql

操作示例

在输入sql时回退以及上下翻页

安装rlwrap

sudo yum install rlwrap
sudo yum -y install readline*
wget http://files.cnblogs.com/files/killkill/rlwrap-0.30.tar.gz.zip
tar -xf rlwrap-0.30.tar.gz.zip
cd rlwrap-0.30
./configure
make
sudo make install

操作示例

如何单独安装Yasql

当需要在一台额外的服务器上访问远程的数据库时(或在windows本地),可能需要单独安装yasql。

linux中安装使用

1 获得安装包
 
--arm 环境
yashandb-client-23.1.3.101-linux-aarch64.tar.gz
 
--X86环境
yashandb-client-23.1.3.101-linux-x86_64.tar.gz
 
2 解压安装包
 
cd /home/yashanclient/yasql  (例如在这个目录)
tar -zxf yashandb-client-23.1.3.101-linux-x86_64.tar.gz
 
3 获得当前目录,设置环境变量
 
pwd
#例如输出:/home/yashanclient/yasql
 
export LD_LIBRARY_PATH=${解压目录}/lib:$LD_LIBRARY_PATH
#例如:
export LD_LIBRARY_PATH=/home/yashanclient/yasql/lib:$LD_LIBRARY_PATH
 
或者永久生效:
vi ~/.bashrc
写入
export LD_LIBRARY_PATH=${解压目录}/lib:$LD_LIBRARY_PATH
:wq!
source ~/.bashrc
 
4 连接yashan服务端
 
cd yasql解压目录/bin
 
./yasql 用户/密码@IP:端口

windows中安装使用

1 解压
 
yashandb-client-23.1.3.101-windows-amd64.zip
2 设置环境变量
 
假如解压的目录是:C:\Users\huangsl\Desktop\yashandb-client-23.1.3.101-windows-amd64
 
添加环境变量:用户环境变量--> 双击Path-->新建: C:\Users\huangsl\Desktop\yashandb-client-23.1.3.101-windows-amd64\lib
 
保存
 
3 使用
 
打开powershell
 
cd C:\Users\huangsl\Desktop\yashandb-client-23.1.3.101-windows-amd64\bin
 
.\yasql username/userpassword@ip:port

方式二 使用开发者工具DBeaver

DBeaver简介

DBeaver for YashanDB基于流行的开源图形化工具DBeaver,在严格遵循DBeaver Community Edition 的ASL开源协议基础上,进行了二次开发和封装,支持管理单机、集群和分布式三种形态的YashanDB数据库图形化开发及管理。可以通过下载中心下载:https://download.yashandb.com/download

连接YashanDB

参考操作文档:DBeaver 建立YashanDB连接

方式三 使用Yasboot连接

Yasboot工具也集成了yasql客户端的功能(实际上是调用了yasql)。

示例1(连接yasql客户端)

#指定节点标识连接
$ yasboot sql -n 1-1 -u username -p password -c yashandb
 
#指定IP:PORT连接
$ yasboot sql -d username/password@127.0.0.1:1688
 
# ipv6 需要添加中括号
$ yasboot sql -d username/password@[::1]:1688

示例2(执行SQL语句)

$ yasboot sql -n 1-1 -u username -p password -c yashandb -s 'select status from v$instance;'
 
STATUS           
-----------------
OPEN 

示例3(执行SQL文件)

$ yasboot sql -d username/password@127.0.0.1:1678 -f get_status.sql --echo

方式四 使用高级编程语言的数据库驱动

YashanDB 23.2版本对外支持的驱动有:JAVA、Python、C、.NET等

以常用的JDBC举例:

//DriverManager方法
public static Connection getConnection(String username, String passwd) {
        //驱动类。
        String driver = "com.yashandb.jdbc.Driver";
        //数据库连接描述符。
        String sourceURL = "jdbc:yasdb://10.10.10.2:1688/yasdb";
        Connection conn = null;
          
        try {
            //加载驱动。
            Class.forName(driver);
        } catch( Exception e ) {
            e.printStackTrace();
            return null;
        }
          
        try {
             //创建连接。
            conn = DriverManager.getConnection(sourceURL, username, passwd);
            System.out.println("Connection succeed!");
        } catch(Exception e) {
            e.printStackTrace();
            return null;
        }
          
        return conn;
    }
  
//YasDataSource方法
public static Connection getConnDS() {
    Connection connect = null;
    try {
      YasDataSource ads = new YasDataSource();
      ads.setURL(url);
      connect = ads.getConnection(user, password);
    } catch (Exception e) {
      e.printStackTrace();
    }
    return connect;
  }

其它详细介绍见文档:JDBC驱动

经验总结

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1960399.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytorch基础:Tensor的连续性

相关阅读 Pytorch基础https://blog.csdn.net/weixin_45791458/category_12457644.html?spm1001.2014.3001.5482 在Pytorch中,一个连续的张量指的是张量中各数据元素在底层的存储顺序与其在张量中的位置一致。这意味着每一个元素的地址可以通过下面的线性映射公式来…

MySQL8--用户与权限管理

原文网址:MySQL8--用户与权限管理_IT利刃出鞘的博客-CSDN博客 简介 说明 本文介绍MySQL8的用户与权限的管理,包括:用户的创建与删除、授权与撤销权限等。 为什么要管理用户与权限? 目的是保证数据库的安全性,只授…

TCP/IP协议——使用Socket套接字实现

目录 Socket 使用Socket实现TCP客户端和服务器的过程 使用Socket搭建TCP服务器 线程优化 向客户端发送消息 连接的断开 客户端主动断开 服务端主动断开 服务器完整的程序 使用Socket编写客户端程序连接TCP服务器 Socket Socket是一种网络通信协议,它允许…

不再担心数据丢失:用rsync打造你的自动化备份解决方案

在现代IT环境中,数据备份是一项至关重要的任务。无论是个人文件还是企业数据,都需要有可靠的备份机制来防止数据丢失。今天,我们将介绍一种高效的备份方案:使用rsync实现自动化备份目录。 什么是rsync? rsync 是一个开…

vscode+cmake+msvc+vcpkg的入门使用

一.环境安装 1.下载vscode并安装: Download Visual Studio Code - Mac, Linux, Windows 2.安装完成后,安装C和cmake 相关工具,如图。 3.vcpkg的下载和安装 克隆vcpkg的仓库到本地:https://github.com/microsoft/vcpkg.git,运行bo…

《学会 SpringMVC 系列 · 基础篇》

📢 大家好,我是 【战神刘玉栋】,有10多年的研发经验,致力于前后端技术栈的知识沉淀和传播。 💗 🌻 CSDN入驻不久,希望大家多多支持,后续会继续提升文章质量,绝不滥竽充数…

deeplapv3 动机

语义分割是计算机视觉领域中重要的任务之一,语义分割的目的是为图像中的每个像素分配标签。相比于传统方法,以深度学习为基础的全卷积网络极大地提高了语义分割算法的性能。 在语义分割网络中,常用到如下2种结构: 空间金字塔池化…

C++STL简介(三)

目录 1.vector的模拟实现 1.1begin() 1.2end() 1.3打印信息 1.4 reserve() 1.5 size() 1.6 capacity() 1.7 push_back() 1.8[ ] 1.9 pop_back() 1.10 insert&…

【涵子来信】——AI革新:1.新时代是便捷的,要会用

各位读者朋友们: 我们现在AI时代的十字路口,AI是为生活带来便利的,我们要会使用AI。今天这篇文章来讲述一下AI的正确使用。 一、 AI的使用 1.1.便捷之中要会辨别 AI是带来强大的,利用好可以给生活带来便捷。 像之前WWDC24宣传…

SAP 字符串关键字找程序

关键字查询程序 : RPR_ABAP_SOURCE_SCAN或RS_ABAP_SOURCE_SCAN

Python网络爬虫:基础与实战!附淘宝抢购源码

Python网络爬虫是一个强大的工具,用于从互联网上自动抓取和提取数据。下面我将为你概述Python网络爬虫的基础知识和一些实战技巧。 Python网络爬虫基础 1. HTTP请求与响应 网络爬虫的核心是发送HTTP请求到目标网站并接收响应。Python中的requests库是处理HTTP请求…

C语言——运算符及表达式

C语言——运算符及表达式 运算符运算符的分类(自增运算符)、--(自减运算符)赋值运算符逗号运算符(顺序求值运算符) 表达式 运算符 运算符的分类 C语言的运算符范围很宽,除了控制语句和输入输出…

从数据血缘谈一谈如何实现数据管理的“自治理”

数据治理是企业数据管理的核心,它通过系统性的管理行为,确保数据的完整性、准确性、安全性、合规性和价值最大化。数据治理有助于提高数据质量和可用性,减少数据管理的风险,增强企业对数据的信任,从而提升业务效率和竞…

mongodb中ret resulted in status UnknownError: 24: Too many open files

mongodb使用中遇到的问题 Invariant failure: ret resulted in status UnknownError:24:Too many open files at *** 错误原因为打开文件过多的错误,即“句柄数超出系统显示”。 1.需要更改一下系统的句柄数: 查看一下系统目前设置的句柄数 open files 对…

算法刷题day2|贪心:122. 买卖股票的最佳时机 II、55. 跳跃游戏、45. 跳跃游戏 II、1005. K 次取反后最大化的数组和

122. 买卖股票的最佳时机 II 贪心一 画出股票的折线图&#xff0c;将图中折线上升区间相加即是最大利润。 class Solution { public:int maxProfit(vector<int>& prices) {int result 0;for (int i 1; i < prices.size(); i){//下降区间直接跳过if (prices[i]…

创建完整的APP页面

完整的页面创建过程包括三个步骤 在layout目录下创建XML文件 创建与XML文件对应的Java代码 在AndroidMainfest.xml&#xff08;清单文件&#xff09;中注册页面配 一步到位的activity创建 跳转&#xff1a;意图 创建一个意图实例&#xff0c;使用setClass&#xff08;&#…

python机器学习12--Regression回归分析

1.数据准备 第一步&#xff1a;数据内容一定要有以下两种值域的因果数据。  特征&#xff08;Feature&#xff09;&#xff1a;因&#xff0c;在统计学称为自变量&#xff08;Independent Variable&#xff09;。  标签答案&#xff08;Label&#xff09;&#xff1a;果&a…

4条社交规则,让你受益

一个人只要在社会生活中&#xff0c;那他就免不了社会交往。 有时候&#xff0c;我们在社交中之所以不受欢迎&#xff0c;主要还是因为方法和策略的问题&#xff0c;也就是说缺乏对社交的深入思考&#xff0c;没有去做正确的事情。要知道&#xff0c;只要思路和方向对了&#…

【计算机毕设论文】基于SpringBoot的语音识别系统的设计与实现

&#x1f497;博主介绍&#xff1a;✌全平台粉丝5W,高级大厂开发程序员&#x1f603;&#xff0c;博客之星、掘金/知乎/华为云/阿里云等平台优质作者。 【源码获取】关注并且私信我 感兴趣的可以先收藏起来&#xff0c;同学门有不懂的毕设选题&#xff0c;项目以及论文编写等相…