|
|
|
| Здравствуйте.
Использую денвер для работы с базами данных. Вернее его mysql сервер.
В пакете денвера есть libmysql.dll. Написал класс (с++) для работы с сервером mysql с использованием этой dll. Потестил - всё вроде работает.
Теперь вопрос:
Сейчас у меня один комп, и на нем одна прога-клиент, работающая с сервером.
Будет ли работать эта схема в локальной сети? Допустим два компа в локальной сети.
Комп №1: установлен денвер и запущен его сервер mysql. Также установлена программа-клиент №1, работающая с сервером (посылающая запросы на сервер).
Комп №2: Установлена программа-клиент №2, работающая с сервером (посылающая запросы на сервер компа №1).
Т.е. вопрос такой: будет ли сервер, запущеный на одном компе локальной сети, доступен со второго компа этой же сети?
К сожалению, у меня нет возможности протестировать эту схему (в наличии только один комп). | |
|
|
|
|
|
|
|
для: Хулиган
(07.09.2007 в 04:31)
| | Будет, куда денется...
Нужно только создать сетевой аккаунт в MySQL. | |
|
|
|
|
|
|
|
для: Trianon
(07.09.2007 в 08:15)
| | А можно чуть подробней, что за аккаунт и как его создать? | |
|
|
|
|
|
|
|
для: Хулиган
(07.09.2007 в 18:14)
| | phpmyadmin
Привилеги
Добавить нового пользователя
-- Хост: адрес машины, с которой пойдут обращения. | |
|
|
|
|
|
|
|
для: Trianon
(07.09.2007 в 18:24)
| | Чуть-чуть теплее.
Если я сейчас коннекчусь на сервер из проги так:
MySQL *db = new MySQL("localhost", "username", "password", "basename");
(при этом вызывается в конструкторе класса функция mysql_real_connect)
то как можно будет с другого компа? Юзера я могу оставить прежнего (или если возникнет необходимость, из phpmyadmin добавить нового), а вот как определить то, что должно быть вместо localhost? Т.е. как я понял, прога на втором компе должна знать ip компа, на котором расположен сервер? Чтобы передавать его вместо "localhost"? | |
|
|
|
|
|
|
|
для: Хулиган
(07.09.2007 в 20:58)
| | MySQL *db = new MySQL("АдресПервойМашины", "username", "password", "basename");
Аккаунт пользователя создать придется.
Адрес машины - это либо ip первой машины, либо имя, которое в этот ip резолвится доступными второй машине средствами, т.е. статически (/etc/hosts) или через DNS.
Когда Вы обращаетесь на форум, у Вас же не возникает подобного рода вопросов по поводу того, что softtime.ru резолвится в 82.208.89.164?
Это пример резолвинга через DNS.
А когда к localhost , то опять же обращение уходит на 127.0.01 через /etc/hosts
(ну или в случае виндовс - через /windows/system32/drivers/etc/hosts ),
а дальше программная заглушка обращение к 127.0.01 разворачивает на IP-стек собственной машины.
Если у машины совсем нет имени - поставьте ip-адрес.
Вообще не зная ни имени, ни адреса, Вы к другой машине обратиться не сможете. | |
|
|
|
|
|
|
|
для: Trianon
(07.09.2007 в 21:19)
| | Примерно понятно (теоретически). Если что, я ещё вернусь к этой теме, когда дело дойдёт до практики.
Спасибо! | |
|
|
|
|
|
|
|
для: Хулиган
(08.09.2007 в 00:40)
| | До практики оно дойдет не раньше, чем Вы узнаете ip-адрес первой машины.
Адрес назначенный реальной сетевой карте, понятное дело, а не тот, что у loopback-заглушки. | |
|
|
|