Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: подключение к внешней mysql
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » подключение к внешней mysql

Страниц (1): [1]
 

1. Kubert - 06 Августа, 2010 - 18:04:27 - перейти к сообщению
Есть два разных сайта

На одной есть забитая инфа в бд, второй должен выводить эту инфу у себя на страницах. Какой запрос нужен для подключения внешней бд?
2. Champion - 06 Августа, 2010 - 18:17:40 - перейти к сообщению
А какой к локальной?
3. Kubert - 06 Августа, 2010 - 18:52:41 - перейти к сообщению
Champion пишет:
А какой к локальной?


не понел вопрос...


$db = mysql_connect ("хост_бд","логин","пароль");
mysql_select_db ("имя_бд",$db);

не не получается если бд внешняя
4. Champion - 06 Августа, 2010 - 19:09:53 - перейти к сообщению
Потому что БД должна разрешать к ней подключаться из вне. В my.cnf есть директива bind-address тутнадонаписатьip. ip как обычно: 123.4.5.6, 123.4.0.0/16, 0.0.0.0 - соответственно для одного ip, для подсети или для всех. Кроме этого файрволл должен разрешать подключения с тех же ip на 3306 порт. (Либо на другой порт, если mysql крутится на другом порту)
(Добавление)
А еще возможно, нужно будет назначит права пользователям username@%, потому что наверняка всем пользователям тоже разрешено коннектиться с локахоста, если у них имена username@localhost
5. JustUserR - 07 Августа, 2010 - 01:51:29 - перейти к сообщению
Kubert пишет:
Не не получается если бд внешняя
Если требуемая база данных находится на удаленном сервере то доступ к ней определяется несколькими факторами - к примеру разрешением firewall-ом исходящих соединений из вашего локального SQL-клиента к заданной группе IP-адресов - и аналогичным разрешением на удаленной стороне - кроме того в зависимости от конфигурации сети и используемых в ней сервисов таких факторов может быть достаточно много
Тем не менее для определения того факта что вы не можете подключиться к удаленной БД не по сетевым причинам - а из-за отсутствия вашего локального хоста в шаблоне разрешенных для вашего SQL-пользователя - вы можете произвести простой telnet-запрос с того узла на котором находится ваш локальный SQL-клиент или использующий соответствующее подключение сервер приложений - а именно telnet IP_удаленного_БД_сервера ПОРТ
Если данное TCP-соединение будет установлено то это свидетельствует о недостаточно именно прав пользователя - иначе об определенных сетевых проблемах При этом удаленный SQL-сервер всегда разрешит инициализировать TCP-соеднение с ним он если имеет такую возможность - ведь авторизация пользователя и определение его прав осуществляется уже в рамках самого этого соединения

 

Powered by ExBB FM 1.0 RC1