postgres: একজন ব্যবহারকারীকে সুপারভাইজার হতে আপগ্রেড করবেন?


643

পোস্টগ্রাজে, আমি কীভাবে কোনও বিদ্যমান ব্যবহারকারীর সুপারভাইজার হিসাবে পরিবর্তন করব? আমি বিদ্যমান ব্যবহারকারীর বিভিন্ন কারণে মুছে ফেলতে চাই না।

# alter user myuser ...?

উত্তর:


1261
ALTER USER myuser WITH SUPERUSER;

আপনি ডকুমেন্টেশন আরও পড়তে পারেন


157
বিপরীত অপারেশনটি হল ALTER USER myuser WITH NOSUPERUSER
d.raev

2
এবং মাইউজার বর্তমানে সুপারউজার হলে আমি কীভাবে সনাক্ত করতে পারি?
মাস্টারউইলি

20
SELECT rolname, rolsuper FROM pg_roles;@ মাস্টারওয়েলি
caulfield

6
আমি পেয়েছি: ত্রুটি:
সুপারভাইজারদের

15
@ মাস্টারওয়েলি আপনি \duসমস্ত ব্যবহারকারী / ভূমিকা তালিকা করতে পারেন ।
XåpplI'-I0llwlg'I -

63

উপরের উপর প্রসারিত এবং একটি দ্রুত রেফারেন্স করতে:

  • কোনও ব্যবহারকারীকে একটি সুপার ইউজার করতে: ALTER USER username WITH SUPERUSER;
  • কোনও ব্যবহারকারীকে আর সুপার ইউজার করার জন্য: ALTER USER username WITH NOSUPERUSER;
  • ব্যবহারকারীকে কেবল একটি ডাটাবেস তৈরি করার অনুমতি দেওয়ার জন্য: ALTER USER username CREATEDB;

এছাড়াও আপনি ব্যবহার করতে পারেন CREATEROLEএবং CREATEUSERতাদের একটি সুপার-ইউজার না করে একটি ব্যবহারকারী বিশেষাধিকার অনুমতি দেয়।

নথিপত্র


27

b su - postgres
$ psql
$ \du;ডিবিতে
থাকা ব্যবহারকারীকে আপনি যে সুপারভাইজার এবং: be হতে চান তা বেছে নিন
$ ALTER USER "user" with superuser;


এই নির্দিষ্ট ক্ষেত্রে, আপনাকে ALTER USER "user" WITH SUPERUSER;
কোমাসের

9

এই আদেশটি চালান

alter user myuser with superuser;

আপনি যদি কোনও ব্যবহারকারীর দ্বারা নিম্নলিখিত কমান্ডটি চালানোর অনুমতি দেখতে চান

\du

8

কখনও কখনও কোনও সুপারউজারে আপগ্রেড করা ভাল বিকল্প নাও হতে পারে। সুতরাং সুপার ব্যবহারকারী ছাড়াও অন্যান্য অনেক অপশন রয়েছে যা আপনি ব্যবহার করতে পারেন। আপনার টার্মিনালটি খুলুন এবং নিম্নলিখিতটি টাইপ করুন:

$ sudo su - postgres
[sudo] password for user: (type your password here)
$ psql
postgres@user:~$ psql
psql (10.5 (Ubuntu 10.5-1.pgdg18.04+1))
Type "help" for help.

postgres=# ALTER USER my_user WITH option

বিকল্পগুলির তালিকাও তালিকাভুক্ত করা হচ্ছে

SUPERUSER | NOSUPERUSER | CREATEDB | NOCREATEDB  | CREATEROLE | NOCREATEROLE |
CREATEUSER | NOCREATEUSER | INHERIT | NOINHERIT | LOGIN | NOLOGIN | REPLICATION|
NOREPLICATION | BYPASSRLS | NOBYPASSRLS | CONNECTION LIMIT connlimit | 
[ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password' | VALID UNTIL 'timestamp'

কমান্ড লাইনে এটি দেখতে হবে

postgres=# ALTER USER my_user WITH  LOGIN

অথবা একটি এনক্রিপ্ট করা পাসওয়ার্ড ব্যবহার করুন।

postgres=# ALTER USER my_user  WITH ENCRYPTED PASSWORD '5d41402abc4b2a76b9719d911017c592';

অথবা নির্দিষ্ট সময়ের পরে অনুমতিগুলি প্রত্যাহার করুন।

postgres=# ALTER USER my_user  WITH VALID UNTIL '2019-12-29 19:09:00';

4

আপনি একটি তৈরি SUPERUSERবা প্রচার করতে পারেন USER, তাই আপনার ক্ষেত্রে case

$ sudo -u postgres psql -c "ALTER USER myuser WITH SUPERUSER;"

বা রোলব্যাক

$ sudo -u postgres psql -c "ALTER USER myuser WITH NOSUPERUSER;"

আপনি পাসওয়ার্ড সেট করার সময় কোনও কমান্ড লগিং থেকে রোধ করতে, তার সামনে একটি শ্বেত স্থান inোকান, তবে আপনার সিস্টেমটি এই বিকল্পটিকে সমর্থন করে কিনা তা পরীক্ষা করুন।

$  sudo -u postgres psql -c "CREATE USER my_user WITH PASSWORD 'my_pass';"
$  sudo -u postgres psql -c "CREATE USER my_user WITH SUPERUSER PASSWORD 'my_pass';"

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.