You need to enable JavaScript to run this app.
导航
通过命令行运维 MySQL/PostgreSQL 数据库
最近更新时间:2024.09.03 10:38:25首次发布时间:2024.04.12 16:52:10

运维人员支持使用命令行工具登录云堡垒机,通过命令行连接数据库进行运维操作。本文以 Mac 系统自带的 Terminal 命令行工具为例进行介绍。

前提条件

  • 云堡垒机通过 SSH 本地端口转发实现数据库运维,在使用数据库运维功能之前,用户需要确保本地安装有 SSH 服务。

  • 已经安装数据库(例如: MySQL、PostgreSQL)客户端,并配置环境变量,确保本地命令行工具可以使用数据库命令。

  • 提前获取数据库登录相关信息,包括:云堡垒机 IP 地址、SSH 端口号、云堡垒机用户名、云堡垒机登录密码、数据库 ID、协议端口、数据库账号登录名。详细介绍参见:通过客户端登录资产,需要提前获取哪些信息?

  • 运维人员连接数据库进行运维操作前,需联系管理员完成以下准备工作。

    • 已经准备数据库,并成功创建数据库账号。
    • 前往 访问控制 新建云堡垒机运维员用户,新建用户要求:关联 VBHOperateOnlyAccess 策略。
    • 根据 管理员使用指引 完成云堡垒机配置。至少完成以下步骤:新建数据库、添加数据库账号、验证数据库账号、导入用户、授权数据库、授权数据库账号。

使用限制

  • 暂不支持 SSL 连接。

  • 若使用 GUI 客户端运维数据库,要求关闭云堡垒机的双因子认证,否则无法正常登录。

  • 已安装支持数据库运维的命令行工具,例如:Terminal。第三方客户端限制和其他限制参见: 使用限制 。

  • 仅支持通过子用户登录已授权的数据库,请确保已经创建子用户并配置云堡垒机运维人员相关权限。

  • MySQL 数据库暂不支持在已连接的会话中切换用户(COM_CHANGE_USER 包)。

操作步骤

  1. 打开本地终端,根据如下格式执行命令,建立本地端口转发通道。例如:ssh -N -L 3306:b88f8e96-xxxx-xxxx-xxxx-140679ee76b8:3306 -p 2002 vbh@192.37.30.73 -vvv
ssh -N -L <本地 SSH 监听端口>:<数据库 ID>:<数据库端口> -p <云堡垒机 SSH 端口> <云堡垒机用户名>@<云堡垒机登录 IP> -vvv

说明

  • 若 <云堡垒机登录 IP> 使用私网 IP,请确保本地客户端与云堡垒机的网络连通性。
  • 不同类型数据库默认的 <本地 SSH 监听端口>、<数据库端口> 可能不同,请根据实际情况填写。例如:MySQL 数据库的默认端口为 3306;PostgreSQL 数据库的默认端口为 5432。

alt

  1. 输入云堡垒机用户的登录密码,建立连接。若连接已经建立,将不会有任何输出。

注意

建立连接后,请勿关闭终端窗口,否则可能导致连接中断。

alt

  1. 打开一个新的终端窗口,参考如下格式执行数据库连接命令。不同类型数据库的连接命令不同,根据实际连接的数据库执行命令。
  • MySQL 数据库的连接命令的格式如下,示例:mysql -uroot -P3306 -h 0.0.0.0

    mysql -u<数据库账号登录名> -P<本地监听端口> -h <本地监听地址>  
    

    alt

  • PostgreSQL 数据库的连接命令的格式如下,示例:psql "host=localhost dbname=vbh user=root port=5432"

    psql "host=<本地监听地址> dbname=<数据库名称> user=<数据库账号登录名> port=<本地监听端口>
    

后续操作

通过命令行成功连接数据库后,即可使用数据库操作命令进行各种运维操作。