Как вы можете получить доступ к базе данных MySQL из Интернета без использования сервлета или PHP? - PullRequest
1 голос
/ 14 сентября 2009

В настоящее время я пользуюсь услугой хостинга, которая предлагает пользователям доступ к базам данных MySQL, но не предлагает сервер Tomcat или какой-либо другой способ выполнения обработки на стороне сервера. Так что трехуровневый дизайн отсутствует.

Будучи новичком в Java и Javascript, я планировал использовать их в этом проекте, чтобы получить больше опыта. Я ничего не знаю о PHP, который, как я слышал, может стать решением моей проблемы. Кто-нибудь знает способ использования Java / Javascript для получения доступа к базе данных MySQL из клиента браузера?

Спасибо, Mark

Ответы [ 5 ]

1 голос
/ 14 сентября 2009

Java может получить доступ к MySQL через TCP ... никакой API-интерфейс браузера для JavaScript не позволяет TCP, поэтому JavaScript не подходит, кроме серверного JavaScript ... если вы действительно хотите иметь прямое соединение, Java, вероятно, будет вашим выбором. ... вы можете создать Java-апплет, который будет подключаться к удаленному демону MySQL, используя ... вам, возможно, придется подписать его , хотя, если песочница по умолчанию не разрешает этот тип связи .. .

В качестве альтернативы, вы можете использовать FlashPlayer 9+, теоретически, но вам придется реализовать весь протокол в ActionScript 3 или Haxe, так что это не так уж много вариантов, я думаю ...

Тем не менее, 3-уровневый дизайн, который вам не нужен, - действительно лучший путь, по нескольким причинам:

  • гибкость: если вы добавите дополнительный слой между клиентом и базой данных, это даст вам больше возможностей для последующих модификаций и разъединит клиента и БД ...
  • контроль: гораздо проще контролировать / ограничивать доступ к базе данных
  • безопасность: обычно вы настраиваете свою БД MySQL, чтобы она принимала соединения только с очень небольшим количеством хостов, обычно только с локального хоста, и, возможно, с одного внешнего сервера ... таким образом, безопасность вашей БД практически безопасность внешнего сервера, поскольку, вероятно, никто другой даже не знает о БД ... Я бы не сказал, что легко защитить сервер ... но он более безопасен, чем если бы у вас было много общих учетных записей, которые могут получить доступ к БД из любого хост, по незащищенным соединениям ...
1 голос
/ 14 сентября 2009

PHP действительно на стороне сервера, но многие интернет-провайдеры, которые не предоставляют JSP, ASP и т. Д., Тем не менее, предоставляют PHP. Так что это на самом деле может быть доступно для вас. Я думаю, что короткий ответ таков: выясните, какие именно инструменты доступны. Если ваш провайдер не предоставляет ничего, что соответствует вашим потребностям, найдите другого провайдера. Я управляю несколькими сайтами JSP / сервлетов на провайдере, который мне платит, я думаю, это 8 долларов в месяц.

1 голос
/ 14 сентября 2009

Javascript запускается в песочнице и не может делать такие вещи, как открытие файлов, подключение к базе данных MySQL и так далее. Несмотря на схожее название, Java и Javascript не имеют ничего общего.

PHP и Java являются системами на стороне сервера, и они оба могут подключаться к базам данных MySQL.

0 голосов
/ 14 сентября 2009

Итак, ваша хостинговая компания предоставляет базу данных MySQL, но нет времени выполнения для программного доступа к ней / ее изменения ?! Это бесполезно. Вы уверены, что знаете, о чем говорите?

0 голосов
/ 14 сентября 2009

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

...