

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Conexión a bases de datos de SAP con AWS Schema Conversion Tool
<a name="CHAP_Source.SAP"></a>

Puede utilizarlos AWS SCT para convertir esquemas, objetos de código de bases de datos y código de aplicaciones de SAP (Sybase) Adaptive Server Enterprise (ASE) a los siguientes destinos: 
+ Amazon RDS para MySQL
+ Amazon Aurora MySQL-Compatible Edition
+ Amazon RDS para MariaDB
+ Amazon RDS para PostgreSQL
+ Edición de Amazon Aurora compatible con PostgreSQL

Para obtener más información, consulte las siguientes secciones:

**Topics**
+ [Privilegios para SAP ASE como base de datos de origen](#CHAP_Source.SAP.Permissions)
+ [Conexión a SAP ASE (Sybase) como origen](#CHAP_Source.SAP.Connecting)
+ [Privilegios para MySQL como base de datos de destino](#CHAP_Source.SAP.ConfigureMySQL)
+ [Configuración de conversión de SAP ASE a MySQL](#CHAP_Source.SAP.MySQLConversionSettings)
+ [Privilegios para PostgreSQL como base de datos de destino](#CHAP_Source.SAP.ConfigurePostgreSQL)
+ [Configuración de conversión de SAP ASE a PostgreSQL](#CHAP_Source.SAP.PostgreSQLConversionSettings)

## Privilegios para SAP ASE como base de datos de origen
<a name="CHAP_Source.SAP.Permissions"></a>

Para utilizar una base de datos de SAP ASE como origen, debe crear un usuario de base de datos y conceder permisos. Para ello, siga estos pasos.

**Cree y configure un usuario de base de datos**

1. Conéctese a la base de datos de origen.

1. Cree un usuario de base de datos con los siguientes comandos. Proporcione una contraseña para el usuario nuevo.

   ```
   USE master
   CREATE LOGIN min_privs WITH PASSWORD <password>
   sp_adduser min_privs
   grant select on dbo.spt_values to min_privs
   grant select on asehostname to min_privs
   ```

1. Para cada base de datos que vaya a migrar, otorgue los siguientes privilegios.

   ```
   USE <database_name>
   sp_adduser min_privs
   grant select on dbo.sysusers to min_privs
   grant select on dbo.sysobjects to min_privs
   grant select on dbo.sysindexes to min_privs
   grant select on dbo.syscolumns to min_privs
   grant select on dbo.sysreferences to min_privs
   grant select on dbo.syscomments to min_privs
   grant select on dbo.syspartitions to min_privs
   grant select on dbo.syspartitionkeys to min_privs
   grant select on dbo.sysconstraints to min_privs
   grant select on dbo.systypes to min_privs
   grant select on dbo.sysqueryplans to min_privs
   ```

## Conexión a SAP ASE (Sybase) como origen
<a name="CHAP_Source.SAP.Connecting"></a>

Utilice el siguiente procedimiento para conectarse a su base de datos de origen de SAP ASE con AWS Schema Conversion Tool. 

**Para conectarse a una base de datos de SAP ASE**

1. En AWS Schema Conversion Tool, elija **Agregar** fuente. 

1. Elija **SAP ASE**, y a continuación, elija **Siguiente**.

   Se abrirá el cuadro de diálogo **Agregar origen**.

1. En **Nombre de conexión**, escriba un nombre para su base de datos. AWS SCT muestra este nombre en el árbol del panel izquierdo. 

1. Utilice las credenciales de la base de datos de AWS Secrets Manager o introdúzcalas manualmente:
   + Para usar las credenciales de base de datos de Secrets Manager, siga las instrucciones siguientes:

     1. En **Secreto de AWS**, elija el nombre del secreto.

     1. Seleccione **Rellenar** para rellenar automáticamente todos los valores del cuadro de diálogo de conexión a la base de datos de Secrets Manager.

     Para obtener información sobre el uso de las credenciales de bases de datos de Secrets Manager, consulte[Configurando AWS Secrets Manager en el AWS Schema Conversion Tool](CHAP_UserInterface.SecretsManager.md).
   + Para introducir manualmente la información de conexión a la base de datos de origen de SAP ASE, siga las instrucciones siguientes:  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/SchemaConversionTool/latest/userguide/CHAP_Source.SAP.html)

1. Elija **Probar conexión** para comprobar que AWS SCT puede conectarse a la base de datos de origen. 

1. Seleccione **Conectar** para conectarse a su base de datos de origen.

## Privilegios para MySQL como base de datos de destino
<a name="CHAP_Source.SAP.ConfigureMySQL"></a>

Los privilegios necesarios para MySQL como destino se enumeran a continuación:
+ CREATE ON \$1.\$1
+ ALTER ON \$1.\$1
+ DROP ON \$1.\$1
+ INDEX ON \$1.\$1
+ REFERENCES ON \$1.\$1
+ SELECT ON \$1.\$1
+ CREATE VIEW ON \$1.\$1
+ SHOW VIEW ON \$1.\$1
+ TRIGGER ON \$1.\$1
+ CREATE ROUTINE ON \$1.\$1
+ ALTER ROUTINE ON \$1.\$1
+ EXECUTE ON \$1.\$1
+ INSERTE Y ACTUALICE EN AWS\$1SAPASE \$1EXT. \$1
+ CREA TABLAS TEMPORALES EN AWS\$1SAPASE \$1EXT. \$1

Puede usar el siguiente ejemplo de código para crear un usuario de base de datos y conceder los privilegios.

```
CREATE USER 'user_name' IDENTIFIED BY 'your_password';
GRANT CREATE ON *.* TO 'user_name';
GRANT ALTER ON *.* TO 'user_name';
GRANT DROP ON *.* TO 'user_name';
GRANT INDEX ON *.* TO 'user_name';
GRANT REFERENCES ON *.* TO 'user_name';
GRANT SELECT ON *.* TO 'user_name';
GRANT CREATE VIEW ON *.* TO 'user_name';
GRANT SHOW VIEW ON *.* TO 'user_name';
GRANT TRIGGER ON *.* TO 'user_name';
GRANT CREATE ROUTINE ON *.* TO 'user_name';
GRANT ALTER ROUTINE ON *.* TO 'user_name';
GRANT EXECUTE ON *.* TO 'user_name';
GRANT INSERT, UPDATE ON AWS_SAPASE_EXT.* TO 'user_name';
GRANT CREATE TEMPORARY TABLES ON AWS_SAPASE_EXT.* TO 'user_name';
```

En el ejemplo anterior, *user\$1name* sustitúyalo por el nombre de tu usuario. A continuación, *your\$1password* sustitúyala por una contraseña segura.

Para usar Amazon RDS para MySQL o Aurora MySQL como destino, establezca el parámetro `lower_case_table_names` en `1`. Este valor significa que el servidor MySQL gestiona los identificadores de nombres de objetos como tablas, índices, disparadores y bases de datos sin distinguir entre mayúsculas y minúsculas. Si ha activado el registro binario en la instancia de destino, establezca el parámetro `log_bin_trust_function_creators` en `1`. En este caso, no es necesario utilizar las características `DETERMINISTIC`, `READS SQL DATA` o `NO SQL` para crear funciones almacenadas. Para configurar estos parámetros, cree un grupo de parámetros de base de datos nuevo o modifique uno existente.

## Configuración de conversión de SAP ASE a MySQL
<a name="CHAP_Source.SAP.MySQLConversionSettings"></a>

Para editar la configuración de conversión de SAP ASE a MySQL, seleccione **Configuración** y, a continuación, elija **Configuración de conversión**. En la lista superior, elija **SAP ASE** y, a continuación, **SAP ASE - MySQL** o **SAP ASE - Amazon Aurora (compatible con MySQL)**. AWS SCT muestra todas las configuraciones disponibles para la conversión de SAP ASE a PostgreSQL.

La configuración de conversión de SAP ASE a MySQL AWS SCT incluye opciones para lo siguiente:
+ Limitar el número de comentarios con elementos de acción en el código convertido.

  En **Añadir comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior**, elija la gravedad de los elementos de acción. AWS SCT añade comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior.

  Por ejemplo, para minimizar el número de comentarios en el código convertido, seleccione **Solo errores**. Para incluir comentarios para todos los elementos de acción del código convertido, seleccione **Todos los mensajes**.
+ Usar los nombres exactos de los objetos de la base de datos de origen en el código convertido.

  De forma predeterminada, AWS SCT convierte los nombres de los objetos, variables y parámetros de la base de datos a minúsculas. Para mantener las mayúsculas y minúsculas originales de estos nombres, seleccione **Distinguir entre mayúsculas y minúsculas en los nombres de los objetos de la base de datos de origen**. Elija esta opción si utiliza nombres de objetos que distingan mayúsculas de minúsculas en el servidor de base de datos de SAP ASE de origen.

## Privilegios para PostgreSQL como base de datos de destino
<a name="CHAP_Source.SAP.ConfigurePostgreSQL"></a>

Para usar PostgreSQL como destino AWS SCT , se requiere el privilegio. `CREATE ON DATABASE` Asegúrese de conceder este privilegio a cada base de datos PostgreSQL de destino.

Para usar los sinónimos públicos convertidos, cambie la ruta de búsqueda predeterminada de la base de datos a `"$user", public_synonyms, public`.

Puede usar el siguiente ejemplo de código para crear un usuario de base de datos y conceder los privilegios.

```
CREATE ROLE user_name LOGIN PASSWORD 'your_password';
GRANT CREATE ON DATABASE db_name TO user_name;
ALTER DATABASE db_name SET SEARCH_PATH = "$user", public_synonyms, public;
```

En el ejemplo anterior, *user\$1name* sustitúyalo por el nombre de tu usuario. A continuación, *db\$1name* sustitúyalo por el nombre de la base de datos de destino. Por último, *your\$1password* sustitúyala por una contraseña segura.

En PostgreSQL, solo el propietario de un esquema o un `superuser` puede anular un esquema. El propietario puede eliminar un esquema y todos los objetos que incluye este esquema, aunque el propietario del esquema no sea propietario de algunos de los objetos.

Si utiliza distintos usuarios para convertir y aplicar diferentes esquemas a la base de datos de destino, puede aparecer un mensaje de error cuando no AWS SCT puede eliminar un esquema. Para evitar este mensaje de error, utilice el rol de `superuser`. 

## Configuración de conversión de SAP ASE a PostgreSQL
<a name="CHAP_Source.SAP.PostgreSQLConversionSettings"></a>

Para editar la configuración de conversión de SAP ASE a PostgreSQL, seleccione **Configuración** y, a continuación, elija **Configuración de conversión**. En la lista superior, elija **SAP ASE** y, a continuación, elija **SAP ASE - PostgreSQL** o **SAP ASE - Amazon Aurora (compatible con PostgreSQL)**. AWS SCT muestra todas las configuraciones disponibles para la conversión de SAP ASE a PostgreSQL.

La configuración AWS SCT de conversión de SAP ASE a PostgreSQL incluye opciones para lo siguiente:
+ Limitar el número de comentarios con elementos de acción en el código convertido.

  En **Añadir comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior**, elija la gravedad de los elementos de acción. AWS SCT añade comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior.

  Por ejemplo, para minimizar el número de comentarios en el código convertido, seleccione **Solo errores**. Para incluir comentarios para todos los elementos de acción del código convertido, seleccione **Todos los mensajes**.
+ Definir la plantilla que se utilizará para los nombres de los esquemas del código convertido. En **Plantilla de generación de nombres de esquema**, elija una de las siguientes opciones:
  + **<source\$1db>**: utiliza el nombre de la base de datos de SAP ASE como nombre de esquema en PostgreSQL.
  + **<source\$1schema>**: utiliza el nombre del esquema de SAP ASE como nombre de esquema en PostgreSQL.
  + **<source\$1db>\$1<schema>**: utiliza una combinación de los nombres de la base de datos y del esquema de SAP ASE como nombre de esquema en PostgreSQL.
+ Usar los nombres exactos de los objetos de la base de datos de origen en el código convertido.

  De forma predeterminada, AWS SCT convierte los nombres de los objetos, variables y parámetros de la base de datos a minúsculas. Para mantener las mayúsculas y minúsculas originales de estos nombres, seleccione **Distinguir entre mayúsculas y minúsculas en los nombres de los objetos de la base de datos de origen**. Elija esta opción si utiliza nombres de objetos que distingan mayúsculas de minúsculas en el servidor de base de datos de SAP ASE de origen.

  En las operaciones que distinguen mayúsculas de minúsculas, AWS SCT puede evitar la conversión de los nombres de los objetos de la base de datos a minúsculas. Para ello, seleccione **Evitar la conversión a minúsculas para las operaciones que distingan entre mayúsculas y minúsculas**.
+ Permitir el uso de índices con el mismo nombre en diferentes tablas de SAP ASE.

  En PostgreSQL, todos los nombres de índice que utilice en el esquema deben ser únicos. Para asegurarse de que AWS SCT genera nombres únicos para todos los índices, seleccione **Generar nombres únicos** para los índices.