За последние 24 часа нас посетили 55346 программистов и 1782 робота. Сейчас ищет 981 программист ...

Как настроить удаленное подключение к БД ?

Тема в разделе "PHP для новичков", создана пользователем Kaner, 16 авг 2012.

  1. Kaner

    Kaner Активный пользователь

    С нами с:
    6 янв 2011
    Сообщения:
    58
    Симпатии:
    0
    Не получается настроить удаленное подключение к бд.
    в my.cnf прописал bind-address = *тут айпи сервера с бд*
    Через пхпмайадмин прописал:
    GRANT ALL ON *.* TO 'пользователь бд'@'айпи с которого подключаюст' IDENTIFIED BY 'тут пароль';

    Всё равно не хочет конектится пишет:

    Warning: mysql_connect() [function.mysql-connect]: [2002] Operation timed out (trying to connect via tcp://yyy.yyy.yyy.yyy:3306) in /home/*******/*******.ru/docs/template/functions.php on line 5

    Warning: mysql_connect() [function.mysql-connect]: Operation timed out in /home/******/******.ru/docs/template/functions.php on line 5

    Warning: mysql_select_db() expects parameter 2 to be resource, boolean given in /home/*******/******.ru/docs/template/functions.php on line 6
    Ошибка соединения с базой данных
    Warning: mysql_query() [function.mysql-query]: Access denied for user ''@'xxx.xxx.xxx.xxx' (using password: NO) in /home/********/*******.ru/docs/template/functions.php on line 114

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/**********/*******.ru/docs/template/functions.php on line 114
    Ошибка считывания мета-данных из БД!

    Может кто-нибудь напишет алгоритм действий?
     
  2. Код (Text):
    1.  
    2.  <?php
    3.  if ($db = @mysql_connect('адрес MySql сервера', 'логин', 'пароль')) {//усланавливаем соединение
    4.   mysql_select_db('имя таблицы');//выбираем таблицу
    5.   mysql_query('SET NAMES utf8');//выбираем кодировку для работы с базой
    6.   //выполняем работу с базой
    7.   mysql_close($db);//закрываем соединение
    8.   echo 'всё ок';
    9.  }else {//если не удалось соедениться
    10.   echo 'не удалось установить соединение с базой данных';
    11.   echo '<br>'.mysql_error();
    12.  }
     
  3. Kaner

    Kaner Активный пользователь

    С нами с:
    6 янв 2011
    Сообщения:
    58
    Симпатии:
    0
    Вот что получил:
    не удалось установить соединение с базой данных
    Operation timed out
     
  4. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
  5. gromdron

    gromdron Активный пользователь

    С нами с:
    10 авг 2012
    Сообщения:
    14
    Симпатии:
    0
    Возможно проблема с тайм-аутами.
    Я сталкивался с ней когда писал программу под C# и базой данных.
    Суть следующая: мой скрипт выдавал Connection timeout когда время уходило за 50 временных единиц (так нужно было), а MySQL отдавал на 51 или в диапазоне от 50 до 70 (дико звучит но так надо было :) )

    P.S. проверьте адрес сервера, там еще и порт нужен. Например у меня база name.base.zone:****, и если коннект с других портов то не пускает