Tüm Ürünler
Search
Belge Merkezi

ApsaraDB RDS:Create a database

Son Güncelleme:Oct 13, 2026

ApsaraDB RDS for SQL Server örneği oluşturduktan sonra uygulamalarınız için bu örnek üzerinde veritabanları oluşturmanız gerekir. Bu konuda iş gereksinimlerinizi karşılayacak şekilde veritabanı oluşturma ve veritabanı sayısını planlama adımları açıklanmaktadır.

Önkoşullar

Bir ApsaraDB RDS for SQL Server örneği oluşturmuş olmalısınız. Talimatlar için bkz. RDS for SQL Server örneği oluşturma.

Veritabanı sınırları

Maksimum veritabanı sayısı

SQL Server 2008 R2 örnekleri için veritabanı sınırı sabit olarak 50'dir. Diğer tüm sürümlerde sınır örnek türüne bağlıdır.

RDS Cluster Edition ve RDS High-availability Edition

Formül: min(floor(√CPU cores) × 50, 300)

  1. CPU çekirdek sayısının karekökünü alın.

  2. Sonucu en yakın tam sayıya aşağı yuvarlayın.

  3. Elde edilen değeri 50 ile çarpın.

  4. Sonuç 300 ile sınırlıdır ve maksimum veritabanı sayısını verir.

Örnek: SQL Server 2016 Standard Edition çalıştıran 4 çekirdekli bir örnek en fazla floor(√4) × 50 = 2 × 50 = 100 veritabanını destekler.

RDS Basic Edition

Formül: min(floor(√CPU cores) × 100, 400)

  1. CPU çekirdek sayısının karekökünü alın.

  2. Sonucu en yakın tam sayıya aşağı yuvarlayın.

  3. Elde edilen değeri 100 ile çarpın.

  4. Sonuç 400 ile sınırlıdır ve maksimum veritabanı sayısını verir.

Örnek: SQL Server 2019 Standard Edition çalıştıran 4 çekirdekli bir örnek en fazla floor(√4) × 100 = 2 × 100 = 200 veritabanını destekler.

min fonksiyonu iki değerden küçük olanını döndürür. Örneğin min(100, 300) işlemi 100 sonucunu verir.

Veritabanı oluşturma

  1. Instances sayfasına gidin. Üst gezinme çubuğunda RDS örneğinin bulunduğu bölgeyi seçin. Ardından ilgili RDS örneğini bulun ve örnek kimliğine tıklayın.

  2. Sol gezinme bölmesinde Databases öğesine tıklayın.

  3. Create Database öğesine tıklayın aşağıdaki parametreleri yapılandırın ve ardından Create düğmesine tıklayın.

    Parametre

    Açıklama

    Database Name

    Veritabanı için bir ad girin. Ad 2 ila 64 karakter uzunluğunda olmalı bir harfle başlamalı ve bir harf veya rakamla bitmelidir. Büyük harfler küçük harfler rakamlar alt çizgiler (_) ve tireler (-) içerebilir. Çince karakterler desteklenmez.

    Supported Character Set

    Veritabanı için bir karakter kümesi seçin.

    Description

    Veritabanı için bir açıklama girin. Açıklama en fazla 256 karakter uzunluğunda olabilir.

İlgili işlemler

SSS

Veritabanı oluştururken Specified DB name already exists in the This instance. hata mesajı alınırsa ne yapmalıyım?

Sorun

Bir ApsaraDB RDS for SQL Server örneğinin Databases sayfasında veritabanı oluştururken Specified DB name already exists in the This instance. hata mesajı döndürülür. Hata kodu InvalidDBName.Duplicate şeklindedir.

Neden

Örnek üzerinde aynı ada sahip bir veritabanı zaten bulunmaktadır. Mevcut bir veritabanıyla aynı ada sahip yeni bir veritabanı oluşturamazsınız.

Ek olarak bir ApsaraDB RDS for SQL Server örneğinin Databases sayfası yalnızca ONLINE durumundaki veritabanlarını gösterir. ONLINE durumunda olmayan (örneğin RESTORING RECOVERING veya OFFLINE) veritabanları konsolda görüntülenmez. Bu nedenle veritabanının mevcut olmadığını yanlışlıkla düşünebilir ve bu durum oluşturma hatalarına yol açabilir.

Çözüm

  1. SSMS kullanarak ApsaraDB RDS for SQL Server örneğine bağlanın.

  2. Örnek üzerindeki sistem dışı veritabanlarını ve durumlarını sorgulamak için aşağıdaki SQL ifadesini çalıştırın:

    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

    Aşağıdaki örnek sonuç döndürülür. Aynı ada sahip bir veritabanının olup olmadığını kontrol edebilir ve veritabanının mevcut durumunu görüntüleyebilirsiniz.

    DatabaseName    StateDescription    RecoveryModel
    jmdb            ONLINE              FULL
    jmdb200         RECOVERING          FULL
  3. Aynı ada sahip bir veritabanı varsa ancak ONLINE durumunda değilse sorunu aşağıdaki senaryolara göre çözün:

    • Senaryo 1: OSS'ten yedekleme verilerini geri yüklerken veritabanını çevrimiçi duruma getirmeyi seçmemeniz

      • Neden

        OSS'ten bir ApsaraDB RDS for SQL Server örneğine yedekleme verilerini geri yüklediğinizde Do not bring the database online (for additional differential or log backups) seçeneğini belirlerseniz veritabanı ONLINE olmayan bir durumda kalır.

        Bu seçenek RDS konsolunun sol gezinme bölmesindeki Backup and Restoration sayfasında Migrate OSS Backup Data to RDS öğesine tıkladıktan sonra görünen Import Guide adım 3. Import Data bölümündeki Migration Plan alanında yer alır.

      • Çözüm

        Artımlı yedekleme dosyalarını yüklemeye devam etmeniz gerekiyorsa geri yükleme tamamlandıktan sonra Cloud Migration Records of Backup Data sekmesinde veritabanını çevrimiçi duruma getirin. Artımlı verileri geri yüklemenize artık gerek yoksa veritabanını doğrudan çevrimiçi duruma getirebilirsiniz.

        Bu durumda Cloud Migration Records of Backup Data sekmesinde görev durumu Waiting olarak görev türü Do not bring the database online (for additional differential or log backups) olarak ve görev açıklaması Waiting for online olarak görünür.

        Veritabanına artık ihtiyaç duyulmuyor ve yeniden oluşturulması gerekiyorsa veritabanını çevrimiçi duruma getirebilir veritabanını silebilir ve ardından veritabanını tekrar oluşturabilirsiniz.

    • Senaryo 2: Günlük alanı dolduğu için veritabanı RECOVERING durumuna geçiyor

      • Neden

        Günlük alanı dolu olduğu için günlükler yazılamıyor. Sonuç olarak veritabanı RECOVERING durumuna geçer. Sorunu doğrulamak için örneğin hata günlüklerini kontrol edebilirsiniz:

        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'.
      • Çözüm

        • Örneğin depolama alanı doluysa ve günlük alanı genişletilemiyorsa örneğin depolama kapasitesini artırmanız ve ardından örneği manuel olarak yeniden başlatmanız gerekir. Yeniden başlatmanın ardından veritabanı RECOVERING sürecine devam eder. Kurtarma tamamlandığında veritabanı ONLINE durumuna döner.

        • Veritabanının günlük dosyası için bir büyüme sınırı belirlenmişse ve günlük alanı dolu olsa da örneğin depolama alanı dolu değilse yalnızca günlük dosyasının boyut sınırını artırmanız yeterlidir. Örneği yeniden başlatmanıza gerek yoktur. Günlük dosyasının boyut sınırını ayarlamak için aşağıdaki adımları izleyin:

          SQL Server Management Studio (SSMS) Nesne Gezgini'nde jmdb gibi veritabanına sağ tıklayın ve Properties öğesini seçin.

          Database Properties iletişim kutusunun sol gezinme bölmesinde Files sayfasını seçin. Database files tablosunda Dosya Türü LOG olan günlük dosyasını bulun ve Autogrowth / Maxsize sütunundaki ... düğmesine tıklayarak günlük dosyasının otomatik büyüme ayarlarını ve maksimum boyutunu ayarlayın.

          Change Autogrowth for jmdb_log iletişim kutusunda Enable Autogrowth öğesini seçin File Growth değerini In Megabytes olarak ayarlayıp 64 gibi bir büyüme değeri girin Maximum File Size değerini Limited to (MB) olarak ayarlayıp 2 TB'yi temsil eden 2.097.152 gibi bir maksimum dosya boyutu girin ve ardından OK düğmesine tıklayın.

        Veritabanına artık ihtiyaç duyulmuyor ve yeniden oluşturulması gerekiyorsa veritabanı ONLINE durumuna gelene kadar bekleyebilir veritabanını silebilir ve ardından veritabanını tekrar oluşturabilirsiniz.

    • Senaryo 3: Veritabanı manuel olarak OFFLINE durumuna ayarlanmış

      • Neden

        Veritabanı bir yönetici tarafından manuel olarak OFFLINE durumuna ayarlanmış olabilir.

      • Çözüm

        Veritabanını tekrar ONLINE durumuna getirmek için sp_rds_set_db_online saklı yordamını kullanın:

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

        Veritabanına artık ihtiyaç duyulmuyor ve yeniden oluşturulması gerekiyorsa veritabanı ONLINE durumuna gelene kadar bekleyebilir veritabanını silebilir ve ardından veritabanını tekrar oluşturabilirsiniz.

Veritabanı oluştururken Due to the limit number you can't create a database hata mesajı alınırsa ne yapmalıyım?

  • Neden: Bu hata ApsaraDB RDS for SQL Server örneğinizin teknik özellikleri için izin verilen maksimum veritabanı sayısına ulaştığını gösterir. Sınırların nasıl hesaplandığı hakkında bilgi için bu konudaki Veritabanı sınırları bölümüne bakın.

  • Çözüm: Veritabanı sınırını artırmak için örnek teknik özelliklerini yükseltebilirsiniz.

ApsaraDB RDS for SQL Server veritabanı adında Çince karakter kullanabilir miyim?

Hayır. Veritabanı adlarında Çince karakter kullanılması uyumluluk sorunlarına betik ayrıştırma zorluklarına geçiş risklerine ve yönetim karmaşıklığına neden olabilir. ApsaraDB RDS for SQL Server'da bir veritabanı adı 2 ila 64 karakter uzunluğunda olmalı bir harfle başlamalı bir harf veya rakamla bitmeli ve yalnızca büyük harfler küçük harfler rakamlar alt çizgiler (_) veya tireler (-) içermelidir. Bu adlandırma kurallarına uyulması sistem kararlılığını ve sürdürülebilirliğini sağlar.