SAP HANA HDBSQL (CLI)

Interacción con la Base de Datos desde la Línea de Comandos

¿Qué es HDBSQL?

HDBSQL es la herramienta cliente ejecutable por línea de comandos que permite al administrador realizar consultas SQL y comandos de DB directamente desde el sistema operativo (Linux/Windows). Es el componente fundamental para el scripting y la automatización de tareas en SAP HANA.

Instalación y Acceso

HDBSQL se instala automáticamente como parte del SAP HANA Client. En sistemas donde reside la base de datos, lo encontrarás en el home del usuario administrador (<sid>adm).

# Verificar versión de HDBSQL
hdbsql -version
Ubicación típica: `/usr/sap/hdbclient/hdbsql` o integrado en el PATH del usuario ` adm`.

Modos de Conexión: SystemDB vs Tenant DB

En entornos de Multitenant Database Containers (MDC), que es el estándar desde HANA 2.0, es vital diferenciar a qué base de datos nos estamos conectando mediante el puerto:

Métodos de Logueo en HDBSQL

Existen tres formas principales de autenticarse, dependiendo de si buscamos seguridad, rapidez o interactividad:

1. Uso de hdbuserstore (Recomendado para Scripts)

Es la forma más segura ya que encapsula el Host, Puerto, Usuario y Contraseña en una clave cifrada.

# Crear clave para el Tenant DB de la instancia 00
hdbuserstore SET TENANT_KEY masterhost:30015 SYSTEM MyPassword

# Conectar usando la clave
hdbsql -U TENANT_KEY

2. Parámetros de Línea de Comandos (Explícito)

Útil para pruebas rápidas, aunque deja la contraseña visible en el historial del shell (a menos que se use -p sin valor para que la pida).

# Conexión al SystemDB especificando puerto
hdbsql -n localhost:30013 -u SYSTEM -p MyPassword

3. Modo Interactivo

Si ejecutas hdbsql sin comandos, entrarás en el prompt interactivo donde podrás ejecutar queries una a una. Para salir, usa \q.

Sintaxis y Comandos Comunes

Parámetro Acción
-n <host>:<port> Especificar servidor y puerto (ej: hana01:30013 para SystemDB).
-u <user> -p <pwd> Conexión manual (No recomendado para scripts).
-i <file> Importar y ejecutar un archivo .sql completo.
-o <file> Exportar los resultados de la consulta a un archivo.
-a Modo Autocommit (por defecto activo).

Casos de Uso Prácticos

Páginas relacionadas