ConfigError: Missing region in config

TL;DR — AWS SDK, hangi bölgeyle konuşacağını bilmiyor. Onu istemcide açıkça (new DynamoDBClient({ region: 'us-east-1' })) ya da AWS_REGION ortam değişkeni aracılığıyla ya da ~/.aws/config'te ayarlayın.

Ne anlama gelir

ConfigError: Missing region in config

Her DynamoDB uç noktası bölgeseldir, bu yüzden SDK bir istek gönderebilmeden önce bir bölge çözmelidir. Bu tam ifade, varsayılan olarak bir bölge seçmeyen JavaScript v2 için AWS SDK'sından (artık destek sonu) gelir — yapılandırma kaynaklarından hiçbiri bir bölge sağlamadığında, herhangi bir ağ çağrısından önce bunu fırlatır. Diğer SDK'lar ve AWS CLI, hiç bölge yapılandırılmadığında kendi eşdeğerleriyle başarısız olur.

Neden olur

  • İstemciye bölge iletilmemiş ve ortamda AWS_REGION yok (JavaScript SDK'sı AWS_REGION'ı okur; AWS CLI ayrıca AWS_DEFAULT_REGION ve --region'ı da onurlandırır).
  • SDK'nın hiç okumadığı ~/.aws/config'te bir bölge — JavaScript SDK v2, paylaşılan yapılandırma dosyasını yalnızca AWS_SDK_LOAD_CONFIG ortam değişkeni ayarlandığında yükler; o olmadan, gayet iyi bir region = satırı yoksayılır.
  • Ortam değişkeni adında bir yazım hatası (AWS_REGIONS, REGION).

Nasıl düzeltilir (bunlardan herhangi biri)

  1. İstemcide ayarlayın (en açık):
    import {DynamoDBClient} from '@aws-sdk/client-dynamodb';
    const client = new DynamoDBClient({region: 'us-east-1'});
  2. Ortam değişkeni:
    export AWS_REGION=us-east-1
  3. AWS yapılandırma dosyası (~/.aws/config):
    [default]
    region = us-east-1
    JavaScript SDK v2'de, SDK'nın bu dosyayı gerçekten okuması için AWS_SDK_LOAD_CONFIG=1 de ayarlayın (CLI ve diğer çoğu SDK onu varsayılan olarak okur).
  4. DynamoDB Local mi? Yine de bir bölge dizesine (herhangi bir değer — yalnızca yerel veritabanı dosyasını adlandırmak için kullanılır) artı bir endpoint'e ihtiyaç duyar:
    const client = new DynamoDBClient({region: 'local', endpoint: 'http://localhost:8000'});

DynoTable’ı Local’e yönelt

DynoTable her AWS profile'de bölgeyi kaydeder — Ayarlar → Profiller → Profil Ekle, ardından kaydetmeden önce açılır menüden bölgeyi seçin. Kenar çubuğunun altındaki profil çipi aktif bölgeyi gösterir; geçiş yapmak için ⌘P tuşuna basın. Bölge boş olduğunda veya paylaşılan yapılandırma dosyası AWS_SDK_LOAD_CONFIG gerektiren bir SDK tarafından yoksayıldığında Bağlantı Testi hızlı bir şekilde başarısız olur.

Yerel için Yerel İndir seçeneğini kullanın (veya profil uç noktasını http://localhost:8000'ye yönlendirin) ve herhangi bir bölge dizesini ayarlayın — DynoTable, sürüklenmemeleri için uç noktayı ve bölgeyi aynı profilde tutar. Bağlandıktan sonra ⌘K ile bir tablo açın ve isteğin beklediğiniz bölgeye gittiğini onaylayın. query builder görseli, aynı ayarları uygulama koduna yapıştırmadan önce profil bölgesini kanıtlamak için kullanışlıdır.

SDK v2 ve v3 bölge çözünürlük farklarında hata ayıklarken, DynoTable'nin kullandığı profil ayarlarını uygulamanızın ortam değişkenleriyle yan yana karşılaştırın. Aşamalandırma (⌘S), toplu işiniz çalıştırılmadan önce bir yazmayı yapılandırılmış profile göre test etmenize olanak tanır.

Kaynaklar

İlgili hatalar

Kaynaklar

En son 2026-07-13 tarihinde yukarıda bağlantısı verilen resmi AWS belgelerine karşı doğrulandı.

Console olmadan DynamoDB ile çalış

DynamoDB’nin çalıştıramadığı gerçek SQL’i çalıştıran hızlı bir DynamoDB masaüstü istemcisi — JOINs, GROUP BY, toplamalar — görsel düzenleme ve kendi Bedrock anahtarların üzerinde bir yapay zekâ aracısıyla.

30 günlük ücretsiz deneme, kredi kartı yok — ardından süre sınırı olmayan Ücretsiz plan.