Uso del almacenamiento en RDS para SQL Server
Con RDS para SQL Server, puede adjuntar hasta tres volúmenes adicionales a la instancia de RDS para SQL Server, cada uno asignado a una letra de unidad de Windows única. Esto le permite distribuir los archivos de la base de datos en varios volúmenes más allá de la unidad D: predeterminada. Cuando agrega un volumen de almacenamiento, obtiene una mayor flexibilidad para la administración de archivos de bases de datos y la optimización del almacenamiento.
Los beneficios incluyen:
-
Distribución flexible de archivos: distribuya los archivos de datos de bases de datos y los archivos de registro en varios volúmenes para mejorar el rendimiento de E/S.
-
Optimización del almacenamiento: utilice diferentes tipos y configuraciones de almacenamiento para diferentes requisitos de carga de trabajo.
-
Escalabilidad: agregue capacidad de almacenamiento sin modificar los volúmenes existentes.
En esta página
Consideraciones para el uso de volúmenes de almacenamiento adicionales con RDS para SQL Server
Agregación, eliminación o modificación de volúmenes de almacenamiento con RDS para SQL Server
Restauración de operaciones para volúmenes de almacenamiento adicionales con RDS para SQL Server
Casos de uso para volúmenes de almacenamiento adicionales con RDS para SQL Server
Consideraciones para el uso de volúmenes de almacenamiento adicionales con RDS para SQL Server
Tenga en cuenta las siguientes características y limitaciones al utilizar volúmenes de almacenamiento adicionales con RDS para SQL Server:
-
Solo puede agregar volúmenes de almacenamiento en SQL Server Standard Edition (SE) y Enterprise Edition (EE).
-
Puede agregar hasta 3 volúmenes de almacenamiento adicionales por instancia.
-
Los nombres de los volúmenes se asignan automáticamente a las letras de las unidades de Windows de la siguiente manera:
-
rdsdbdata2: unidadH: -
rdsdbdata3: unidadI: -
rdsdbdata4: unidadJ:
-
-
Los archivos TempDB siguen utilizando la unidad
T:cuando se utiliza el almacenamiento de instancias NVMe. Los archivos de auditoría de SQL Server y los archivos de Microsoft Business Intelligence (MSBI) permanecen en la unidadD:. -
Solo puede agregar tipos de almacenamiento de SSD de uso general (gp3) y SSD de IOPS aprovisionadas (io2).
-
No hay limitaciones de tamaño mínimo para los volúmenes de almacenamiento adicionales. El tamaño máximo de almacenamiento de la instancia de base de datos es de 256 TiB en total en todos los volúmenes.
-
No se admite la agregación de volúmenes de almacenamiento a instancias con réplicas de lectura o a instancias de réplicas de lectura.
-
No se admite el traslado de archivos entre volúmenes después de crearlos.
-
No puede eliminar el volumen
D:, pero puede eliminar otros volúmenes de almacenamiento siempre que estén vacíos. -
No se admite la modificación del tamaño de los volúmenes existentes durante la restauración de instantáneas o la recuperación en un momento dado (PITR). Sin embargo, puede agregar nuevos volúmenes de almacenamiento durante las operaciones de restauración.
Agregación, eliminación o modificación de volúmenes de almacenamiento con RDS para SQL Server
Puede agregar, modificar y eliminar volúmenes de almacenamiento adicionales mediante la AWS CLI o la Consola de administración de AWS. Todas las operaciones utilizan la operación de la API modify-db-instance con el parámetro additional-storage-volumes.
importante
La agregación o eliminación de volúmenes de almacenamiento adicionales crea una copia de seguridad pendiente y un periodo de interrupción de la restauración en un momento dado. Este periodo se cierra cuando se completa el flujo de trabajo de copia de seguridad.
Temas
Agregación de volúmenes de almacenamiento
Puede agregar hasta tres volúmenes de almacenamiento además de la unidad D: predeterminada. Para agregar un nuevo volumen de almacenamiento a la instancia de RDS para SQL Server, utilice el comando modify-db-instance con el parámetro additional-storage-volumes.
El siguiente ejemplo agrega un nuevo volumen de SSD de uso general (gp3) de 4000 GiB llamado rdsdbdata4.
aws rds modify-db-instance \ --db-instance-identifiermy-sql-server-instance\ --regionus-east-1\ --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","StorageType":"gp3","AllocatedStorage":4000}]' \ --apply-immediately
Escalado de volúmenes de almacenamiento adicionales
Puede modificar cualquier configuración de almacenamiento para los volúmenes adicionales, excepto el tamaño de almacenamiento. En el siguiente ejemplo, se modifica la configuración de IOPS del volumen rdsdbdata2.
aws rds modify-db-instance \ --db-instance-identifiermy-sql-server-instance\ --regionus-east-1\ --additional-storage-volumes '[{"VolumeName":"rdsdbdata2","IOPS":4000}]' \ --apply-immediately
Eliminación de volúmenes de almacenamiento adicionales
No puede eliminar el volumen D:, pero puede eliminar otros volúmenes de almacenamiento cuando estén vacíos.
aviso
Antes de eliminar un volumen de almacenamiento adicional, asegúrese de que no haya ningún archivo de base de datos almacenado en el volumen.
En el siguiente ejemplo, se elimina el volumen rdsdbdata4.
aws rds modify-db-instance \ --db-instance-identifiermy-sql-server-instance\ --regionus-east-1\ --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","SetForDelete":true}]' \ --apply-immediately
Restauración de operaciones para volúmenes de almacenamiento adicionales con RDS para SQL Server
Al restaurar la base de datos, puede agregar volúmenes de almacenamiento. También puede modificar la configuración de almacenamiento de los volúmenes existentes.
Temas
Restauración de instantáneas
Al restaurar a partir de una instantánea, puede agregar nuevos volúmenes de almacenamiento adicionales o modificar la configuración de IOPS, rendimiento y tipo de almacenamiento de los volúmenes existentes.
El siguiente ejemplo restaura una instancia de base de datos a partir de una instantánea y modifica la configuración de IOPS del volumen rdsdbdata2:
aws rds restore-db-instance-from-db-snapshot \ --db-instance-identifiermy-restored-instance\ --db-snapshot-identifiermy-snapshot\ --regionus-east-1\ --additional-storage-volumes '[{"VolumeName":"rdsdbdata2","IOPS":5000}]'
Recuperación a un momento dado
Durante la recuperación en un momento dado (PITR), puede agregar nuevos volúmenes de almacenamiento adicionales con configuraciones personalizadas.
El siguiente ejemplo realiza PITR y agrega un nuevo volumen de SSD de uso general (gp3) de 5000 GiB:
aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifiermy-source-instance\ --target-db-instancemy-pitr-instance\ --use-latest-restorable-time \ --regionus-east-1\ --additional-storage-volumes '[{"VolumeName":"rdsdbdata4","StorageType":"gp3","AllocatedStorage":5000,"IOPS":5000,"StorageThroughput":200}]'
Restauración de bases de datos nativos
Puede utilizar el procedimiento almacenado rds_restore_database para restaurar las bases de datos en volúmenes de almacenamiento adicionales específicos. Dos nuevos parámetros permiten la selección de volúmenes:
data_file_volume-
Especifica la letra de unidad para los archivos de datos de la base de datos
log_file_volume-
Especifica la letra de unidad para los archivos de registros de la base de datos
El ejemplo siguiente restaura una base de datos con los archivos de datos de la unidad H: y los archivos de registro de la unidad I::
EXEC msdb.dbo.rds_restore_database @restore_db_name='my_database', @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/backup-file.bak', @data_file_volume='H:', @log_file_volume='I:';
Si no especifica los parámetros de volumen o si especifica la unidad D: para ambos parámetros, los archivos de la base de datos se restauran en la unidad D: predeterminada:
EXEC msdb.dbo.rds_restore_database @restore_db_name='my_database', @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/backup-file.bak';
Casos de uso para volúmenes de almacenamiento adicionales con RDS para SQL Server
Los volúmenes de almacenamiento adicionales admiten varios escenarios de administración de bases de datos. Las siguientes secciones describen casos de uso comunes y enfoques de implementación.
Temas
Creación de bases de datos en volúmenes de almacenamiento adicionales
Puede crear nuevas bases de datos directamente en volúmenes de almacenamiento adicionales mediante instrucciones estándar de CREATE DATABASE SQL Server.
El ejemplo siguiente crea una base de datos con los archivos de datos de la unidad H: y los archivos de registro de la unidad I::
CREATE DATABASEMyDatabaseON ( NAME = 'MyDatabase_Data', FILENAME = 'H:\rdsdbdata\data\MyDatabase_Data.mdf', SIZE = 100MB, FILEGROWTH = 10MB ) LOG ON ( NAME = 'MyDatabase_Log', FILENAME = 'I:\rdsdbdata\data\MyDatabase_Log.ldf', SIZE = 10MB, FILEGROWTH = 10% );
Ampliación de la capacidad de almacenamiento
Cuando la unidad D: predeterminada alcance su capacidad máxima, puede agregar volúmenes de almacenamiento adicionales, escalar los volúmenes existentes y crear nuevos archivos de datos o archivos de registro en los nuevos volúmenes.
Ampliación de la capacidad de almacenamiento
-
Agregue un volumen de almacenamiento a la instancia mediante el comando
modify-db-instance. -
Agregue un nuevo archivo de datos al volumen de almacenamiento adicional:
ALTER DATABASEMyDatabaseADD FILE ( NAME = 'MyDatabase_Data2', FILENAME = 'H:\rdsdbdata\data\MyDatabase_Data2.ndf', SIZE = 500MB, FILEGROWTH = 50MB );
Movimiento de bases de datos entre volúmenes
Para mover una base de datos a un volumen diferente, utilice el enfoque de copia de seguridad y restauración con los procedimientos rds_backup_database y rds_restore_database almacenados. Para obtener más información, consulte Uso de la copia de seguridad y la restauración nativas.
Traslado de una base de datos a otro volumen
-
Haga una copia de seguridad de la base de datos mediante
rds_backup_database:EXEC msdb.dbo.rds_backup_database @source_db_name='MyDatabase', @s3_arn_to_backup_to='arn:aws:s3:::my-bucket/database-backup.bak'; -
Restaure la base de datos al volumen objetivo:
EXEC msdb.dbo.rds_restore_database @restore_db_name='MyDatabase_New', @s3_arn_to_restore_from='arn:aws:s3:::my-bucket/database-backup.bak', @data_file_volume='H:', @log_file_volume='I:'; -
Quite la base de datos de la unidad anterior para liberar espacio. Para obtener más información, consulte Eliminación de una base de datos en una instancia de base de datos de Amazon RDS para Microsoft SQL Server.
Archivado de los datos en un almacenamiento rentable
En el caso de las tablas particionadas, puede archivar datos antiguos en volúmenes de almacenamiento adicionales con características de rendimiento diferentes.
Archivado de datos particionados
-
Agregue un volumen de almacenamiento con el tipo y la capacidad de almacenamiento adecuados.
-
Cree un nuevo grupo de archivos en el volumen de almacenamiento adicional:
ALTER DATABASEMyDatabaseADD FILEGROUPArchiveFileGroup; ALTER DATABASEMyDatabaseADD FILE ( NAME = 'Archive_Data', FILENAME = 'H:\rdsdbdata\data\Archive_Data.ndf', SIZE = 1GB, FILEGROWTH = 100MB ) TO FILEGROUPArchiveFileGroup; -
Mueva las particiones al nuevo grupo de archivos mediante los comandos de administración de particiones de SQL Server.