هو الخلية C ++ رابط الوصول إلى قاعدة البيانات البعيدة ممكن؟
-
05-07-2019 - |
سؤال
وأنا الوصول إلى قاعدة بيانات MySQL ضمن التطبيق C ++ باستخدام ماي C ++ رابط. أنه يعمل بشكل جيد إذا كان لدي C ++ والخلية على نفس الجهاز. لذلك، شيء من هذا القبيل التعليمة البرمجية التالية يعمل على ما يرام:
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'@'%' ....
إذا فعلت أولا ثم أنك لن تكون قادرا على تسجيل الدخول من جهاز آخر.
هل أنت أيضا منح الامتيازات بشكل صحيح؟
واطلع على الخلية مستندات للحصول على أكثر في عمق شرح حول كيفية القيام بذلك بشكل صحيح
نصائح أخرى
ولقد فعلت ذلك من خلال VPN حتى أنا على افتراض أنه من الممكن. هل تستخدم المنفذ الصحيح؟