
2、创建imsdb这个数据库: create database imsdb [owner rcb]
3、赋予rcb用户所有权限: grant all privileges on database imsdb to rcb
4、如果创建时未设置owner,可以更改: alter database imsdb owner to rcb
更改拥有者:usage()
{
cat <<EOF
usage: $0 options
This script set ownership for all table, sequence and views for a given database
Credit: Based on http://stackoverflow.com/a/2686185/305019 by Alex Soto
Also merged changes from @sharoonthomas
OPTIONS:
-h Show this message
-d Database name
-o Owner
EOF
}
DB_NAME=
NEW_OWNER=
PGSQL_USER=postgres
while getopts "hd:o:" OPTION
do
case $OPTION in
h)
usage
exit 1
d)
DB_NAME=$OPTARG
o)
NEW_OWNER=$OPTARG
esac
done
if [[ -z $DB_NAME ]] || [[ -z $NEW_OWNER ]]
then
usage
exit 1
fi
for tbl in `psql -U $PGSQL_USER -qAt -c "select tablename from pg_tables where schemaname = 'public'" ${DB_NAME}` \
`psql -U $PGSQL_USER -qAt -c "select sequence_name from information_schema.sequences where sequence_schema = 'public'" ${DB_NAME}` \
`psql -U $PGSQL_USER -qAt -c "select table_name from information_schema.views where table_schema = 'public'" ${DB_NAME}`
do
psql -U $PGSQL_USER -c "alter table \"$tbl\" owner to ${NEW_OWNER}" ${DB_NAME}
done
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)