summaryrefslogtreecommitdiffstats
path: root/doc/src/sgml/man7/REASSIGN_OWNED.7
blob: 6ef51cbcabd409ea119211d4bf4159c24ec4c1c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
'\" t
.\"     Title: REASSIGN OWNED
.\"    Author: The PostgreSQL Global Development Group
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\"      Date: 2023
.\"    Manual: PostgreSQL 15.5 Documentation
.\"    Source: PostgreSQL 15.5
.\"  Language: English
.\"
.TH "REASSIGN OWNED" "7" "2023" "PostgreSQL 15.5" "PostgreSQL 15.5 Documentation"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
REASSIGN_OWNED \- change the ownership of database objects owned by a database role
.SH "SYNOPSIS"
.sp
.nf
REASSIGN OWNED BY { \fIold_role\fR | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, \&.\&.\&.]
               TO { \fInew_role\fR | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
.fi
.SH "DESCRIPTION"
.PP
\fBREASSIGN OWNED\fR
instructs the system to change the ownership of database objects owned by any of the
\fIold_roles\fR
to
\fInew_role\fR\&.
.SH "PARAMETERS"
.PP
\fIold_role\fR
.RS 4
The name of a role\&. The ownership of all the objects within the current database, and of all shared objects (databases, tablespaces), owned by this role will be reassigned to
\fInew_role\fR\&.
.RE
.PP
\fInew_role\fR
.RS 4
The name of the role that will be made the new owner of the affected objects\&.
.RE
.SH "NOTES"
.PP
\fBREASSIGN OWNED\fR
is often used to prepare for the removal of one or more roles\&. Because
\fBREASSIGN OWNED\fR
does not affect objects within other databases, it is usually necessary to execute this command in each database that contains objects owned by a role that is to be removed\&.
.PP
\fBREASSIGN OWNED\fR
requires membership on both the source role(s) and the target role\&.
.PP
The
\fBDROP OWNED\fR
command is an alternative that simply drops all the database objects owned by one or more roles\&.
.PP
The
\fBREASSIGN OWNED\fR
command does not affect any privileges granted to the
\fIold_roles\fR
on objects that are not owned by them\&. Likewise, it does not affect default privileges created with
\fBALTER DEFAULT PRIVILEGES\fR\&. Use
\fBDROP OWNED\fR
to revoke such privileges\&.
.PP
See
Section\ \&22.4
for more discussion\&.
.SH "COMPATIBILITY"
.PP
The
\fBREASSIGN OWNED\fR
command is a
PostgreSQL
extension\&.
.SH "SEE ALSO"
DROP OWNED (\fBDROP_OWNED\fR(7)), DROP ROLE (\fBDROP_ROLE\fR(7)), ALTER DATABASE (\fBALTER_DATABASE\fR(7))