다음을 통해 공유


SQL Server PowerShell 경로 탐색

데이터베이스 엔진 PowerShell 공급자는 파일 경로와 유사한 구조로 SQL Server 인스턴스의 개체 집합을 노출합니다. Windows PowerShell cmdlet을 사용하여 공급자 경로를 탐색하고 사용자 지정 드라이브를 만들어 입력해야 하는 경로를 단축할 수 있습니다.

시작하기 전에

Windows PowerShell은 cmdlet을 구현하여 PowerShell 공급자가 지원하는 개체의 계층 구조를 나타내는 경로 구조를 탐색합니다. 경로의 노드로 이동한 경우 다른 cmdlet을 사용하여 현재 개체에 대한 기본 작업을 수행할 수 있습니다. cmdlet은 자주 사용되기 때문에 짧고 정식 별칭이 있습니다. cmdlet을 유사한 명령 프롬프트 명령에 매핑하는 별칭 집합과 UNIX 셸 명령에 대한 다른 집합도 있습니다.

SQL Server 공급자는 다음 표와 같이 공급자 cmdlet의 하위 집합을 구현합니다.

Cmdlet 정식 별칭 cmd 별칭 UNIX 셸 별칭 설명
Get-Location gl pwd pwd 현재 노드를 가져옵니다.
Set-Location sl cd, chdir cd, chdir 현재 노드를 변경합니다.
Get-ChildItem gci dir ls 현재 노드에 저장된 개체를 나열합니다.
아이템 가져오기 gi 현재 항목의 속성을 반환합니다.
이름 바꾸기 항목 rni rn ren 개체의 이름을 바꿉니다.
제거 항목 ri del, rd rm, rmdir 개체를 제거합니다.

중요합니다

일부 SQL Server 식별자(개체 이름)에는 Windows PowerShell이 경로 이름에서 지원하지 않는 문자가 포함되어 있습니다. 이러한 문자를 포함하는 이름을 사용하는 방법에 대한 자세한 내용은 PowerShell의 SQL Server 식별자를 참조하세요.

Get-ChildItem에 의해 반환된 SQL Server 정보

Get-ChildItem(또는 해당 dirls 별칭)에서 반환되는 정보는 SQLSERVER: 경로의 위치에 따라 달라집니다.

경로 위치 결과 Get-ChildItem
SQLSERVER:\SQL 로컬 컴퓨터의 이름을 반환합니다. SMO 또는 WMI를 사용하여 다른 컴퓨터의 데이터베이스 엔진 인스턴스에 연결한 경우 해당 컴퓨터도 나열됩니다.
SQLSERVER:\SQL\ComputerName 컴퓨터의 데이터베이스 엔진 인스턴스 목록입니다.
SQLSERVER:\SQL\ComputerName\InstanceName 엔드포인트, 인증서 및 데이터베이스와 같은 인스턴스의 최상위 개체 형식 목록입니다.
데이터베이스와 같은 개체 클래스 노드 master, model, AdventureWorks20008R2와 같은 데이터베이스 목록을 포함하는 해당 형식의 개체 목록입니다.
개체 이름 노드(예: AdventureWorks2012) 개체 내에 포함된 개체 형식 목록입니다. 예를 들어 데이터베이스는 테이블 및 뷰와 같은 개체 형식을 나열합니다.

기본적으로 Get-ChildItem 은 시스템 개체를 나열하지 않습니다. Force 매개 변수를 사용하여 sys 스키마의 개체와 같은 시스템 개체를 볼 수 있습니다.

사용자 지정 드라이브

Windows PowerShell을 사용하면 사용자가 PowerShell 드라이브라고 하는 가상 드라이브를 정의할 수 있습니다. 이러한 맵은 경로 문의 시작 노드에 매핑됩니다. 일반적으로 자주 입력되는 경로를 줄이는 데 사용됩니다. SQLSERVER: 경로가 길어질 수 있으므로 Windows PowerShell 창에서 공간을 확보하고 많은 입력이 요구됩니다. 특정 경로 노드에서 많은 작업을 수행하려는 경우 해당 노드에 매핑되는 사용자 지정 Windows PowerShell 드라이브를 정의할 수 있습니다.

PowerShell Cmdlet 별칭 사용

cmdlet의 별칭 사용

  • 전체 cmdlet 이름을 입력하는 대신 더 짧은 별칭을 입력하거나 친숙한 추천 프롬프트 명령에 매핑되는 별칭을 입력합니다.

별칭 예제(PowerShell)

예를 들어 다음 cmdlet 또는 별칭 집합 중 하나를 사용하여 SQLSERVER:\SQL 폴더로 이동하고 폴더에 대한 자식 항목 목록을 요청하여 사용 가능한 SQL Server 인스턴스 목록을 검색할 수 있습니다.

## Shows using the full cmdet name.  
Set-Location SQLSERVER:\SQL  
Get-ChildItem  
  
## Shows using canonical aliases.  
sl SQLSERVER:\SQL  
gci  
  
## Shows using command prompt aliases.  
cd SQLSERVER:\SQL  
dir  
  
## Shows using Unix shell aliases.  
cd SQLSERVER:\SQL  
ls  

Get-ChildItem 사용

Get-Childitem 사용하여 정보 반환

  1. childrem 목록을 원하는 노드로 이동합니다.

  2. Get-Childitem 실행하여 목록을 가져옵니다.

Get-ChildItem 예제(PowerShell)

다음 예제에서는 SQL Server 공급자 경로의 여러 노드에 대해 Get-Childitem 반환된 정보를 보여 줍니다.

## Return the current computer and any computer  
## to which you have made a SQL or WMI connection.  
Set-Location SQLSERVER:\SQL  
Get-ChildItem  
  
## List the instances of the Database Engine on the local computer.  
Set-Location SQLSERVER:\SQL\localhost  
Get-ChildItem  
  
## Lists the categories of objects available in the  
## default instance on the local computer.  
Set-Location SQLSERVER:\SQL\localhost\DEFAULT  
Get-ChildItem  
  
## Lists the databases from the local default instance.  
## The force parameter is used to include the system databases.  
Set-Location SQLSERVER:\SQL\localhost\DEFAULT\Databases  
Get-ChildItem -force  

사용자 지정 드라이브 만들기

사용자 지정 드라이브 만들기 및 사용

  1. 사용자 지정 드라이브를 정의하는 데 사용합니다 New-PSDrive . 매개 변수를 Root 사용하여 사용자 지정 드라이브 이름으로 표시되는 경로를 지정합니다.

  2. 와 같은 Set-Location경로 탐색 cmdlet에서 사용자 지정 드라이브 이름을 참조합니다.

사용자 지정 드라이브 예제(PowerShell)

이 예제에서는 AdventureWorks2012 샘플 데이터베이스의 배포된 복사본에 대한 노드에 매핑되는 AWDB라는 가상 드라이브를 만듭니다. 그런 다음, 가상 드라이브를 사용하여 데이터베이스의 테이블로 이동합니다.

## Create a new virtual drive.  
New-PSDrive -Name AWDB -Root SQLSERVER:\SQL\localhost\DEFAULT\Databases\AdventureWorks2012  
  
## Use AWDB: to navigate to a specific table.  
Set-Location AWDB:\Tables\Purchasing.Vendor  

또한 참조하십시오

SQL Server PowerShell 공급자
SQL Server PowerShell 경로 작업
URL을 SQL Server 공급자 경로로 변환
SQL Server PowerShell