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
운영게시판
최근게시물
Informix Q&A 572 게시물 읽기
No. 572
Re: CGI에서 데이터베이스 접속법???
작성자
박영길
작성일
2001-03-06 23:29
조회수
5,824

안녕하세요.

 

CGI 작성시 주의해야 할 부분이 환경변수와 접속방법입니다.

일반적으로 사용자 계정에서 잘 실행되는 것이 웹서버를

통하여 실행시키면 오류가 발생하는 경우가 대부분의

환경변수나 접속방법을 주의하지 않아서 발생합니다.

 

환경변수는 apache의 경우 mod_env를 사용하거나

(직접해보지는 않아서 설명은...) CGI프로그램 내에서

putenv("INFORMIXDIR=/opt/infomrix");와 같이 직접 설정하는

것입니다.

 

그리고 접속의 경우 DATABSE문이나 CONNECT를 USER구문 없이

사용하는 경우 현재 프로그램 실행 사용자의 계정으로

데이터베이스에 접속하게 됩니다.

웹서버를 아파치를 사용한다면 사용자가 nobody또는

apache로 실행되기 때문에 해당 데이터베이스

 

grant connect to nobody;

grant connect to apache;

 

명령어로 권한을 부여해 주어야 합니다. 보안을 위하여 위의

사용자에게 권한을 주지않고 다른 계정을 사용할 경우는

 

grant connect to testuser;

CONNECT TO "test_db@test_server" USER "testuser" USING :passwd;

 

를 사용하여 원하는 사용자로 접속을 시도해야 합니다.

여기서 패스워드는 꼭 호스트 변수를 사용해야 합니다.

 

만약 웹상에서 테이블을 생성할 수 있어야 한다면

 

grant resource to testuser;

 

권한을 주시면 됩니다.

 

그럼 수고하세요.

 

>>초보 님께서 쓰시길<<

 

:: 답변 감사합니다..

:: 그런데 connection 권한은 어떠케 줘야 하져??

:: cgi는 C로 만들었구요... 웹에서 informix DB에 접속하려고 하는데여..

:: cgi는 /home/httpd/cgi-bin 에 있습니다.

::

::

:: >>딧세 님께서 쓰시길<<

::

:: :: 우선 에러의 원문을 보여드리면....

:: :: No connect permission.

:: ::

:: :: You cannot access the database that this statement requests because you have

:: :: not been granted CONNECT privilege to it. Contact a person who has Database

:: :: Administrator privilege to that database and ask to be granted CONNECT

:: :: privileges to it.

:: ::

:: :: connection하는 id가 아마도 database에 connection할수 있는 권한이 없는듯 하네요..

:: :: DBA권한을 갖고 있는 id로 connection권한을 주신후에 다시 한번 해 보시기 바랍니다.

:: ::

:: :: >>초보 님께서 쓰시길<<

:: ::

:: :: :: 안녕하세요..

:: :: :: 항상 이곳에서 많은 정보를 얻기만 하는 사용자입니다.

:: :: :: 아는게 별루 없어서 도움은 별로 못드리는거 같아서 죄송합니다..

:: :: ::

:: :: :: cgi 로 informix 에 접속하는 프로그램을 만드는데..

:: :: :: 에러가 납니다..

:: :: :: 에러코드는 -387 이구요..

:: :: :: 어딘가에서 보니깐. 퍼미션 에러라는데..

:: :: :: 아무리봐도 퍼미션은 제대로 된거 같은데여..

:: :: :: 도대체 머가 잘못된건지...

:: :: :: 고수님들의 빠른 답변 기다리겠습니다..

:: :: ::

:: :: :: 참고로, linux6.2, IDS7 을 사용합니다.

:: :: :: IDS는 일주일걸려서 제대로 설치를 했습니다.ㅜ.ㅜ

:: :: ::

[Top]
No.
제목
작성자
작성일
조회
568-217 에러가 무엇인가요???
초보
2001-03-05
5234
569┕>Re: -217 에러가 무엇인가요???
oninit
2001-03-06 09:33:40
6389
567DBMS가 죽었을 경우에 SQLCODE값은 어떻게 셋팅되는지요????
oninit
2001-03-05
5332
566stored procedure내부에 새로운 procedure를 만들수 있습니까?
김재남
2001-03-05
5528
563에러코드 -387이 머져???
초보
2001-03-03
5061
564┕>Re: 에러코드 -387이 머져???
딧세
2001-03-05 10:25:05
5586
565 ┕>Re: Re: 에러코드 -387이 머져???
초보
2001-03-05 11:58:34
5720
572  ┕>Re: CGI에서 데이터베이스 접속법???
박영길
2001-03-06 23:29:16
5824
559자세히 알려드리면(설치에 대해)
이철우
2001-03-03
5652
561┕>Re: 자세히 알려드리면(설치에 대해)
딧세
2001-03-03 16:24:25
6276
562 ┕>Re: Re: 자세히 알려드리면(설치에 대해)
박영길
2001-03-03 17:07:52
6497
556역시 2류 일 수 밖에 없는가? 인포믹스!
이철우
2001-03-02
5794
557┕>Re: 인포믹스!
딧세
2001-03-03 10:20:20
5871
558 ┕>Re: Re: 인포믹스!
이철우
2001-03-03 12:00:50
6055
560  ┕>Re: Re: Re: 인포믹스! [1]
딧세
2001-03-03 16:21:45
6773
555ASP에서 SP 리턴값 받기...
이태이
2001-03-02
5610
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다