Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
5 / 6 / 0
Регистрация: 26.10.2013
Сообщений: 118
1

Обращение к MySQL на удалённом сервере

23.06.2015, 11:09. Показов 1777. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создав две темы и получив пинков за недоумие, разабрался как организовать конект с MySQL на С++. На localhost всё заработало. Но как только я переделал код для обращения к MySQL на сервере - конектиться перестало.
Т.е. с
C++
1
2
3
4
5
char host[] = "localhost";
char user[] = "root";
char passw[] = "XXXXXX";
char db[] = "ktu_crts";
int port = 3306;
C++
1
2
if(mysql_real_connect(&mysql,host,user,passw,db,port,NULL,0)) { pechat->Text = "Connection is good!!!";}
else { pechat->Text = "Error connection.";}
выдаёт "Connection is good!!!"
,а с
C++
1
2
3
4
5
char host[] = "некий IP адрес";
char user[] = "root";
char passw[] = "XXXXXX";
char db[] = "ktu_crts";
int port = 3306;
выдаёт "Error connection."
Сервер работает под Windows Server Standart SP2.
Форумчане помогите!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.06.2015, 11:09
Ответы с готовыми решениями:

Как определить время на удалённом сервере?
На С++ есть возможность определения времени, выставленного на текущем ПК. А как определить время...

Обращение к MySQL
Пытаюсь подключится к mysql из кода C++. VS 2010 компилит экзешник, ошибок не выдаёт. Запускаю...

Как подключиться к MySQL базе которая крутиться на удалённом сервере в докер контейнере?
Здравствуйте сообствено сабж. База данных крутиться на удалённом серваке в докер контейнере....

Сетевая игра с сохранением данных в базу данных mySQL, находящуюся на удалённом сервере
Здравствуйте! Подскажите, пожалуйста, какую-нибудь литературу по данной теме. Или объясните с чего...

4
68 / 67 / 59
Регистрация: 14.07.2013
Сообщений: 251
23.06.2015, 11:39 2
Я совсем не уверен но может в этом дело
C++
1
2
3
4
5
6
7
8
9
10
struct sockaddr_in antelope;
char *some_addr;
 
inet_aton("10.0.0.1", &antelope.sin_addr); // store IP in antelope
 
some_addr = inet_ntoa(antelope.sin_addr); // return the IP
printf("%s\n", some_addr); // prints "10.0.0.1"
 
// and this call is the same as the inet_aton() call, above:
antelope.sin_addr.s_addr = inet_addr("10.0.0.1");
Добавлено через 1 минуту
Да точно
"host может быть как именем хоста, так и IP-адресом. Если host равен NULL или строке "localhost", то подразумевается соединение с локальным хостом. Если операционная система поддерживает сокеты (Unix) или именованные каналы (Windows), то они используются вместо протокола TCP/IP для соединения с сервером."
0
Просто Лис
Эксперт Python
5731 / 3530 / 1055
Регистрация: 17.05.2012
Сообщений: 10,360
Записей в блоге: 9
23.06.2015, 11:40 3
Лучший ответ Сообщение было отмечено Dozentos как решение

Решение

Возможно у сервера стоит фаервол, либо запрещены подключения с внешних ip адресов.

Попробуйте просканировать сервер сканером портов. Порт 3306 должен быть открыт, и не быть отфильтрован.
1
68 / 67 / 59
Регистрация: 14.07.2013
Сообщений: 251
23.06.2015, 11:47 4
C++
1
2
3
4
5
6
7
struct sockaddr_in IPaddr;
inet_aton("10.10.1.1", &IPaddr.sin_addr);
char host[] = inet_ntoa(IPaddr.sin_addr);
char user[] = "root";
char passw[] = "XXXXXX";
char db[] = "ktu_crts";
int port = 3306;
Так попробуйте
0
5 / 6 / 0
Регистрация: 26.10.2013
Сообщений: 118
23.06.2015, 13:45  [ТС] 5
А для работы inet_aton не нужно ли что-то заинклудить? У меня компилятор ошибку выдаёт...

Добавлено через 31 минуту
Вопрос решён!!! Порт 3306 был закрыт брандмауэром. Сканер портов помог выявить проблему. Всё работает без inet_aton.
Всем огромное спасибо!!! Тему можно закрывать.
0
23.06.2015, 13:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.06.2015, 13:45
Помогаю со студенческими работами здесь

Авторизация на удалённом сервере
Я вот тут уже много нашел по своей проблеме, однако не всё... <?php @...

файл на удалённом сервере
Что надо сделать чтобы можно было считывать информацию из файла на удалённом сервере?

На удалённом веб-сервере не срабатывает сервлет
Добрый день ! Не знаете ли есть какие-нибудь подводные камни при обращении к Java-сервлету,...

Запуск готового скрипта на удалённом сервере
Доброго времени суток. Я очередной новичок в PowerShell, поэтому прошу не судите строго. У меня...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru