Transact-SQLCREATE DATABASE을 통해 데이터베이스를 만들려면 권한이 필요합니다. 데이터베이스를 만들려면 로그인은 서버 관리자 로그인(Azure SQL 데이터베이스 논리 서버가 프로비저닝될 때 생성됨), 서버의 Microsoft Entra 관리자, master에서 dbmanager 데이터베이스 역할의 구성원이어야 합니다. 자세한 내용은 CREATE DATABASE를 참조하세요.
Azure Portal, PowerShell, Azure CLI 또는 REST API를 통해 데이터베이스를 만들려면: Azure RBAC 권한, 특히 기여자, SQL DB 기여자 또는 SQL Server 기여자 Azure RBAC 역할이 필요합니다. 자세한 내용은 Azure RBAC: 기본 제공 역할을 참조하세요.
SQL 데이터베이스에서 리소스 유형을 단일 데이터베이스로 설정한 상태로 두고 만들기를 선택합니다.
SQL 데이터베이스 만들기 양식의 기본 탭에 있는 프로젝트 세부 정보 아래에서 원하는 Azure 구독을 선택합니다.
리소스 그룹의 경우 새로 만들기를 선택하고, myResourceGroup을 입력하고, 확인을 선택합니다.
데이터베이스 이름에 mySampleDatabase를 입력합니다.
서버에 대해 새로 만들기를 선택하고 새 서버 양식을 다음 값으로 입력합니다.
서버 이름: mysqlserver를 입력하고 고유하게 유지하기 위한 일부 문자를 추가합니다. 서버 이름은 구독 내에서 고유한 것이 아니라 Azure의 모든 서버에 대해 전역적으로 고유해야 하므로 사용할 정확한 서버 이름을 제공할 수 없습니다. 따라서 mysqlserver12345와 같은 항목을 입력하면 포털에서 사용 가능 여부를 알 수 있습니다.
위치: 드롭다운 목록에서 위치를 선택합니다.
인증 방법: SQL 인증 사용을 선택합니다.
서버 관리자 로그인: azureuser를 입력합니다.
암호: 요구 사항을 충족하는 암호를 입력하고, 암호 확인 필드에서 다시 입력합니다.
확인을 선택합니다.
SQL 탄력적 풀을 사용하나요? 를 아니요로 설정된 상태로 둡니다.
워크로드 환경의 경우 이 연습에 대한 개발을 지정합니다.
Azure Portal은 일부 구성 설정을 미리할 수 있는 워크로드 환경 옵션을 제공합니다. 이러한 설정은 재정의될 수 있습니다. 이 옵션은 SQL Database 만들기 포털 페이지에만 적용됩니다. 그렇지 않으면 워크로드 환경 옵션은 라이선스 또는 다른 데이터베이스 구성 설정에 영향을 주지 않습니다.
개발 워크로드 환경을 선택하면 다음을 비롯한 몇 가지 옵션이 설정됩니다.
백업 스토리지 중복 옵션은 로컬 중복 스토리지입니다. 로컬 중복 스토리지는 비용이 적게 들며, 영역 또는 지역에서 복제 스토리지의 중복이 필요하지 않은 사전 프로덕션 환경에 적합합니다.
컴퓨팅 + 스토리지 는 범용이며, 단일 vCore가 있는 서버리스입니다. 기본적으로 1시간 자동 일시 중지 지연이 있습니다.
프로덕션 워크로드 환경 집합을 선택합니다.
기본적으로 백업 스토리지 중복은 지역 중복 스토리지입니다.
컴퓨팅 + 스토리지 는 범용이며, 2개의 vCore 및 32GB의 스토리지로 프로비전됩니다. 이 작업은 다음 단계에서 추가로 수정할 수 있습니다.
컴퓨팅 + 스토리지에서 데이터베이스 구성을 선택합니다.
이 빠른 시작에서는 서버리스 데이터베이스를 사용하므로 서비스 계층을 범용(가장 예산 친화적인 서버리스 컴퓨팅)으로 설정하고 컴퓨팅 계층을 서버리스로 설정합니다. 적용을 선택합니다.
백업 스토리지 중복성에서 백업이 저장될 스토리지 계정에 대한 중복성 옵션을 선택합니다. 자세한 내용은 백업 스토리지 중복성 구성을 참조하세요.
완료되면 다음: 네트워킹을 선택합니다.
네트워킹 탭에서 연결 방법에 대해 퍼블릭 엔드포인트를 선택합니다.
방화벽 규칙의 경우 현재 클라이언트 IP 주소 추가를 예로 설정합니다. Azure 서비스 및 리소스가 이 서버에 액세스할 수 있도록 허용을 아니요로 설정된 상태로 둡니다.
연결 정책에서 기본연결 정책을 선택하고 최소 TLS 버전을 기본값인 TLS 1.2로 둡니다.
추가 설정 탭의 데이터 원본 섹션에서 기존 데이터 사용에 대해 샘플을 선택합니다. 이렇게 하면 AdventureWorksLT 샘플 데이터베이스가 만들어지므로 비어 있는 빈 데이터베이스와는 달리 쿼리 및 실험을 위한 몇 가지 테이블과 데이터가 있습니다. 데이터베이스 데이터 정렬 및 유지 관리 기간을 구성할 수도 있습니다.
페이지 아래쪽에서 검토 + 만들기를 선택합니다.
검토 + 만들기 페이지에서 검토 후 만들기를 선택합니다.
이 섹션에서 Azure CLI 코드 블록은 서버에 액세스하기 위한 리소스 그룹, 서버, 단일 데이터베이스 및 서버 수준 IP 방화벽 규칙을 만듭니다. 생성된 리소스 그룹과 서버 이름을 기록하여 나중에 이러한 리소스를 관리할 수 있도록 합니다.
데이터베이스 만들기 프로세스를 간소화하기 위해 az sql up 명령을 사용하여 단일 명령으로 데이터베이스 및 모든 관련 리소스를 만들 수도 있습니다. 여기에는 리소스 그룹, 서버 이름, 서버 위치, 데이터베이스 이름 및 로그인 정보가 포함됩니다. 데이터베이스는 범용, 프로비저닝, 표준 시리즈(Gen5), 2개 vCore의 기본 가격 책정 계층으로 만들어집니다.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치합니다. Windows 또는 macOS에서 실행 중인 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 로그인을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI에서 확장 사용을 참조하세요.
Azure Cloud Shell은 이 문서의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 공용 Azure 도구가 사전 설치되어 계정에서 사용하도록 구성되어 있습니다.
Cloud Shell을 열려면 코드 블록의 오른쪽 위 모서리에 있는 사용해 보세요를 선택합니다. 또한 https://shell.azure.com 로 이동하여 별도의 브라우저 탭에서 Cloud Shell을 시작할 수 있습니다.
Cloud Shell이 열리면 환경에 대해 Bash가 선택되어 있는지 확인합니다. 후속 세션에서는 Bash 환경에서 Azure CLI를 사용합니다. 복사를 선택하여 코드 블록을 복사하여 Cloud Shell에 붙여넣고, Enter 키를 눌러 실행합니다.
Azure에 로그인
Cloud Shell은 로그인한 초기 계정에서 자동으로 인증됩니다. 다음 스크립트를 통해 다른 구독을 사용하여 로그인하고 <Subscription ID>를 Azure 구독 ID로 바꿉니다. Azure를 구독하고 있지 않다면 시작하기 전에 Azure 체험 계정을 만드세요.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
다음 값은 데이터베이스와 필요한 리소스를 만드는 후속 명령에 사용됩니다. 서버 이름은 모든 Azure에서 전역적으로 고유해야 하므로 $RANDOM 함수를 사용하여 서버 이름을 만듭니다.
환경에 맞게 위치를 변경합니다. 0.0.0.0을 특정 환경과 일치하는 IP 주소 범위로 바꿉니다. 사용 중인 컴퓨터의 공용 IP 주소를 사용하여 서버에 대한 액세스를 사용자의 IP 주소로만 제한합니다.
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-azuresql-rg-$randomIdentifier"
tag="create-and-configure-database"
server="msdocs-azuresql-server-$randomIdentifier"
database="msdocsazuresqldb$randomIdentifier"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit access to the SQL Database server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
리소스 그룹 만들기
az group create 명령을 사용하여 리소스 그룹을 만듭니다. Azure 리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다. 다음 예제에서는 eastus Azure 지역에 myResourceGroup이라는 리소스 그룹을 만듭니다.
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
Azure Cloud Shell은 이 문서의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 공용 Azure 도구가 사전 설치되어 계정에서 사용하도록 구성되어 있습니다.
Cloud Shell을 열려면 코드 블록의 오른쪽 위 모서리에 있는 사용해 보세요를 선택합니다. 또한 https://shell.azure.com 로 이동하여 별도의 브라우저 탭에서 Cloud Shell을 시작할 수 있습니다.
Cloud Shell이 열리면 환경에 대해 PowerShell이 선택되어 있는지 확인합니다. 후속 세션은 PowerShell 환경에서 Azure CLI를 사용합니다. 복사를 선택하여 코드 블록을 복사하여 Cloud Shell에 붙여넣고, Enter 키를 눌러 실행합니다.
매개 변수 값 설정
다음 값은 데이터베이스와 필요한 리소스를 만드는 후속 명령에 사용됩니다. 서버 이름은 모든 Azure에서 전역적으로 고유해야 하므로 Get-Random cmdlet을 사용하여 서버 이름을 만듭니다.
다음 코드 조각에서 다음을 수행합니다.
0.0.0.0을 특정 환경과 일치하도록 IP 주소 범위로 바꿉니다.
<strong password here>를 해당 adminLogin에 대한 강력한 암호로 바꿉니다.
# Set variables for your server and database
$resourceGroupName = "myResourceGroup"
$location = "eastus"
$adminLogin = "azureuser"
$password = "<strong password here>"
$serverName = "mysqlserver-$(Get-Random)"
$databaseName = "mySampleDatabase"
# The ip address range that you want to allow to access your server
$startIp = "0.0.0.0"
$endIp = "0.0.0.0"
# Show randomized variables
Write-host "Resource group name is" $resourceGroupName
Write-host "Server name is" $serverName
리소스 그룹 만들기
New-AzResourceGroup을 사용하여 Azure 리소스 그룹을 만듭니다. 리소스 그룹은 Azure 리소스가 배포 및 관리되는 논리적 컨테이너입니다.
SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName
FROM SalesLT.ProductCategory pc
JOIN SalesLT.Product p
ON pc.productcategoryid = p.productcategoryid;
실행을 선택한 다음, 결과 창에서 쿼리 결과를 검토합니다.
쿼리 편집기 창을 닫고, 저장하지 않은 편집 내용을 삭제하라는 메시지가 표시될 때 확인을 선택합니다.
리소스 정리
리소스 그룹, 서버 및 단일 데이터베이스를 유지하여 다음 단계로 이동하고, 다양한 방법으로 데이터베이스에 연결하고 쿼리하는 방법을 알아봅니다.
이러한 리소스의 사용을 마친 후에는 만든 리소스 그룹을 삭제할 수 있습니다. 그러면 해당 리소스 그룹 내에서 서버 및 단일 데이터베이스도 삭제됩니다.