

# 사용 중인 Babelfish 버전 식별
사용 중인 Babelfish 버전 식별

Babelfish를 쿼리하여 Babelfish 버전, Aurora PostgreSQL 버전 및 호환되는 Microsoft SQL Server 버전에 대한 세부 정보를 찾을 수 있습니다. TDS 포트 또는 PostgreSQL 포트를 사용할 수 있습니다.
+ [To use the TDS port to query for version information](#apg-version-info-tds)
+ [To use the PostgreSQL port to query for version information](#apg-version-info-psql)

**TDS 포트를 사용하여 버전 정보 쿼리**

1. `sqlcmd` 또는 `ssms`을 사용하여 Babelfish DB 클러스터의 엔드포인트에 연결합니다.

   ```
   sqlcmd -S bfish_db.cluster-123456789012.aws-region.rds.amazonaws.com,1433 -U
       login-id -P password -d db_name
   ```

1. Babelfish 버전을 식별하려면 다음 쿼리를 실행합니다.

   ```
   1> SELECT CAST(serverproperty('babelfishversion') AS VARCHAR)
   2> GO
   ```

   쿼리는 다음과 비슷한 결과를 반환합니다.

   ```
   serverproperty
   ------------------------------
   3.4.0
   
   (1 rows affected)
   ```

1. Aurora PostgreSQL DB 클러스터의 버전을 식별하려면 다음 쿼리를 실행합니다.

   ```
   1> SELECT aurora_version() AS aurora_version
   2> GO
   ```

   쿼리는 다음과 비슷한 결과를 반환합니다.

   ```
   aurora_version                                                                                                                                                                                                                                  
   -------------------------------------------------
   15.5.0
   
   (1 rows affected)
   ```

1. 호환되는 Microsoft SQL Server 버전을 식별하려면 다음 쿼리를 실행합니다.

   ```
   1> SELECT @@VERSION AS version
   2> GO
   ```

   쿼리는 다음과 비슷한 결과를 반환합니다.

   ```
   Babelfish for Aurora PostgreSQL with SQL Server Compatibility - 12.0.2000.8
   Dec 7 2023 09:43:06
   Copyright (c) Amazon Web Services
   PostgreSQL 15.5 on x86_64-pc-linux-gnu (Babelfish 3.4.0)
   
   (1 rows affected)
   ```

다음 쿼리를 실행하면 Babelfish와 Microsoft SQL Server 간의 근소한 차이를 알 수 있습니다. Babelfish에서는 쿼리가 `1`을 반환하지만, Microsoft SQL Server에서는 `NULL`를 반환합니다.

```
SELECT CAST(serverproperty('babelfish') AS VARCHAR) AS runs_on_babelfish
```

다음 절차에서와 같이 PostgreSQL 포트를 사용하여 버전 정보를 확인할 수도 있습니다.

**PostgreSQL 포트를 사용하여 버전 정보 쿼리**

1. `psql` 또는 `pgAdmin`을 사용하여 Babelfish DB 클러스터의 엔드포인트에 연결합니다.

   ```
   psql host=bfish_db.cluster-123456789012.aws-region.rds.amazonaws.com
        port=5432 dbname=babelfish_db user=sa
   ```

1. `psql`의 확장 기능(`\x`)을 켜면 출력이 보다 읽기 편해집니다.

   ```
   babelfish_db=> \x
   babelfish_db=> SELECT
   babelfish_db=> aurora_version() AS aurora_version,
   babelfish_db=> version() AS postgresql_version,
   babelfish_db=> sys.version() AS Babelfish_compatibility,
   babelfish_db=> sys.SERVERPROPERTY('BabelfishVersion') AS Babelfish_Version;
   ```

   이 쿼리는 다음과 비슷한 출력을 반환합니다.

   ```
   -[ RECORD 1 ]-----------+-----------------------------------------------------------------------------------------------
   aurora_version          | 15.5.0
   postgresql_version      | PostgreSQL 15.5 on x86_64-pc-linux-gnu, compiled by x86_64-pc-linux-gnu-gcc (GCC) 9.5.0, 64-bit
   babelfish_compatibility | Babelfish for Aurora Postgres with SQL Server Compatibility - 12.0.2000.8                     +
                           | Dec 7 2023 09:43:06                                                                          +
                           | Copyright (c) Amazon Web Services                                                             +
                           | PostgreSQL 15.5 on x86_64-pc-linux-gnu (Babelfish 3.4.0)
   babelfish_version       | 3.4.0
   ```