Задавайте вопросы, мы ответим
Вы не зашли.
Страниц: 1
Подскажите как подключиться с локального компа к своей же БД в интернете, пользователь с правами удаленного доступа, но почему то пишет ошибку, вот содержимое конфига подключения:
<?php
$dbhost="site.ru";
$dbuser="usser";
$dbpass="paroll";
$link = mysql_connect($dbhost, $dbuser, $dbpass) or die ("no connect");
mysql_select_db ("auto") or die("no connect");
?>
Пишет след. ошибку: Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'site.ru' (10061) in S:\home\localhost\www\Analitics\config.php on line 5
no connect
PS: На локальном компьютере установлен денвер.
Неактивен
MySQL на локальном компьютере не слушает порт. Насколько я знаю, денвер
настраивает MySQL так, что он слушает не стандартный порт. Ну и только на
127.0.0.1, скорее всего. Нужно найти конфигурацию и поправить. Скорее всего,
при этом сам денвер разломается.
Неактивен
Добавил в антивирь порт 3306, в процессах висит mysqld.exe, в файле my.cnf:
Неактивен
paulus написал:
MySQL на локальном компьютере не слушает порт. Насколько я знаю, денвер
настраивает MySQL так, что он слушает не стандартный порт. Ну и только на
127.0.0.1, скорее всего. Нужно найти конфигурацию и поправить. Скорее всего,
при этом сам денвер разломается.
paulus подскажите как поправить этот файл? так сказать тыкните пальцем
Неактивен
Ну вот закомментируйте bind-address. Интересно, а где он в виндоус находит /tmp
Неактивен
Закомментировал, результат тот же! А можно как нибудь еще проверить соединяется ли компьютер с БД? может еще какой нибудь способ есть?
Путь до MySQL у меня такой C:\WebServers\usr\local\mysql5\bin
Отредактированно YG (25.01.2010 15:16:41)
Неактивен
telnet <ip> 3306
ip нужно указывать внешний, а не 127.0.0.1
Неактивен
Доброго времени суток!!!
Может моя проблема покажется вам простой, но я начинающий пользователь и встретился с такой проблемой: стоит у меня на Windows MySQL Server 5 и клиент к нему. На Localhost клиент коннектится к базе без проблем, но нужно сделать так, чтоби еще 10 компов с клиентами коннектились по локальной сети к етому серверу. Сколько всякого разного начитался - ничего не помогло. Опишите, пожалуйста, подробный процесс настройки такого соединения на примерах. Заведомо, очень признателен!!!
Неактивен
Ету статью я уже читал и мне там не ясно следующее: 1) Для установления удаленного соединения нужно указать параметры, характеризующие устанавливаемое подключение. Это
* --host
* --protocol
* --port
Где именно их надо указывать и как? Пробовал в C:\Program Files\MySQL\MySQL Server 5.0\my.ini прописывать, но так ничего и не произошло;
2) В MySQL Command Line Client написал следующее: GRANT SELECT ON mysql.time_zone TO user@192.168.2.203 IDENTIFIED BY '1'; и получил ответ бази : Query OK, 0 rows affected (0.00 sec). Что ето означает? надо ли прописивать всех юзеров пооддельности или можно включить доступ всех к базе? надо прописивать юзера столько раз, сколько есть баз? надо ли создавать акаунти юзеров на локалхосте перед тем, как давать им доступ к базе по локальной сети? Буду очень признателен за ответ. Извините еще раз за дурацкие вопроси, но я начинающий и много еще есть неясного
Неактивен
1) Это надо указывать в настройках того приложения, которое соединяется. Т.е.
в настройках клиента. my.ini оно, скорее всего, не читает (хотя, некоторые и
читают).
2) Вы дали право пользователю user с машинки 192.168.2.203 и паролем 1 соеди-
ниться с базой и выполнить SELECT из таблички time_zone базы mysql. Включить
доступ всех — это GRANT, в котором понятие «все» описано как-то подробно.
Могу придумать «все» как user@'%' — пользователь user с любой машинки. Могу
придумать «все» как ''@192.168.2.203 — кто угодно с машинки 192.168.2.203.
Или даже ''@'%' — кто угодно откуда угодно.
Неактивен
Решил пойти на все и написал такое: GRANT ALL ON *.* TO '%'@'%' IDENTIFIED BY '1';
и достал ответ:
ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)
на другие попитки ставить вместо % root или user отвечает тем же. Что не так?
Неактивен
Судя по всему ваш пользователь 'root'@'%', под которым вы пытаетесь выполнить команду GRANT не имеет на это прав.
Выполните под этим пользователем команду
Неактивен
Неактивен
А дальше под этим пользователем уже можете создавать других пользователей
Неактивен
ето хорошо, но етот пользователь удаленно не подключается к базе, а мне именно ето и надо. клиент говорит, что не находит сервера. может надо еще гдето в конфигаг прописать адрес хоста?
Неактивен
Да
Неактивен
если вернутся к FAQ п.1 и к тому, что говорили Вы, сделать выводи, что хост надо прописивать не только в приложении, которое коннектится, так как оно все равно говорит, что не находит сервер. Значит, я думаю, надо прописивать в конфиге сервера, но где именно и как для меня остается загадкой. Для установления удаленного соединения нужно указать параметры, характеризующие устанавливаемое подключение. Это
* --host
* --protocol
* --port
в my.ini есть только пункты protocol и port. пробовал туда дописивать имя хоста и никакого изменения не происходит.
необходимо добавить имя хоста (или ip адрес машины, на которой расположена база) в строке подключения:
mysql --host=host_name
где ето добавлять?
Отредактированно rammstein85 (17.02.2010 00:52:42)
Неактивен
спасибо. мне кстати помогло.
Неактивен
Представьте себе, что открыли браузер и набрали в нем www.yandex.ru. Как Вы думаете,
нужно ли настраивать яндекс так, чтобы он знал, что сейчас прийдете именно Вы? Нет,
яндексу все равно, кто прийдет. Важно, что Вы говорите Вашему *клиенту* (т.е. браузеру),
что Вы хотите подключиться к Яндексу.
Клиент MySQL ничуть не хуже браузера, он просто заточен под немного другие задачки.
Чтобы подключиться клиентом к серверу, Вы должны сказать *клиенту*, куда нужно под-
ключиться. А серверные настройки трогать не нужно.
Неактивен
Спасибо огромное. Буду мучатся что не так. Надеюсь, что все получится ;-)
Неактивен
Страниц: 1