Todos los productos
Search
Centro de documentos

ApsaraDB RDS:Create a database

Última actualización: Sep 03, 2026

Después de crear una instancia de ApsaraDB RDS for SQL Server, debe crear bases de datos en la instancia para sus aplicaciones. Este tema describe cómo crear una base de datos y planificar la cantidad de bases de datos para satisfacer sus requisitos empresariales.

Requisitos previos

Se ha creado una instancia de ApsaraDB RDS for SQL Server. Para obtener instrucciones, consulte Create an ApsaraDB RDS for SQL Server instance.

Límites de base de datos

Número máximo de bases de datos

El límite de bases de datos para instancias de SQL Server 2008 R2 es fijo: 50. Para todas las demás versiones, el límite depende del tipo de instancia.

RDS Cluster Edition y RDS High-availability Edition

Fórmula: min(floor(√CPU cores) × 50, 300)

  1. Calcule la raíz cuadrada del número de núcleos de CPU.

  2. Redondee hacia abajo al entero más cercano.

  3. Multiplique por 50.

  4. El resultado, con un tope de 300, es el número máximo de bases de datos.

Ejemplo: Una instancia de 4 núcleos que ejecuta SQL Server 2016 Standard Edition admite hasta floor(√4) × 50 = 2 × 50 = 100 bases de datos.

RDS Basic Edition

Fórmula: min(floor(√CPU cores) × 100, 400)

  1. Calcule la raíz cuadrada del número de núcleos de CPU.

  2. Redondee hacia abajo al entero más cercano.

  3. Multiplique por 100.

  4. El resultado, con un tope de 400, es el número máximo de bases de datos.

Ejemplo: Una instancia de 4 núcleos que ejecuta SQL Server 2019 Standard Edition admite hasta floor(√4) × 100 = 2 × 100 = 200 bases de datos.

La función

min

devuelve el menor de dos valores. Por ejemplo, min(100, 300) es 100.

Crear una base de datos

  1. Vaya a la página Instances. En la barra de navegación superior, seleccione la región donde reside la instancia de RDS. A continuación, busque la instancia de RDS y haga clic en el ID de la instancia.

  2. En el panel de navegación izquierdo, haga clic en Databases.

  3. Haga clic en Create Database, configure los siguientes parámetros y luego haga clic en Create.

    Parámetro

    Descripción

    Database Name

    Introduzca un nombre para la base de datos. El nombre debe tener entre 2 y 64 caracteres, comenzar con una letra y terminar con una letra o un dígito. Puede contener letras mayúsculas, letras minúsculas, dígitos, guiones bajos (_) y guiones (-). No se admiten caracteres chinos.

    Supported Character Set

    Seleccione un character set para la base de datos.

    Description

    Introduzca una descripción para la base de datos. La descripción puede tener hasta 256 caracteres de longitud.

Operaciones relacionadas

  • También puede llamar a la operación de API CreateDatabase para crear una base de datos en una instancia de ApsaraDB RDS for SQL Server.

  • Puede utilizar diversos métodos para connect to your SQL Server instance, como Data Management (DMS) o un cliente de SQL Server Management Studio (SSMS).

Preguntas frecuentes

¿Qué debo hacer si se devuelve el mensaje de error **Specified DB name already exists in the This instance.** al crear una base de datos?

Problema

Al crear una base de datos en la página Databases de una instancia de ApsaraDB RDS for SQL Server, se devuelve el mensaje de error Specified DB name already exists in the This instance.. El código de error es InvalidDBName.Duplicate.

Causa

Ya existe una base de datos con el mismo nombre en la instancia. No puede crear una base de datos cuyo nombre sea igual al de una base de datos existente.

Además, la página Databases de una instancia de ApsaraDB RDS for SQL Server solo muestra bases de datos con estado ONLINE. Las bases de datos que no tienen el estado ONLINE (como RESTORING, RECOVERING o OFFLINE) no se muestran en la consola. Por lo tanto, podría creer erróneamente que la base de datos no existe, lo que puede provocar fallos en la creación.

Solución

  1. Connect to the ApsaraDB RDS for SQL Server instance by using SSMS.

  2. Ejecute la siguiente instrucción SQL para consultar las bases de datos que no son del sistema en la instancia y sus estados:

    SELECT
        [name] AS DatabaseName,  -- The name of the database
        state_desc AS StateDescription,  -- The current state of the database, such as ONLINE, OFFLINE, or RECOVERING
        recovery_model_desc AS RecoveryModel  -- The recovery model of the database, such as SIMPLE or FULL
    FROM
        sys.databases
    WHERE
        database_id > 4; -- Filter out system databases

    Se devuelve el siguiente resultado de ejemplo. Puede comprobar si existe una base de datos con el mismo nombre y ver el estado actual de la base de datos.

    DatabaseName    StateDescription    RecoveryModel
    jmdb            ONLINE              FULL
    jmdb200         RECOVERING          FULL
  3. Si existe una base de datos con el mismo nombre pero no está en estado ONLINE, resuelva el problema según los siguientes escenarios:

    • Escenario 1: Elige no poner la base de datos en línea al restaurar datos de copia de seguridad desde OSS

      • Causa

        Cuando realiza restore backup data from OSS to an ApsaraDB RDS for SQL Server instance, si selecciona la opción Do not bring the database online (for additional differential or log backups), la base de datos permanece en un estado distinto a ONLINE.

        Esta opción se encuentra en la sección Migration Plan en el paso 3. Import Data del Import Guide, que aparece después de hacer clic en Migrate OSS Backup Data to RDS en la página Backup and Restoration del panel de navegación izquierdo de la consola de RDS.

      • Solución

        Si aún necesita cargar archivos de copia de seguridad incremental, ponga la base de datos en línea en la pestaña Cloud Migration Records of Backup Data después de que finalice la restauración. Si ya no necesita restaurar datos incrementales, puede poner la base de datos en línea directamente.

        En este caso, en la pestaña Cloud Migration Records of Backup Data, el estado de la tarea es Waiting, el tipo de tarea es Do not bring the database online (for additional differential or log backups) y la descripción de la tarea es Waiting for online.

        Si la base de datos ya no es necesaria y debe volver a crearse, puede poner la base de datos en línea, delete the database y luego crear la base de datos nuevamente.

    • Escenario 2: La base de datos entra en estado RECOVERING porque el espacio de registro está lleno

      • Causa

        El espacio de registro está lleno y no se pueden escribir registros. Como resultado, la base de datos entra en estado RECOVERING. Puede revisar los registros de errores de la instancia para confirmar el problema:

        3/16/2024 2:05:35 AM    spid128    During undoing of a logged operation in database 'db_logistics', an error occurred at log record ID (1:88854:14712:2). Typically, the specific failure is logged previously as an error in...
        3/16/2024 2:05:35 AM    spid128    Error: 3314, Severity: 21, State: 3.
        3/16/2024 2:05:35 AM    spid128    The transaction log for database 'xxx' is full due to 'LOG_BACKUP'.
        3/16/2024 2:05:35 AM    spid128    Error: 9002, Severity: 17, State: 2.
        3/16/2024 2:05:35 AM    spid128    The transaction log for database 'xxx' is full due to 'LOG_BACKUP'.
      • Solución

        • Si el espacio de almacenamiento de la instancia está lleno y el espacio de registro no se puede ampliar, debe expand the storage capacity of the instance y luego manually restart the instance. Después del reinicio, la base de datos continúa el proceso RECOVERING. Una vez completada la recuperación, la base de datos vuelve al estado ONLINE.

        • Si se ha establecido un límite de crecimiento para el archivo de registro de la base de datos y el espacio de registro está lleno pero el espacio de almacenamiento de la instancia no lo está, solo necesita aumentar el límite de tamaño del archivo de registro. No es necesario reiniciar la instancia. Para ajustar el límite de tamaño del archivo de registro, realice las siguientes operaciones:

          En Object Explorer de SQL Server Management Studio (SSMS), haga clic con el botón derecho en la base de datos, por ejemplo jmdb, y seleccione Properties.

          En el panel de navegación izquierdo del cuadro de diálogo Database Properties, seleccione la página Files. En la tabla Database files, busque el archivo de registro cuyo File Type es LOG y haga clic en el botón ... de la columna Autogrowth / Maxsize para ajustar la configuración de crecimiento automático y el tamaño máximo del archivo de registro.

          En el cuadro de diálogo Change Autogrowth for jmdb_log, seleccione Enable Autogrowth, establezca File Growth en In Megabytes e introduzca un valor de crecimiento, como 64, establezca Maximum File Size en Limited to (MB) e introduzca un tamaño máximo de archivo, como 2,097,152, que indica 2 TB, y luego haga clic en OK.

        Si la base de datos ya no es necesaria y debe volver a crearse, puede esperar hasta que la base de datos entre en estado ONLINE, delete the database y luego crear la base de datos nuevamente.

    • Escenario 3: La base de datos se establece manualmente en estado OFFLINE****

      • Causa

        Es posible que un administrador haya establecido manualmente la base de datos en estado OFFLINE.

      • Solución

        Utilice el procedimiento almacenado sp_rds_set_db_online para devolver la base de datos al estado ONLINE:

        USE master;
        GO
        EXEC sp_rds_set_db_online 'Database name';
        GO

        Si la base de datos ya no es necesaria y debe volver a crearse, puede esperar hasta que la base de datos entre en estado ONLINE, delete the database y luego crear la base de datos nuevamente.

¿Qué debo hacer si se devuelve el mensaje de error **Due to the limit number you can't create a database** al crear una base de datos?

  • Causa: Este error indica que su instancia de ApsaraDB RDS for SQL Server ha alcanzado el número máximo de bases de datos permitido para sus especificaciones. Para obtener información sobre cómo se calculan los límites, consulte la sección Límites de base de datos en este tema.

  • Solución: Para aumentar el límite de bases de datos, puede upgrade the instance specifications.

¿Puedo usar caracteres chinos en el nombre de una base de datos de ApsaraDB RDS for SQL Server?

No. El uso de caracteres chinos en los nombres de bases de datos puede causar problemas de compatibilidad, dificultades en el análisis sintáctico de scripts, riesgos de migración y complejidad en la gestión. En ApsaraDB RDS for SQL Server, el nombre de una base de datos debe tener entre 2 y 64 caracteres, comenzar con una letra, terminar con una letra o un dígito, y contener solo letras mayúsculas, letras minúsculas, dígitos, guiones bajos (_) o guiones (-). Cumplir con estas convenciones de nomenclatura garantiza la estabilidad y mantenibilidad del sistema.