首页 > 其他分享 >【YashanDB知识库】如何远程连接、使用YashanDB?

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

时间:2024-07-29 16:58:32浏览次数:12  
标签:yasql yashandb 示例 数据库 知识库 连接 YashanDB 远程

问题现象

在各个项目实施中,我们经常遇到客户、开发人员需要连接和使用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/[email protected]: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/[email protected]: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驱动

经验总结

标签:yasql,yashandb,示例,数据库,知识库,连接,YashanDB,远程
From: https://www.cnblogs.com/YashanDB/p/18330469

相关文章

  • .net访问远程共享的Windows文件
    可以使用cmd连接创建Windows凭据publicstaticboolConnectPwd(stringIpAddress,stringuserName,stringpassword){ boolFlag=faslse; Processproc=newProcess(); try { proc.StartInfo.FileName="cmd.exe"; proc.StartInfo.UseShellExecute=false;......
  • 【YashanDB知识库】如何使用yasldr导入lob类型?
    问题现象在各个项目实施中,有时候会使用到yasldr工具进行csv数据的导入。关于yasldr一般的使用方法,官方文档已经有详细的介绍,具体可见:yasldr使用指导。但在涉及LOB类型的导入时,会有一些疑问,比如什么是lls模式、什么是lobfile模式等等。本文就关于如何使用yasldr导入lob类型做进一......
  • 【漏洞复现】某凌OA 文件Copy导致远程代码执行
         声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。一、漏洞描述蓝凌OA平台正通过加速构建产业互联网来深化其数字化发展,从而对企业的协作能力提出了更高的要求。为了支持这一转变,蓝凌......
  • 瑞斯康达-多业务智能网关 list_base_config.php 远程命令执行漏洞
    0x01阅读须知        技术文章仅供参考,此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等(包括但不限于)进行检测或维护参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者......
  • Git连接远程仓库
    安装好git并且与github完成绑定后我们可以开始尝试着向库中上传文件了,但是在此之前必须连接我们的库和git,网上很多教程都不够详细,我也是按着网上教程来结果自己要琢磨很久,在这里我自己总结一下,纯纯保姆级教程来了!!输入gitremoteaddoriginhttps://github.com/用户名/库名......
  • Linux让远程服务器代理IPv6流量
    使用场景本地机器只能访问IPv4网络。远程服务器能访问IPv4网络,也能访问IPv6网络。这篇博客介绍如何让远程服务器代理本地机器的IPv6流量,从而让本地机器也能访问IPv6网络。主要思路在远程服务器上创建一个netns,搭IPv6NAT,这样netns里面就能通过IPv6NAT访问公网。然后在netns和......
  • mysql8下创建用户远程登陆权限
    在MySQL8中,创建用户并给予远程登陆权限是一个常见的操作,特别是在搭建数据库服务器时。本文将介绍如何在MySQL8下创建用户并配置远程登陆权限。1.登录MySQL首先,我们需要登录到MySQL数据库服务器。可以通过终端或者MySQLWorkbench等工具来连接到MySQL。mysql-uroot-p输入......
  • Profinet远程IO模块:模拟量模块_安装与接线说明
    XD系列插片式远程IO模块是兴达易控技术研发的分布式扩展模块。XD系列成套系统主要由耦合器、各种功能IO模块、电源辅助模块以及终端模块组成。有多种通讯协议总线的耦合器,例如PROFINET、Ether0AT、EthernetIP、00linkIE以及modbusT0P等。IO模块可分为多通道数字量输入模块、数......
  • Ubuntu24.04 安装MySQL8.0.36 并配置Navicat远程连接
    1.更新系统和软件源sudoaptupdate&&sudoaptupgrade2.安装mysqlsudoaptinstallmysql-server#也可以指定版本如sudoaptinstallmysql-server-8.0.363.查看是否安装成功mysql-V4.启动服务#启动服务sudoservicemysqlstartsudoservicemysqlstop#......
  • 如何使用pytorch 远程服务器调试代码|同步编辑
    写在前面:写这篇博客的原因是本新手小白开始用服务器跑代码,有时候发现效果不理想,就要重新更改代码再上传到服务器重新跑,一来二去觉得很费工夫,就想:能不能在自己电脑上更新代码同时在服务器同步跟新,研究了一下发现pytorch可以远程服务器,实现了在我的电脑上改代码,在服务器上跑代......