Какое мое имя хоста на моем локальном сервере MySQL? - PullRequest
1 голос
/ 21 апреля 2011

Я просто настроил сервер MySQL на моем ПК для тестирования Java с JDBC.На данный момент «localhost» отлично работает в качестве имени хоста для моих приложений при запуске их в одной системе.

Однако каким будет имя хоста для моего сервера MySQL для приложений, работающих на разных компьютерах?Что-то вроде "my_ip: port" будет работать?Я думал о создании апплета, который я мог бы загрузить на веб-сервер и попытаться подключиться к моей базе данных здесь.Можно ли этого добиться?

Ответы [ 3 ]

1 голос
/ 21 апреля 2011

Что-то вроде "my_ip: port" будет работать?

Если экземпляр MySQL привязан к вашему общедоступному интерфейсу, и если ваш брандмауэр это разрешает, то да. Если вы подключаетесь к сети через маршрутизатор, который выполняет NAT (например, комбинированный модем DSL и беспроводной маршрутизатор, позволяющий подключать несколько компьютеров), вам придется настроить правила переадресации в маршрутизаторе, чтобы сообщить ему, какой из локальные машины для пересылки запросов.

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

Я думал о написании апплета, который я мог бы загрузить на веб-сервер и попытаться подключиться к моей базе данных здесь. Можно ли этого добиться?

С подписанным Java-апплетом , да; в противном случае нет. Это связано с тем, что изолированная программная среда безопасности, в которой работают Java-апплеты, не позволяет им получать доступ к серверам, отличным от того, с которого они были загружены (веб-сервер).

Гораздо лучший подход состоит в том, чтобы ваш клиентский код (Java-апплет или просто DHTML + Ajax) общался с серверным кодом на веб-сервере, который, в свою очередь, взаимодействует с вашей БД. Таким образом, БД никогда не подвергается непосредственному воздействию внешнего мира, и вам не нужно делать такие вещи, как подписанные апплеты.

1 голос
/ 21 апреля 2011

Вы всегда можете использовать IP-адрес сервера, на котором работает mysql, в качестве имени хоста или его полного доменного имени.

0 голосов
/ 21 апреля 2011

Это должно работать, но вы также должны рассмотреть возможность переадресации портов через брандмауэр.

Зайдите сюда, чтобы получить свой IP: http://www.whatsmyip.org/

Порт - это порт, на котором настроен mysql.

...