наверное при соединение с сервером
ты вызываешь что-то похожее на mysql_connect(...);
во всяком случае, по смыслу тоже...
так вот, ф-ция возвращает результат.
Такоим образом ты можешь определить, подключился
к МуСкулю или нет.
Вот и вызывай, n-кол-во раз, или лучше, по времени.
К примеру пытайся подключиться 1-2 минуты....
Варианты с тем, что бы ускорить запуск Мускуля или замедлить
запуск твоей программы на мой взгляд не очень удобны будут,
если ты решишь использовать свою программу на другом компьютере,
или нескольких, что хуже, так как нужно будет твоё вмешательство,
что бы донастроить для корректной работы или, если будешь писать
инсталятор- лишний гемор...
Вы писали 31 мая 2004 г., 17:22:59:
MSS> Проблема в том, что, когда я обращаюсь, движок базы еще не MSS> поднялся полностью, и обращение обламывается. MSS> Есть ли какие-то умные способы дождаться?
запускайте mysql раньше всех, переименуйте файл в
/usr/local/etc/rc.d/mysql_server.sh например на
000.mysql_server.sh
Смысл в том, что файлы в этом каталоге запускаются в
последовательности в которой они находятся, если их отсортировать по
имени.
Можно в скрипт запуска mysql вставить задержку в пару секунд после
запуска: sleep 2
--
С уважением, butcher
Здравствуйте, Maxim S. Shatskih, Вы писали:
MSS>Хочу обратится к базе данных из демона, который запускается сразу после MySQL среди local packages (FreeBSD).
MSS>Проблема в том, что, когда я обращаюсь, движок базы еще не поднялся полностью, и обращение обламывается.
MSS>Есть ли какие-то умные способы дождаться?
подождать, пока демон mysql начнет слушать нужный порт, можно на perl
сделать скрипт, который в случае успешного соединения возвращает 0, иначе 1 (использовать Socket),
и засунуть эту прогу в скрипт запуска Вашей программы, пусть она
в цикле с паузами вызывается пока не вернет 0.
Здравствуйте, Maxim S. Shatskih, Вы писали:
MSS>Хочу обратится к базе данных из демона, который запускается сразу после MySQL среди local packages (FreeBSD).
MSS>Проблема в том, что, когда я обращаюсь, движок базы еще не поднялся полностью, и обращение обламывается.
MSS>Есть ли какие-то умные способы дождаться?
uzhe na takoe otvechali..
poishi v poiske
skoree vsego tebe nuzhen "embedded server" togda voobshe nizhego zhdat ne pridetsya..
interface u nego takoy zhe..
наверное при соединение с сервером
ты вызываешь что-то похожее на mysql_connect(...);
во всяком случае, по смыслу тоже...
так вот, ф-ция возвращает результат.
Такоим образом ты можешь определить, подключился
к МуСкулю или нет.
Вот и вызывай, n-кол-во раз, или лучше, по времени.
К примеру пытайся подключиться 1-2 минуты....
Варианты с тем, что бы ускорить запуск Мускуля или замедлить
запуск твоей программы на мой взгляд не очень удобны будут,
если ты решишь использовать свою программу на другом компьютере,
или нескольких, что хуже, так как нужно будет твоё вмешательство,
что бы донастроить для корректной работы или, если будешь писать
инсталятор- лишний гемор...
Вы писали 1 июня 2004 г., 10:00:31:
MSS> Я правильно понимаю, что надо при соединении отключить MSS> параметр RaiseError => 1, и тогда скрипт не будет валится напрочь MSS> от ошибок с базой данных?
Наоборот, RaiseError => 0, можно ещё PrintError => 0
--
С уважением, butcher