Sistem Yönetimi

PostgreSQL Üzerinde Kullanıcı, Veritabanı Oluşturma ve Yetkilendirme

20 Haziran 2020

PostgreSQL Üzerinde Kullanıcı, Veritabanı Oluşturma ve Yetkilendirme

Devamlı unuttuğum ve kimi zaman karıştırdığım için PostgreSQL üzerinden kullanıcı ekleyip temel veritabanı işlemlerini yazacağım.

TL;DR

sudo -u postgres psql

CREATE DATABASE <db_name>;
CREATE USER <db_operator_name> WITH encrypted PASSWORD '<password>';
ALTER USER <db_operator_name> SET client_encoding TO 'utf8';
ALTER USER <db_operator_name> SET default_transaction_isolation TO 'read committed';
ALTER USER <db_operator_name> SET TimeZone TO 'Europe/Istanbul';
GRANT ALL PRIVILEGES ON DATABASE <db_name> TO <db_operator_name>;
REVOKE CONNECT ON DATABASE <db_name> FROM PUBLIC, <db_operator_name>;

İşlemlere başlamak için postgresql üzerinde consolu açmalıyız.

sudo -u postgres psql

Konsolu açtığımızda normal veritabanı işlemlerini yapabiliriz.

Veritabanı Oluşturma

CREATE DATABASE <db_name>;

Kullanıcı Oluşturma

CREATE USER <db_operator_name> WITH encrypted PASSWORD '<password>';

Karakter Kodlama, Timezone ve Default Isolation Tanımlama

ALTER USER <db_operator_name> SET client_encoding TO 'utf8';
ALTER USER <db_operator_name> SET default_transaction_isolation TO 'read committed';
ALTER USER <db_operator_name> SET TimeZone TO 'Europe/Istanbul';

Kullanıcıya Oluşturulan Veritabanı Üzerinde Yetkilendirme Yapmak

GRANT ALL PRIVILEGES ON DATABASE <db_name> TO <db_operator_name>;

PUBLIC Ayrıcalıklarından kurtulmak

REVOKE CONNECT ON DATABASE <db_name> FROM PUBLIC, <db_operator_name>;

Gerekirse Public Yetkilendirmeleri Düzeltme

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public to <db_operator_name>;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public to <db_operator_name>;
GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public to <db_operator_name>;
0 0 vote
Article Rating
Subscribe
Bildir
0 Yorum
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x