2012-05-26 3 views
1

Я пытаюсь подключиться с моего ip-адреса к мобильному веб-приложению. Я помогаю исправить, чтобы проверить его на своем телефоне Android. Тем не менее, пока экран входа в систему появляется, когда я обращаюсь к нему с localhost И моего ip-адреса, он позволяет мне только войти в систему с локального адреса - он даже не соединяется с ip-адресом.MySQL может подключаться локально, но не удаленно

Я запускаю MAMP Pro и снял флажок «Разрешить только локальный доступ». Я зашел в MySQL my.cnf и изменил адрес привязки с 127.0.0.1 на собственный IP-адрес. Я также прокомментировал строку «MAMP_skip-networking_MAMP». Затем я сделал пользователя, который совпадает с пользователем в config.php, имеет полный доступ к базе данных и установит свой хост на%.

В файле config.php, я попытался изменить имя хоста:

  • локального хоста
  • локальный: [НОМЕР ПОРТА]
  • [IP АДРЕС]
  • [IP АДРЕС] : [НОМЕР ПОРТА]
  • /Applications/MAMP/tmp/mysql/mysql.sock

Тем не менее. . ничего. Я все еще не могу войти в систему, когда пытаюсь получить доступ к сайту с моего IP-адреса. Любая помощь/направление будут очень благодарны .. спасибо!

ответ

0

Проблема не с клиентом, скорее всего, с сервером. Большинство серверов MySQL настроены (я думаю, по умолчанию), чтобы отказаться от попыток подключения, которые не являются локальными. Дайте мне несколько секунд, чтобы изменить конфигурацию config/info, чтобы сделать так, чтобы вы могли изменить это.

Предупреждение, это плохая идея, чтобы открыть db для всех запросов. Вы захотите либо открыть все IP-запросы от одного пользователя, либо разрешить запросы от любого пользователя с определенного IP-адреса (или, что еще лучше, объединить их и сделать так, чтобы только определенные пользователи могли делать запросы от определенных IP-адресов) ,

Вот хороший (но опять-таки опасно) обучающая:

how-do-i-enable-remote-access-to-mysql-database-server

Простой способ сделать это, если я не ошибаюсь, это выполнить следующие запросы: (если вы, как «суперамин»:

USE information_schema; 
UPDATE USER_PRIVILEGES SET Host='%' WHERE user='superadmin'; 
FLUSH PRIVILEGES; 
USE mysql; 
UPDATE user SET Host='%' WHERE user='superadmin'; 

выше в основном предоставляет доступ SuperAdmin к БД MySQL (если уже не предоставляется), то переход к этому доступа дБ и грант SuperAdmin с любого IP Опять же, следуйте ссылкам, предоставляемых. см., как настроить это на каждого пользователя и на IP, в противном случае вы открываете себе мир, чтобы просто использовать отличный графический интерфейс MySQL.

Это может быть сложнее, чем указано выше (может потребоваться перезагрузка и т. Д.). Другим хорошим товаром является:

MySQL - Adding Users - ищите раздел с указанием подстановочных знаков.

+0

Привет, Энтони, спасибо, что так быстро переписывались. Я нахожусь в «root», и я добавил другого «root» пользователя через мой phpMyAdmin - он имеет мой ip как хост, тот же пароль и все привилегии. Затем я побежал «ПЛОХИЕ ПРИВИЛЕГИЯ», ничего. Открытие его с localhost позволяет мне войти в систему, но не мой IP-адрес. На всякий случай, для моего имени хоста базы данных установлено значение «localhost: 3306» – Silvia

+0

. Вы должны разрешить удаленному пользователю получить доступ к db с удаленного IP-адреса.Я думаю, вы можете подстановить его, но, как тест, попробуйте установить эту новую учетную запись root, чтобы Host = 'your.remote.ip' – Anthony

Смежные вопросы