본문 바로가기
MySql

MySQL C #을 사용하여 원격 MySQL 서버에 연결하는 방법은 무엇입니까?

by 베이스 공부 2021. 1. 10.
반응형

다른 컴퓨터의 MySQL 서버에 액세스하는 C # 응용 프로그램이 있습니다. IP를 통해 시도하고 있습니다. 내 연결 문자열은 다음과 같습니다.

server = "192.168.10.221";
database = "restaurantdb";
uid = "root";
password = "";
string connectionString;
connectionString = "SERVER=" + server + "; PORT = 3306 ;" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
mycon = new MySqlConnection(connectionString);

이제 아이디어는 두 컴퓨터가 모두 연결된 인터넷 또는 Wi-Fi 연결을 통해 연결하는 것입니다. 그런 다음 C #으로 코딩 된 SQL 문자열을 통해 데이터베이스에 액세스합니다. 이제 LAN 네트워킹을 통해 연결할 수도 있지만 방법을 모르겠습니다.

내 코드에서이 예외가 발생합니다.

{"Access denied for user 'root'@'Crave-PC.lan' (using password: NO)"}   System.Exception {MySql.Data.MySqlClient.MySqlException}

네트워킹을 통해 서버에 액세스하는 방법에 대한 아이디어가 있습니까?

 

해결 방법

 

문제는 MySQL 서버 측에 있으며 루트 사용자는 원격으로 연결할 권한이 없습니다. 루트 사용자에게 원격으로 연결할 수있는 권한을 부여하려면 mysql 명령 줄에 다음을 입력하십시오.

GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY 'rootPass';

현재 루트 비밀번호로 '루트 패스'를 변경하십시오. 루트의 비밀번호에는 비밀번호가 없습니다. MySQL은 연결을 허용하지 않으므로이를 정의해야합니다.

참고 : 보안 모범 사례로 클라이언트 애플리케이션에서 mysql 데이터베이스에 액세스하려면 루트 이외의 다른 사용자를 정의해야합니다.

도움이 되었기를 바랍니다.

 

참조 페이지 https://stackoverflow.com/questions/15094819

 

 

반응형

댓글