2016-09-16 3 views
0

우선 SQL을 사용한 유일한 경험은 서버가없는 엔진 인 SQLite입니다. 나는이 모든 클라이언트/서버 이야기에서 새로운 사람이다.휴대용 PosgreSQL 서버에 클라이언트를 연결하십시오

내 목표 요약 : 다른 컴퓨터에서 PosgreSQL 데이터베이스를 읽고 쓰는 것이 필요합니다. 그 컴퓨터 (Windows 7 또는 10이 설치된 모든 컴퓨터)는 동일한 네트워크를 공유하지만 소프트웨어를 설치할 수는 없습니다.

내 생각에 휴대용 PostgreSQL 서버를 다운로드하여 네트워크 공유 디렉토리 (예 : Y : \ PortableProject)에 저장하면 모든 컴퓨터가 실행 파일과 데이터베이스가 포함 된 데이터 폴더에 액세스 할 수 있습니다.

  1. 을 IP 192.170.1.200 호스트되는 오픈 pg_hba.conf 파일을 허용하고를 추가하려면 : IP가 (ipconfig 명령) 192.170.1.200 인 네트워크를 가정, 여기까지 할 수있는 내가 노력하는 단계입니다 EOF를 listen_addresses-*

    ,965,693,663,453,732를 서버에 액세스하는 모든 컴퓨터에 대한 사용 권한을 열고 postgresql.conf를 제공하고 업데이트하기 위해

    host all    all    192.170.1.200/32     trust 
    
  2. 에 라인을 다음과 10

  3. 한 컴퓨터에서 명령 프롬프트를 엽니 다 (예 : 컴퓨터 A) 및 다음 명령 프롬프트에서 서버를 시작 :

    "Y:\PortableProject\PostgreSQLPortable\App\PgSQL\bin\pg_ctl.exe" start -D "Y:\PortableProject\PostgreSQLPortable\Data\data" 
    
  4. 쓰기 및 모든 컴퓨터에서 읽기를 진행합니다. 예를 들어, 컴퓨터 B에, 그 프롬프트 명령을 열고 명령 (있는 랬) 데이터베이스 dbtest에서 테이블 tabtest에 대한 모든 정보를 읽어

    "Y:\PortableProject\PostgreSQLPortable\App\PgSQL\bin\pg_ctl.exe" stop -D "Y:\PortableProject\PostgreSQLPortable\Data\data" 
    
  5. :

    "Y:\PortableProject\PostgreSQLPortable\App\PgSQL\bin\psql.exe" -h 192.170.1.200 -p 5432 -U postgres -d dbtest -c "SELECT * FROM tabtest" 
    
  6. 컴퓨터 A의 연결을 닫습니다

문제는 내가 컴퓨터 A에서 실행하더라도 4 단계에서 발생, 나는 다음과 같은 오류를 얻을

psql: could not connect to server: Connection refused (0x0000274D/10061) 
     Is the server running on host "192.170.1.200" and accepting 
     TCP/IP connections on port 5432? 
,

완전히 잘못하고 있습니까? 내 목표에 도달 할 수 있습니까?

+0

는 그나마 알고있다. 귀하의 문제는 다른 PC에서 정기적으로 하나의 DB를 읽고 아주 잘하고 그 PC에 sw을 설치하지 않아도됩니다. 휴대용은 사무실 밖에서 DB를 가져갈 필요가있을 때 유용합니다. –

+0

미안하지만, 당신의 제안에 따라 진행하는 법을 정말로 모르겠습니다. 설치 및 휴대용 포스트그레스가없는 postgre 데이터베이스에서 어떻게 읽을 수 있습니까? 또한 네트워크의 모든 컴퓨터에서 삽입하고 업데이트해야합니다. –

+1

아마도 당신의 문제를 이해하지 못합니다. 하지만 아무것도 설치하지 않으려는 경우 웹 앱을 개발하십시오. –

답변

1

서버가 호스트 "192.170.1.200"에서 실행되고 포트 5432에서 TCP/IP 연결을 수락합니까?

즉, 서버가 192.170.1.200에서 실행 중임을 의미합니다. 서버 pc 또는 다른 PC에서 실행 중입니까?

pg_hba.conf은 다른 주소/사용자가 해당 서버에 액세스 할 수있는 것을 나열합니다.같은 PC에서 접속하는 경우

그래서 당신은 당신이 다음과 같은 IP 주소 범위와 PC에 액세스 할 수

host all    all    192.170.1.1/24   trust 

이 같은 것을 사용 외부 주소의

# TYPE DATABASE  USER   ADDRESS     METHOD 

# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 

를 사용합니다. 대신 휴대용 postgre 일반 하나를 사용하는 이유 IP Calculator

HostMin: 192.170.1.1 
HostMax: 192.170.1.254 
관련 문제