database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 6971 게시물 읽기
No. 6971
postgresql 의 pg_dump에 대한.. 질문입니다..
작성자
이현철
작성일
2006-12-11 20:12ⓒ
2006-12-11 20:14ⓜ
조회수
5,950

안녕하십니까..

현제 pgsql 7.1.14를 사용하고 있습니다..

요즘 백업을 뜨다가..  혹시나 해서..시험해보니.. 권한이 틀린.. 유저가..백업이 가능해서 말이죠...


요지는요...


$ psql -l

            List of databases

    Name     |     Owner      | Encoding

-------------+----------------+----------

 template0   | postgres       | EUC_KR

 template1   | postgres       | EUC_KR

 web_db     | webuser      | EUC_KR

 web_testdb | webuser_dev | EUC_KR

(4 rows)


위와 같은 데이타 베이스가 존재하는데요..


$ id

uid=503(webuser_dev)



아래와 같이 pg_dump를 하면 정상적으로 덤프가 됩니다. 

$ pg_dump  web_testdb > db.sql


질문1.

그런데<패스워드를 물어보지 않네요..틀림없이 os유저랑 , db유저의 패스워드가 틀린데도, db유저랑/OS유저랑 같아서 그런가요? db랑 os상의유저는 별개라고 알고있는데요>

..



다시 위의 유저로 pg_dump를 이용해서 자신의 db가 아닌것을 백업을 뜨면 아래와 같은

정상적인 에러가 발생합니다.  ---정상이라고 생각듭니다..제생각으로는

$ pg_dump  web_db > db.sql

ERROR:  permission denied for relation m_post

pg_dump: attempt to lock table "m_post" failed: ERROR:  permission denied for relation m_post



질문2. 

그런데 아래와 같은 pg_dump 옵션 U 사용하면 권한이 없는 db인데 백업을 해버리는데요.

$ pg_dump  -U webuser web_db > db.sql


혹 webuser 유저의 db인증 패스워들 물오보면 좀 이해가 되는데..그것도 아니고 그냥 백업을 떠 버리네요..




마지막으로  pg_dump 옵션 u 형태로 소문자로 이용해서  실행하면,  유저명을 webuser해서 Password를 아무것이나 넣어도

덤프가 정상적으로 백업해버리는데요... 

$ pg_dump  -u  webc_db > db.sql

User name: webuser

Password:  1234 (아무숫자나 넣어도,백업이 됨)




pgsql유저를 만들때 권한 설정이 잘못되었는지.. 왜 이런지 ..모르겠는데..

혹시 힌트라도 주시겠습니까.....   

postgres는 db유저 생성시, os시스템 유저를 생성해야 하는가요..?

아래 유저경우에는 os상에는 유저가 존재하지만, pgsql상에는 유저가 없습니다.

$id

uid=510(web-mgr)

$ psql -l

FATAL:  user "web-mgr" does not exist

psql: FATAL:  user "web-mgr" does not exist




mysql이랑..조금 틀리네요...  





이 글에 대한 댓글이 총 2건 있습니다.

pg_hba.conf 파일에 내용을 특별히 수정하지 않았다면, 

디폴트가 localhost 안에서는 사용자 인증 체크가 trust 입니다. 

즉 어떠한 인증도 하지 않겠다는 것이 초기값입니다. 


아마 초기값 그대로 쓰기 때문에 빚어지는 사태같습니다. 


필요하다면, localhost 일지라도 md5 비밀번호 인증으로 바꾸어서 쓰든지 하세요.

김상기(ioseph)님이 2006-12-11 20:46에 작성한 댓글입니다.

답변 감사합니다..
좀더  열심히..공부를 해야할것 같네요...

이현철님이 2006-12-12 09:10에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
6977동작시에 이런 메세지가 나옵니다. [FATAL : unsupported frontend protocol] [3]
박성호
2006-12-14
4071
6974postgreSQL 프로세스가 너무 많습니다. [2]
김성운
2006-12-13
4527
6972특수문자(?,*,(,))를 문자로 인식 [2]
황보정
2006-12-13
6032
6971postgresql 의 pg_dump에 대한.. 질문입니다.. [2]
이현철
2006-12-11
5950
6949Ms-SQL과의 쿼리 속도차. [18]
이기자
2006-12-11
8347
6948create function에 궁금한게잇습니다. [2]
보두남
2006-12-10
4544
6947버전업그레이드 문제...
초보
2006-12-09
3885
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.024초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다