programing

PostgreSql 데이터베이스의 소유자를 변경하는 방법은 무엇입니까?

goodsources 2023. 5. 26. 20:54
반응형

PostgreSql 데이터베이스의 소유자를 변경하는 방법은 무엇입니까?

PostgreSql 데이터베이스의 소유자를 변경해야 합니다.

phppgadmin에서 PostgreSql 데이터베이스의 소유자를 변경하는 방법은 무엇입니까?

ALTER DATABASE name OWNER TO new_owner;

자세한 내용은 Postgresql 매뉴얼의 항목을 참조하십시오.

Frank Heikens 답변은 데이터베이스 소유권만 업데이트합니다.포함된 개체(테이블 포함)의 소유권도 업데이트하려는 경우가 많습니다.Postgres 8.2부터는 이 태스크를 단순화하기 위해 소유자 재할당을 사용할 수 있습니다.

중요한 편집!

사용 안 함REASSIGN OWNED원래의 역할이 …일 때postgres전체 DB 인스턴스가 손상될 수 있습니다.이 명령은 시스템 리소스(postgres0, postgres1 등)를 포함하여 새 소유자가 있는 모든 개체를 업데이트합니다.


먼저 관리 데이터베이스에 연결하고 DB 소유권을 업데이트합니다.

psql
postgres=# REASSIGN OWNED BY old_name TO new_name;

이것은 전 세계적으로 동등한 것입니다.ALTER DATABASE프랭크의 답변에 제공된 명령이지만 특정 DB를 업데이트하는 대신 'old_name'이 소유한 모든 DB의 소유권을 변경합니다.

다음 단계에서는 각 데이터베이스에 대한 테이블 소유권을 업데이트합니다.

psql old_name_db
old_name_db=# REASSIGN OWNED BY old_name TO new_name;

이 작업은 'old_name'이(가) 소유한 각 DB에서 수행해야 합니다.이 명령은 DB에 있는 모든 테이블의 소유권을 업데이트합니다.

프랭크가 제안한 답변에 대한 약간의 변경.쿼리가 올바르면 소유권을 변경하지 않고 쿼리를 실행할 수 있습니다.

이전 사용자로 로그인하여 터미널에서 psql을 실행하고 데이터베이스를 지정하지 않을 때 발생합니다.

대신 이전 사용자와 로그한 후..psql로 dbname 입력

터미널 프롬프트가 변경됩니다.명령을 실행하면 "ALTER DATABASE"라는 출력이 표시됩니다.소유권은 '\list' 명령을 사용하여 확인할 수 있습니다.

$ psql <<dbname>>
dbname=# ALTER DATABASE name OWNER TO new_owner;

ALTER DATABASE

언급URL : https://stackoverflow.com/questions/4313323/how-to-change-owner-of-postgresql-database

반응형