2017-09-25 1 views
0
내가 IP와 PC에 XAMPP와 호스트 데이터베이스가

를 통해 XAMPP - 데이터베이스에 대한 원격 연결 : 10.35.250.195C 번호 - LAN

나는 동일한 LAN에 노트북에서이 데이터베이스에 액세스 할 내 C# - 응용 프로그램이 실행 중입니다. 이 내 연결 문자열입니다

"SERVER=10.35.250.195;DATABASE=testdb;USERID=root;PASSWORD=;" 

하지만 원격 PC/노트북에서 연결을 열 수 없습니다되고 있어요.

데이터베이스가 호스팅 된 PC에서 위의 connection-string을 사용하여 데이터베이스에 액세스 할 수 있습니다. "10.35.250.195/phpmyadmin"을 사용하여 원격 랩톱에서 브라우저의 phpmyadmin에 액세스 할 수도 있습니다. 따라서 랩톱에서 데이터베이스를 사용하여 PC에 연결되지만 C#에서는이 원격 연결을 열 수 없습니다.

phpmyadmin 내에서 사용자 "root"가 모든 권한을 가진 호스트 10.35.250.195에 액세스 할 수있게 허용했으며 모든 사용자가 모든 권한을 가진 호스트 10.35.250.195에 액세스 할 수 있도록 허용했습니다. 보안 이유 ...).

Lan을 통해 원격 PC에서 mysql을 사용하여 C# 데이터베이스에 어떻게 액세스 할 수 있습니까? 누군가 제가 잘못을 찾도록 도와 줄 수 있습니까?

+0

는 MySQL의 매뉴얼 섹션 5.4를 참조 https://www.heidisql.com/

Flocke처럼 테스트하기 위해 PC 기반 도구를 시도 할 수 :

는 MySQL의 포트가 있습니다. Windows 자격 증명을 사용하면 추가 암호없이 원격 연결을 허용해야합니다 (https://downloads.mysql.com/docs/connector-net-en.pdf). https://www.connectionstrings.com/mysql/을 참조하십시오. 샘플 연결 문자열 : Server = myServerAddress; Database = myDataBase; IntegratedSecurity = yes; Uid = auth_windows; – jdweng

+0

문제는 Windows에서 C#으로 연결을 여는 방법이 아니라는 것입니다. 위에서 언급 한 연결 문자열을 사용하여 host-pc에서 연결을 열 수 있습니다. 문제는 원격 PC와 해당 문자열에서 작동하지 않는다는 것입니다. – Charbacca

+0

예. PC는 원격 PC와 로컬 PC가 같은 그룹에 있지 않으면 원격 PC 연결을 허용하지 않습니다. 그런 다음 사용자는 두 PC 모두에 계정이 있어야합니다. 그래서 IntegratedSecurit y = yes를 사용합니다; 사용자 이름과 암호를 사용하는 대신 사용자 윈도우 로그인 (및 그룹 계정)을 자동으로 사용합니다. 따라서 그룹 계정을 설정하고 그룹에 로컬 및 PC를 모두 추가해야합니다. 그런 다음 사용자를 그룹에 추가하십시오. – jdweng

답변

0

아마도 DB 포트가 방화벽에 의해 차단 되었습니까? 3306

당신은 또한

+0

Host-PC의 "netstat"에 따르면 포트 : 3306은 "Listening"상태에 있습니다. – Charbacca

+0

클라이언트를 확인해야하지만 @jdweng은 좋은 지적입니다. 하이디 (Heidi)와 같은 일부 데이터베이스 브라우저에 연결을 시도하면 설정을 테스트하고 코드 문제가 발생하지 않도록 할 수 있습니다. – Flocke