Hızlı Başlangıç: Azure CLI’yi kullanarak PostgreSQL için Azure Veritabanı sunucusu oluşturma
ŞUNLAR IÇIN GEÇERLIDIR: PostgreSQL için Azure Veritabanı - Tek Sunucu
Önemli
PostgreSQL için Azure Veritabanı - Tek Sunucu kullanımdan kaldırma yolundadır. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya yükseltmenizi kesinlikle öneririz. PostgreSQL için Azure Veritabanı - Esnek Sunucu'ya geçiş hakkında daha fazla bilgi için bkz. PostgreSQL için Azure Veritabanı Tek Sunucuya ne oluyor?.
Bu hızlı başlangıçta, beş dakikada tek bir PostgreSQL için Azure Veritabanı sunucusu oluşturmak için Azure Cloud Shell'de Azure CLI komutlarının nasıl kullanılacağı gösterilmektedir.
İpucu
Daha basit az postgres up Azure CLI komutunu kullanmayı göz önünde bulundurun. Hızlı başlangıcı deneyin.
Azure aboneliğiniz yoksa başlamadan önce birücretsiz Azure hesabı oluşturun.
Önkoşullar
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'de Bash için hızlı başlangıç.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz . Docker kapsayıcısında Azure CLI'yi çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz . Azure CLI ile oturum açma.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz. Azure CLI ile uzantıları kullanma.
Yüklü sürümü ve bağımlı kitaplıkları bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Azure Cloud Shell'i başlatma
Azure Cloud Shell, bu makaledeki adımları çalıştırmak için kullanabileceğiniz ücretsiz bir etkileşimli kabuktur. Yaygın Azure araçları, kabuğa önceden yüklenmiştir ve kabuk, hesabınızla birlikte kullanılacak şekilde yapılandırılmıştır.
Cloud Shell'i açmak için kod bloğunun sağ üst köşesinden Deneyin'i seçmeniz yeterlidir. İsterseniz https://shell.azure.com adresine giderek Cloud Shell'i ayrı bir tarayıcı sekmesinde de başlatabilirsiniz.
Cloud Shell açıldığında ortamınız için Bash'in seçili olduğunu doğrulayın. Sonraki oturumlarda Bash ortamında Azure CLI kullanılır, kod bloklarını kopyalamak için Kopyala'yı seçin, Cloud Shell'e yapıştırın ve çalıştırmak için Enter tuşuna basın.
Azure'da oturum açma
Cloud Shell'de oturum açılan ilk hesapta otomatik olarak kimlik doğrulaması yapılır. Farklı bir abonelik kullanarak oturum açmak için aşağıdaki betiği kullanın ve yerine <Subscription ID>
Azure Abonelik Kimliğiniz yazın. Azure aboneliğiniz yoksa başlamadan önce birücretsiz Azure hesabı oluşturun.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Daha fazla bilgi için bkz . Etkin aboneliği ayarlama veya etkileşimli olarak oturum açma
Parametre değerlerini ayarlama
Aşağıdaki değerler, veritabanını ve gerekli kaynakları oluşturmak için sonraki komutlarda kullanılır. Sunucu adlarının tüm Azure'da genel olarak benzersiz olması gerekir, bu nedenle sunucu adını oluşturmak için $RANDOM işlevi kullanılır.
Ortamınız için uygun konumu değiştirin. değerini, kendi ortamınızla eşleşecek IP adresi aralığıyla değiştirin 0.0.0.0
. Sunucuya erişimi yalnızca IP adresinizle kısıtlamak için kullandığınız bilgisayarın genel IP adresini kullanın.
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server-and-firewall-rule"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit / allow access to the PostgreSQL server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
Kaynak grubu oluşturma
az group create komutuyla bir kaynak grubu oluşturun. Azure kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır. Aşağıdaki örnek eastus konumunda myResourceGroup adlı bir kaynak grubu oluşturur:
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
Sunucu oluşturma
az postgres server create komutuyla bir sunucu oluşturun .
# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku
Not
- Sunucu adı yalnızca küçük harf, sayı ve kısa çizgi (-) karakterini içerebilir. 3 ile 63 karakter uzunluğunda olmalıdır. Daha fazla bilgi için bkz. adlandırma kuralları PostgreSQL için Azure Veritabanı.
- Yönetici kullanıcının kullanıcı adı azure_superuser, yönetici, yönetici, kök, konuk veya genel olamaz.
- Parola şu üç kategoriden 8 ila 128 karakter içermelidir: İngilizce büyük harfler, İngilizce küçük harfler, sayılar ve alfasayısal olmayan karakterler.
- SKU'lar hakkında bilgi için bkz. fiyatlandırma PostgreSQL için Azure Veritabanı.
Önemli
- Sunucunuzdaki varsayılan PostgreSQL sürümü 9.6'dır. Desteklenen tüm sürümleri görmek için bkz . Desteklenen PostgreSQL ana sürümleri.
- SSL, sunucunuzda varsayılan olarak etkindir. SSL hakkında daha fazla bilgi için bkz . SSL bağlantısını yapılandırma.
Sunucu tabanlı güvenlik duvarı kuralı oluşturma
Yerel ortamınıza sunucuya bağlanmak için erişim vermek için az postgres server firewall-rule create komutuyla bir güvenlik duvarı kuralı oluşturun.
# Configure a firewall rule for the server
echo "Configuring a firewall rule for $server for the IP address range of $startIp to $endIp"
az postgres server firewall-rule create --resource-group $resourceGroup --server $server --name AllowIps --start-ip-address $startIp --end-ip-address $endIp
İpucu
IP adresinizi bilmiyorsanız, almak için WhatIsMyIPAddress.com gidin.
Not
Bağlantı sorunlarını önlemek için ağınızın güvenlik duvarının 5432 numaralı bağlantı noktasına izin verdiğinden emin olun. PostgreSQL için Azure Veritabanı sunucuları bu bağlantı noktasını kullanır.
Sunucu tabanlı güvenlik duvarı kurallarını listeleme
Mevcut sunucu güvenlik duvarı kurallarını listelemek için az postgres server firewall-rule list komutunu çalıştırın.
# List firewall rules for the server
echo "List of server-based firewall rules for $server"
az postgres server firewall-rule list --resource-group $resourceGroup --server-name $server
# You may use the switch `--output table` for a more readable table format as the output.
Çıktı, varsa güvenlik duvarı kurallarını varsayılan olarak JSON biçiminde listeler. Çıkış olarak daha okunabilir bir tablo biçimi için anahtarını --output table
kullanabilirsiniz.
Bağlantı bilgilerini alma
Sunucunuza bağlanmak için konak bilgilerini sağlayın ve kimlik bilgilerine erişin.
az postgres server show --resource-group $resourceGroup --name $server
administratorLogin ve fullyQualifiedDomainName değerlerini not edin.
psql kullanarak PostgreSQL için Azure Veritabanı sunucusuna bağlanma
Psql istemcisi, PostgreSQL sunucularına bağlanmak için popüler bir seçenektir. Azure Cloud Shell ile kullanarak psql
sunucunuza bağlanabilirsiniz. Varsa yerel ortamınızda da kullanabilirsiniz psql
. Postgres adlı boş bir veritabanı, yeni bir PostgreSQL sunucusuyla otomatik olarak oluşturulur. Aşağıdaki kodda gösterildiği gibi ile psql
bağlanmak için bu veritabanını kullanabilirsiniz.
psql --host=<server_name>.postgres.database.azure.com --port=5432 --username=<admin_user>@<server_name> --dbname=postgres
İpucu
Postgres'e bağlanmak için BIR URL yolu kullanmayı tercih ediyorsanız, URL ile kullanıcı adıyla %40
@ oturum açma kodunu kodlayın. Örneğin, psql için bağlantı dizesi şöyle olabilir:
psql postgresql://<admin_user>%40<server_name>@<server_name>.postgres.database.azure.com:5432/postgres
Kaynakları temizleme
Bu kaynaklara sürekli ihtiyaç duymadığınız sürece az group delete komutunu kullanarak kaynak grubunu ve onunla ilişkili tüm kaynakları kaldırmak için aşağıdaki komutu kullanın. Bu kaynaklardan bazılarının oluşturulması ve silinmesi biraz zaman alabilir.
az group delete --name $resourceGroup