-- PostgreSQL 슈퍼유저(예: postgres)로 **한 번만** 실행하는 예시입니다. -- 값을 바꾼 뒤: psql -U postgres -f bootstrap-role.sql (또는 psql 안에서 붙여넣기) -- -- 앱은 .env의 DB_USERNAME / DB_PASSWORD / DB_DATABASE 로 접속합니다. -- 역할이 이미 있으면 CREATE ROLE 부분은 생략하고 비밀번호만 맞춥니다: \password 역할이름 -- 1) 앱 전용 로그인 역할 (이름은 .env의 DB_USERNAME과 동일하게) CREATE ROLE app_user WITH LOGIN PASSWORD '여기에_강한_비밀번호'; -- 2) 데이터베이스 (.env의 DB_DATABASE와 동일) CREATE DATABASE app_database OWNER app_user; -- 이미 DB가 있고 소유자만 바꾸려면(주의: 운영 정책에 맞게 사용): -- ALTER DATABASE app_database OWNER TO app_user; -- 3) 같은 서버에서 DB를 만든 직후, public 스키마 권한(버전에 따라 필요) \c app_database GRANT ALL ON SCHEMA public TO app_user; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL ON TABLES TO app_user;