21.1. 데이터베이스 토토 베이#

데이터베이스 역할은 개념적으로 운영 체제 사용자와 완전히 분리되어 있습니다. 실제로는 서신을 유지하는 것이 편리할 수 있지만 필수는 아닙니다. 데이터베이스 역할은 데이터베이스 클러스터 설치 전반에 걸쳐 전역적입니다(개별 데이터베이스별로 적용되지 않음). 역할을 생성하려면 다음을 사용하세요.토토 베이 생성SQL 명령:

토토 베이 생성이름;

이름SQL 식별자에 대한 규칙을 따릅니다: 특수 문자 없이 장식되지 않거나 큰따옴표로 묶입니다. (실제로는 일반적으로 다음과 같은 추가 옵션을 추가하고 싶을 것입니다.로그인, 명령에. 자세한 내용은 아래에 나와 있습니다.) 기존 토토 베이을 제거하려면 유사한토토 베이 삭제명령:

토토 베이 삭제이름;

편의를 위해 프로그램사용자 생성그리고드롭유저셸 명령줄에서 호출할 수 있는 다음 SQL 명령 주위에 래퍼로 제공됩니다.

사용자 생성이름드롭유저이름

기존 역할 세트를 결정하려면 다음을 조사하십시오.pg_roles시스템 카탈로그, 예:

pg_roles에서 롤 이름 선택;

또는 로그인할 수 있는 사용자만 보려면:

rolcanlogin이 있는 pg_roles에서 rolname을 선택하세요.

psql프로그램\dumeta-command는 기존 토토 베이을 나열하는 데도 유용합니다.

데이터베이스 시스템을 부트스트랩하기 위해 새로 초기화된 시스템에는 항상 사전 정의된 로그인 가능 역할이 하나 포함되어 있습니다. 이 역할은 항상수퍼유저이며 데이터베이스 클러스터를 초기화한 운영 체제 사용자와 동일한 이름을 갖게 됩니다.initdb다른 이름이 지정되지 않는 한. 이 역할은 종종 이름이 지정됩니다.포스트그레스. 더 많은 토토 베이을 생성하려면 먼저 이 초기 토토 베이로 연결해야 합니다.

데이터베이스 서버에 대한 모든 연결은 특정 역할의 이름을 사용하여 이루어지며 이 역할은 해당 연결에서 실행된 명령에 대한 초기 액세스 권한을 결정합니다. 특정 데이터베이스 연결에 사용할 역할 이름은 애플리케이션별 방식으로 연결 요청을 시작하는 클라이언트에 의해 표시됩니다. 예를 들어,psql프로그램은 다음을 사용합니다-U연결할 역할을 나타내는 명령줄 옵션입니다. 많은 애플리케이션은 기본적으로 현재 운영 체제 사용자의 이름을 가정합니다(사용자 생성그리고psql). 따라서 토토 베이과 운영 체제 사용자 간의 명명 대응을 유지하는 것이 편리한 경우가 많습니다.

주어진 클라이언트 연결이 연결할 수 있는 데이터베이스 토토 베이 세트는 클라이언트 인증 설정에 따라 결정됩니다.토토 베이 : 문서 : 17 : CHAPTER 20. 클라이언트 인증. (따라서 개인의 로그인 이름이 실제 이름과 일치할 필요가 없는 것처럼 클라이언트는 운영 체제 사용자와 일치하는 역할로 연결하도록 제한되지 않습니다.) 역할 ID는 연결된 클라이언트에 사용 가능한 권한 집합을 결정하므로 다중 사용자 환경을 설정할 때 권한을 신중하게 구성하는 것이 중요합니다.

수정사항 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.