Especificación de parámetros de base de datos - Amazon Relational Database Service

Especificación de parámetros de base de datos

Los tipos de parámetros de base de datos incluyen lo siguiente:

  • Entero

  • Booleano

  • Cadena

  • Largo

  • Doble

  • Timestamp

  • Objeto de otros tipos de datos definidos

  • Matriz de valores de tipo entero, booleano, en cadena, largos, dobles, temporales o de objeto

También puede especificar parámetros de enteros y booleanos mediante expresiones, fórmulas y funciones.

Para el motor de Oracle, puede utilizar la variable de la fórmula DBInstanceClassHugePagesDefault para especificar un parámetro de base de datos booleano. Consulte Variables de las fórmulas de parámetros de base de datos.

Para el motor PostgreSQL, puede utilizar una expresión para especificar un parámetro de base de datos booleano. Consulte Expresiones de parámetros de base de datos booleanos.

Fórmulas de parámetros de base de datos

Una fórmula de parámetros de base de datos es una expresión que da como resultado un valor entero o un valor booleano. Se encierra la expresión entre llaves: {}. Puede especificar fórmulas para el valor de un parámetro de base de datos o como argumento de una función de parámetro de base de datos.

Sintaxis
{FormulaVariable} {FormulaVariable*Integer} {FormulaVariable*Integer/Integer} {FormulaVariable/Integer}

Variables de las fórmulas de parámetros de base de datos

Cada variable de la fórmula devuelve un entero o un valor booleano. Los nombres de las variables distinguen entre mayúsculas y minúsculas.

AllocatedStorage

Devuelve un entero que representa el tamaño, en bytes, del volumen de datos.

DBInstanceClassHugePagesDefault

Devuelve un valor booleano. Actualmente solo se admite para los motores de Oracle.

Para obtener más información, consulte Activación de páginas de gran tamaño para una instancia de RDS para Oracle.

DBInstanceClassMemory

Devuelve un entero del número de bytes de memoria disponibles para el proceso de base de datos. Este número se calcula internamente. Para ello, comienza con la cantidad total de memoria de la clase de instancia de base de datos. De esto, el cálculo resta la memoria reservada del sistema operativo y los procesos de RDS que administran la instancia. Por lo tanto, el número siempre es un poco inferior al de las cifras de memoria que se muestran en las tablas de clases de instancia en Clases de instancia de base de datos de . El valor exacto depende de una combinación de factores. Estos incluyen la clase de instancia, motor de base de datos y de si aplica a una instancia de RDS o a una instancia que forme parte de un clúster de Aurora.

DBInstanceVCPU

Devuelve un entero que representa el número de unidades de procesamiento centrales virtuales (vCPU) utilizadas por Amazon RDS para administrar la instancia.

EndPointPort

Devuelve un entero que representa el puerto utilizado al conectarse a la instancia de base de datos.

TrueIfReplica

Devuelve 1 si la instancia de base de datos es una réplica de lectura y 0 si no lo es. Es el valor predeterminado del parámetro read_only en MySQL.

Operadores de las fórmulas de parámetros de base de datos

Las fórmulas de parámetros de base de datos admiten dos operadores: división y multiplicación.

Operador de división: /

Divide el dividendo entre el divisor, y devuelve un cociente entero. Los decimales del cociente se truncan, no se redondean.

Sintaxis

dividend / divisor

Los argumentos del dividendo y el divisor deben ser expresiones enteras.

Operador de multiplicación: *

Multiplica las expresiones, devolviendo el producto de las expresiones. Los decimales de las expresiones se truncan, no se redondean.

Sintaxis

expression * expression

Las dos expresiones deben dar como resultado valores enteros.

Funciones de parámetros de base de datos

Los argumentos de las funciones de parámetro de base de datos se especifican como enteros o fórmulas. Cada función debe tener un argumento como mínimo. Especifique varios argumentos como una lista separada por comas. La lista no puede tener ningún miembro vacío; por ejemplo, argument1,,argument3. Los nombres de las funciones no distinguen entre mayúsculas y minúsculas.

IF

Devuelve un argumento.

Actualmente solo se admite para los motores de Oracle y el único primer argumento admitido es {DBInstanceClassHugePagesDefault}. Para obtener más información, consulte Activación de páginas de gran tamaño para una instancia de RDS para Oracle.

Sintaxis

IF(argument1, argument2, argument3)

Devuelve el segundo argumento si el primer argumento da como resultado true. En caso contrario, devuelve el tercer argumento.

GREATEST

Devuelve el valor más grande de una lista de números enteros o fórmulas de parámetros.

Sintaxis

GREATEST(argument1, argument2,...argumentn)

Devuelve un número entero.

LEAST

Devuelve el valor más pequeño de una lista de números enteros o fórmulas de parámetros.

Sintaxis

LEAST(argument1, argument2,...argumentn)

Devuelve un número entero.

SUM

Suma los valores de los números enteros o fórmulas de parámetros especificados.

Sintaxis

SUM(argument1, argument2,...argumentn)

Devuelve un número entero.

Expresiones de parámetros de base de datos booleanos

Una expresión de parámetro de base de datos booleano se resuelve en un valor booleano de 1 o 0. La expresión se proporciona entre comillas.

nota

Las expresiones de parámetros de base de datos booleanos solo son compatibles con el motor PostgreSQL.

Sintaxis
"expression operator expression"

Ambas expresiones deben resolverse en enteros. Una expresión puede ser la siguiente:

  • Una constante entera

  • Fórmulas de parámetros de base de datos

  • Funciones de parámetros de base de datos

  • Variable de parámetros de base de datos

Las expresiones de parámetro de base de datos booleano admiten los siguientes operadores de desigualdad:

El operador mayor que: >

Sintaxis

"expression > expression"
El operador menor que: <

Sintaxis

"expression < expression"
Los operadores mayor que o igual a: >=, =>

Sintaxis

"expression >= expression" "expression => expression"
Los operadores menor que o igual a: <=, =<

Sintaxis

"expression <= expression" "expression =< expression"
ejemplo uso de una expresión de parámetro de base de datos booleano

En el siguiente ejemplo de expresión de parámetro de base de datos booleano se compara el resultado de una fórmula de parámetro con un entero. Lo hace para modificar el parámetro wal_compression de base de datos booleano de una instancia de base de datos de PostgreSQL. La expresión de parámetro compara el número de vCPU con el valor 2. Si el número de vCPU es mayor que 2, entonces el parámetro de la base de datos wal_compression se establece en verdadero.

aws rds modify-db-parameter-group --db-parameter-group-name group-name \ --parameters "ParameterName=wal_compression,ParameterValue=\"{DBInstanceVCPU} > 2\" "

Expresiones de registro de parámetros de base de datos

Puede establecer un valor de parámetro de base de datos entero en una expresión de registro. Se encierra la expresión entre llaves: {}. Por ejemplo:

{log(DBInstanceClassMemory/8187281418)*1000}

La función log representa la base de registro 2. En este ejemplo también se utiliza la variable de fórmula DBInstanceClassMemory. Consulte Variables de las fórmulas de parámetros de base de datos.

nota

Actualmente, no puede especificar el parámetro innodb_log_file_size de MySQL con ningún valor que no sea un número entero.

Ejemplos de valores de los parámetros de base de datos

Estos ejemplos muestran el uso de fórmulas, funciones y expresiones para los valores de los parámetros de base de datos.

aviso

Establecer parámetros incorrectamente en un grupo de parámetros de base de datos puede tener efectos adversos no deseados. Estos pueden incluir el rendimiento degradado y la inestabilidad del sistema. Tenga cuidado siempre que modifique los parámetros de base de datos y haga una copia de seguridad de los datos antes de modificar el grupo de parámetros de base de datos. Pruebe los cambios de los grupos de parámetros en instancias de bases de datos de prueba, creadas mediante restauraciones a un momento dado, antes de aplicar dichos cambios de grupo de parámetros a las instancias de bases de datos de producción.

ejemplo utilizando la función de parámetro de base de datos GREATEST

Puede especificar la función GREATEST en un parámetro de procesos Oracle. Utilícelo para establecer el número de procesos de usuario en el mayor de 80 o DBInstanceClassMemory dividido por 9 868 951.

GREATEST({DBInstanceClassMemory/9868951},80)
ejemplo uso de la función de parámetro de base de datos LEAST

Puede especificar la función LEAST en un valor de parámetro de MySQL max_binlog_cache_size. Utilícelo para establecer el tamaño máximo de caché que una transacción puede usar en una instancia de MySQL, con un mínimo de 1 MB o DBInstanceClass/256.

LEAST({DBInstanceClassMemory/256},10485760)