Azure SQL 데이터베이스에서 서버 및 단일 데이터베이스 만들기 및 관리
Azure Portal, PowerShell, Azure CLI, REST API 및 Transact-SQL을 사용하여 서버 및 단일 데이터베이스를 만들고 관리할 수 있습니다.
참고 사항
Azure SQL 데이터베이스를 무료로 사용해 보고 매월 100,000 vCore초의 서버리스 컴퓨팅 및 32GB의 스토리지를 받으세요.
필수 조건
- 활성화된 Azure 구독. 아직 없는 경우 체험 계정을 만들 수 있습니다.
사용 권한
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: 기본 제공 역할을 참조하세요.
Azure Portal
Azure SQL 데이터베이스의 리소스 그룹을 미리 만들거나 서버 자체를 만드는 동안 만들 수 있습니다.
팁
Azure Portal 빠른 시작은 빠른 시작: 단일 데이터베이스 만들기를 참조하세요.
서버 만들기
Azure Portal을 사용해서 서버를 만들려면 Azure Marketplace에서 새 서버 리소스를 만듭니다. 또는 Azure SQL 데이터베이스를 배포할 때 서버를 만들 수 있습니다.
비어 있거나 샘플인 데이터베이스 만들기
Azure Portal을 사용하여 단일 Azure SQL 데이터베이스를 만들려면 Azure Marketplace에서 Azure SQL 데이터베이스 리소스를 선택합니다. 리소스 그룹 및 서버를 미리 만들거나 단일 데이터베이스 자체를 만드는 동안 만들 수 있습니다. 비어 있는 데이터베이스를 만들거나 Adventure Works LT에 따라 샘플 데이터베이스를 만들 수 있습니다.
중요
데이터베이스의 가격 책정 계층 선택에 대한 자세한 내용은 DTU 기반 구매 모델 및 vCore 기반 구매 모델을 참조하세요.
기존 서버 관리
기존 서버를 관리하려면 특정 데이터베이스 페이지, SQL 서버 페이지 또는 모든 리소스 페이지와 같은 여러 방법을 사용하여 서버로 이동합니다.
기존 데이터베이스를 관리하려면 SQL Database 페이지로 이동하고 관리하려는 데이터베이스를 선택합니다. 다음 스크린샷에서는 데이터베이스의 개요 페이지에서 데이터베이스의 서버 수준 방화벽을 설정하기 시작하는 방법을 보여줍니다.
중요
데이터베이스의 성능 속성을 구성하려면 DTU 기반 구매 모델 및 vCore 기반 구매 모델을 참조하세요.
PowerShell
참고 사항
이 문서에서는 Azure와 상호 작용하는 데 권장되는 PowerShell 모듈인 Azure Az PowerShell 모듈을 사용합니다. Az PowerShell 모듈을 시작하려면 Azure PowerShell 설치를 참조하세요. Az PowerShell 모듈로 마이그레이션하는 방법에 대한 자세한 내용은 Azure PowerShell을 AzureRM에서 Azure로 마이그레이션을 참조하세요.
중요
PowerShell Azure Resource Manager 모듈은 여전히 Azure SQL 데이터베이스에서 지원되지만 향후의 모든 개발은 Az.Sql 모듈을 위한 것입니다. 이러한 cmdlet은 AzureRM.Sql을 참조하세요. Az 모듈 및 AzureRm 모듈의 명령에 대한 인수는 실질적으로 동일합니다.
Azure PowerShell을 사용하여 서버, 단일 및 풀링된 데이터베이스, 서버 수준 방화벽을 만들고 관리하려면 다음 PowerShell cmdlet을 사용합니다. PowerShell을 설치하거나 업그레이드해야 하는 경우 Azure PowerShell 모듈 설치를 참조하세요.
팁
PowerShell 예제 스크립트는 PowerShell을 사용하여 단일 데이터베이스 만들기 및 서버 수준 방화벽 규칙 구성하기와 PowerShell을 사용하여 Azure SQL 데이터베이스에서 단일 데이터베이스 모니터링 및 크기 조정을 참조하세요.
cmdlet | 설명 |
---|---|
New-AzSqlDatabase | 데이터베이스 만들기 |
Get-AzSqlDatabase | 하나 이상의 데이터베이스 가져오기 |
Set-AzSqlDatabase | 데이터베이스의 속성 설정 또는 기존 데이터베이스를 탄력적 풀로 이동 |
Remove-AzSqlDatabase | 데이터베이스 제거 |
New-AzResourceGroup | 리소스 그룹 만들기 |
New-AzSqlServer | 서버 만들기 |
Get-AzSqlServer | 서버에 대한 정보 반환 |
Set-AzSqlServer | 서버의 속성 수정 |
Remove-AzSqlServer | 서버 제거 |
New-AzSqlServerFirewallRule | 서버 수준 방화벽 규칙 만들기 |
Get-AzSqlServerFirewallRule | 서버의 방화벽 규칙 가져오기 |
Set-AzSqlServerFirewallRule | 서버에서 방화벽 규칙 수정 |
Remove-AzSqlServerFirewallRule | 서버에서 방화벽 규칙 삭제 |
New-AzSqlServerVirtualNetworkRule | Virtual Network 서비스 엔드포인트인 서브넷을 기반으로 가상 네트워크 규칙을 만듭니다. |
Azure CLI
Azure CLI를 사용하여 서버, 데이터베이스 및 방화벽을 만들고 관리하려면 다음 Azure CLI 명령을 사용합니다. Cloud Shell을 사용하여 브라우저에서 Azure CLI를 실행하거나 macOS, Linux 또는 Windows에서 설치합니다. 탄력적 풀 만들기 및 관리에 대해서는 탄력적 풀을 참조하세요.
팁
Azure CLI 빠른 시작에 대한 자세한 내용은 Azure SQL 데이터베이스용 Azure CLI 샘플을 참조하세요. Azure CLI 예제 스크립트는 Azure CLI를 사용하여 단일 데이터베이스 만들기 및 방화벽 규칙 구성 및 Azure CLI를 사용하여 Azure SQL 데이터베이스에서 단일 데이터베이스 모니터링 및 크기 조정을 참조하세요.
cmdlet | 설명 |
---|---|
az sql db create | 데이터베이스 만들기 |
az sql db list | 서버의 모든 데이터베이스 및 데이터 웨어하우스 또는 탄력적 풀의 모든 데이터베이스 나열 |
az sql db list-editions | 사용 가능한 서비스 목표 및 스토리지 용량 제한 나열 |
az sql db list-usages | 데이터베이스 사용 정보 반환 |
az sql db show | 데이터베이스 또는 데이터 웨어하우스 가져오기 |
az sql db update | 데이터베이스 업데이트 |
az sql db delete | 데이터베이스 제거 |
az group create | 리소스 그룹 만들기 |
az sql server create | 서버 만들기 |
az sql server list | 서버 나열 |
az sql server list-usages | 서버 사용 반환 |
az sql server show | 서버 가져오기 |
az sql server update | 서버 업데이트 |
az sql server delete | 서버를 삭제합니다. |
az sql server firewall-rule create | 서버 방화벽 규칙 만들기 |
az sql server firewall-rule list | 서버의 방화벽 규칙 나열 |
az sql server firewall-rule show | 방화벽 규칙의 세부 정보 표시 |
az sql server firewall-rule update | 방화벽 규칙 업데이트 |
az sql server firewall-rule delete | 방화벽 규칙 삭제 |
T-SQL(Transact-SQL)
Transact-SQL을 사용하여 서버, 데이터베이스 및 방화벽을 만들고 관리하려면 다음 T-SQL 명령을 사용합니다. Azure Portal, SQL Server Management Studio, Visual Studio Code 또는 SQL Database 서버에 연결하여 Transact-SQL 명령을 전달할 수 있는 다른 프로그램을 사용하여 이러한 명령을 실행할 수 있습니다 . 탄력적 풀 관리에 대한 내용은 Azure SQL 데이터베이스에서 여러 데이터베이스를 관리하고 확장하는 데 도움이 되는 탄력적 풀을 참조하세요.
팁
Microsoft Windows에서 SQL Server Management Studio를 사용하여 빠른 시작을 하려면 빠른 시작: SSMS를 사용하여 Azure SQL 데이터베이스 또는 Azure SQL Managed Instance에 연결 및 쿼리하기를 참조하세요. macOS, Linux 또는 Windows에서 Visual Studio Code를 사용하여 빠르게 시작하려면 빠른 시작: Visual Studio Code를 사용하여 Azure SQL 데이터베이스 또는 Azure SQL Managed Instance에 연결 및 쿼리를 참조하세요.
중요
Transact-SQL을 사용하여 서버를 생성하거나 삭제할 수 없습니다.
명령 | 설명 |
---|---|
CREATE DATABASE | 새 단일 데이터베이스를 만듭니다. 새 데이터베이스를 만들려면 master 데이터베이스에 연결해야 합니다. |
ALTER DATABASE | 데이터베이스 또는 탄력적 풀을 수정합니다. |
DROP DATABASE | 데이터베이스를 삭제합니다. |
sys.database_service_objectives | Azure SQL 데이터베이스 또는 Azure Synapse Analytics의 전용 SQL 풀에 대한 버전(서비스 계층), 서비스 목표(가격 책정 계층), 탄력적 풀 이름이 있는 경우 이를 반환합니다. SQL Database 서버의 master 데이터베이스에 로그온하면 모든 데이터베이스에 대한 정보를 반환합니다. Azure Synapse Analytics의 경우 master 데이터베이스에 연결되어 있어야 합니다. |
sys.dm_db_resource_stats | Azure SQL 데이터베이스의 데이터베이스에 대한 CPU, IO 및 메모리 소비량을 반환합니다. 데이터베이스에서 활동이 없더라도 15초 간격으로 한 행이 있습니다. |
sys.resource_stats | Azure SQL 데이터베이스의 데이터베이스에 대한 CPU 사용량 및 스토리지 데이터를 반환합니다. 데이터는 5분 간격 이내로 수집 및 집계됩니다. |
sys.database_connection_stats | SQL Database 연결 이벤트에 대한 통계를 포함하며 데이터베이스 연결 성공 및 실패에 대한 개요를 제공합니다. |
sys.event_log | 성공적인 Azure SQL 데이터베이스 연결 및 연결 실패를 반환합니다. 이 정보를 사용하여 SQL Database의 데이터베이스 작업을 추적하거나 문제를 해결할 수 있습니다. |
sp_set_firewall_rule | 서버에 대한 서버 수준 방화벽 설정을 만들거나 업데이트합니다. 이 저장 프로시저는 master 데이터베이스에서 서버 수준 보안 주체 로그인에 대해서만 사용할 수 있습니다. Azure 수준 사용 권한 가진 사용자가 첫 번째 서버 수준 방화벽 규칙을 만든 후에만 Transact-SQL을 사용하여 서버 수준 방화벽 규칙을 다시 만들 수 있습니다. |
sys.firewall_rules | Azure SQL 데이터베이스의 데이터베이스와 연결된 서버 수준 방화벽 설정에 대한 정보를 반환합니다. |
sp_delete_firewall_rule | 서버에서 서버 수준 방화벽 설정을 제거합니다. 이 저장 프로시저는 master 데이터베이스에서 서버 수준 보안 주체 로그인에 대해서만 사용할 수 있습니다. |
sp_set_database_firewall_rule | Azure SQL 데이터베이스의 데이터베이스에 대한 데이터베이스 수준 방화벽 규칙을 만들거나 업데이트합니다. master 데이터베이스와 SQL Database의 사용자 데이터베이스에 대해 데이터베이스 방화벽 규칙을 구성할 수 있습니다. 데이터베이스 방화벽 규칙은 포함된 데이터베이스 사용자를 사용하는 경우에 유용합니다. |
sys.database_firewall_rules | Azure SQL 데이터베이스의 데이터베이스와 연결된 데이터베이스 수준 방화벽 설정에 대한 정보를 반환합니다. |
sp_delete_database_firewall_rule | 데이터베이스에서 데이터베이스 수준 방화벽 설정을 제거합니다. |
REST API
서버, 데이터베이스 및 방화벽을 만들고 관리하려면 다음 REST API 요청을 사용합니다.
명령 | 설명 |
---|---|
서버 - Create 또는 Update | 새 서버를 만들거나 업데이트합니다. |
Servers - Delete | SQL 서버를 삭제합니다. |
Servers - Get | 서버를 가져옵니다. |
Servers - List | 구독의 서버 목록을 반환합니다. |
서버 - List by resource group | 리소스 그룹의 서버 목록을 반환합니다. |
Servers - Update | 기존 서버를 업데이트합니다. |
데이터베이스 - Create 또는 Update | 새 데이터베이스를 만들거나 기존 데이터베이스를 업데이트합니다. |
Databases - Delete | 데이터베이스를 삭제합니다. |
데이터베이스 - Get | 데이터베이스를 가져옵니다. |
데이터베이스 - List by elastic pool | 탄력적 풀에서 데이터베이스의 목록을 반환합니다. |
데이터베이스 - List by server | 서버의 데이터베이스의 목록을 반환합니다. |
데이터베이스 - Update | 기존 데이터베이스를 업데이트합니다. |
방화벽 규칙 - Create 또는 Update | 방화벽 규칙을 만들거나 업데이트합니다. |
방화벽 규칙 - Delete | 방화벽 규칙을 삭제합니다. |
방화벽 규칙 - Get | 방화벽 규칙을 가져옵니다. |
방화벽 규칙 - List by server | 방화벽 규칙 목록을 반환합니다. |