MySQL C ++ 커넥터가 원격 데이터베이스에 대한 액세스가 가능합니까?
-
05-07-2019 - |
문제
MySQL C ++ 커넥터를 사용하여 C ++ 앱 내에서 MySQL 데이터베이스에 액세스하고 있습니다. 동일한 컴퓨터에 C ++와 MySQL이 있으면 잘 작동합니다. 따라서 다음 코드와 같은 것이 잘 작동합니다.
sql::Connection *_con;
sql::mysql::MySQL_Driver *_driver;
_driver = sql::mysql::get_mysql_driver_instance();
_con = _driver->connect("tcp://127.0.0.1:3306", "user", "password");
그러나 다른 컴퓨터에있는 경우 데이터베이스에 액세스 할 수없는 것 같습니다. 그래서 다음과 같은 것 :
sql::Connection *_con;
sql::mysql::MySQL_Driver *_driver;
_driver = sql::mysql::get_mysql_driver_instance();
_con = _driver->connect("tcp://somesite.com:3306", "user", "password");
그냥 불가능합니까 아니면 내가 뭔가 잘못하고 있습니까?
해결책
실수로 사용자가 로컬 컴퓨터에서 DB에만 액세스 할 수 있도록 사용자를 설정 했습니까?
당신은 했습니까?
create user 'user'@'127.0.0.1' ...
또는
create user 'user'@'%' ....
처음으로 한 경우 다른 컴퓨터에서 로그온 할 수 없습니다.
또한 권한을 올바르게 부여 했습니까?
MySQL을 참조하십시오 문서 이것을 올바르게 수행하는 방법에 대한 자세한 설명을 위해
다른 팁
나는 VPN을 통해 이것을 해냈으므로 가능하다고 가정합니다. 올바른 포트를 사용하고 있습니까?
제휴하지 않습니다 StackOverflow