|
|
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Проблема такая: Локально крутится база Interbase и прога на Delphi. Раз в день необходимо сливать инфу из нее на сайт, где MySql. Так как Load data не работает(отключен в связи с уязвимостью админами), а локально MySql не стоит, то пробую сделать текстовый файл с php скриптом, в котором insert и update строк таблиц, изменившихся со времени последнего экспорта . Затем предполагаю залить его на сайт и там выполнить. Но размер текстовика примерно 5 Мб. Будет ли работать такая схема, или можно придумать что-то попроще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2005, 13:43 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Oleg OE> Проблема такая: OE> Локально крутится база Interbase и прога на Delphi. OE> Раз в день необходимо сливать инфу из нее на сайт, где MySql. OE> Так как Load data не работает(отключен в связи с уязвимостью админами), OE> а локально MySql не стоит, А где стоит мускул, у прова? Oleg OE> то пробую сделать текстовый файл с php скриптом, в котором OE> insert и update строк таблиц, изменившихся со времени последнего OE> экспорта . Затем предполагаю залить его на сайт и там выполнить. OE> Но размер текстовика примерно 5 Мб. OE> Будет ли работать такая схема, или можно придумать что-то попроще? Может быть не стоит сливать все? Сливать лишь изменения данных? Опять же лучше сформировать файл с полями используя разделитель(не передавать лишние insert into), а потом парсить уже из PHP. -- Dik76 Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.04.2005, 12:20 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
MySql стоит у провайдера. Я и предполагаю сливать туда только изменившиеся и свежедобавленные записи, но первоначально инфу -то надо сбросить полностью! ( а впоследствии соответственно Update-ом или Insert-oм, в зависимости от состояния полей даты-времени последнего изменения и даты-времени последнего экспорта записи на сайт. В связи с этим для меня легче сляпать php скрипт как текстовый файл из Delphi, пробегаясь по записям таблиц Interbase базы). Но есть проблема. Не могу разом влить более 1600 записей одним скриптом. А у меня их в каждой таблице порядка 60000.(4 таблички) . С чем связано такое ограничение? Есть ли способ его обойти в одном скрипте? Каков максимально допустимый размер скрипта PHP? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2005, 09:33 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
>А у меня их в каждой таблице порядка 60000.(4 таблички) . Это небольшое кол-во записей. >С чем связано такое ограничение? Есть ли способ его обойти в одном скрипте? Нет такого ограничения, а следовательно нечего обходить. >Каков максимально допустимый размер скрипта PHP? Т.е. Вы все записи вставили в скрипт? И дамп таблиц лежит не в отдельном файле а прямо в скрипте? Пы.Сы. php.ini ;;;;;;;;;;;;;;;;;;; ; Resource Limits ; ;;;;;;;;;;;;;;;;;;; max_execution_time = 30 ; Maximum execution time of each script, in seconds max_input_time = 60 ; Maximum amount of time each script may spend parsing request data memory_limit = 8M ; Maximum amount of memory a script may consume (8MB) ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2005, 11:46 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Написал программку, которая формирует Dump не как SQL скрипт, а как PHP скрипт, который потом сама заливает по FTP на сайт, выполняет и удаляет оттуда. Да, дамп как таковой я представил скриптом (командами PHP, вставляющими записи в таблицы MySQL ). У меня такая схема заработала, но ограничилась вставкой 1000 записей. То есть временем выполнения отдельно взятого скрипта(например ins.php) ограниченым 30 секундами? Вынужден задать видимо глупый вопрос: Как скриптом PHP выполнить SQL скрипт (отдельно лежащий большой текстовый файл -последовательность INSERT-ов и Update-ов, без создания таблиц)? То есть вручную (без mysqldump) созданный обрезаный дамп (только данные) нужно "восстановить" скриптом PHP. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2005, 21:19 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
>То есть временем выполнения отдельно взятого скрипта(например ins.php) ограниченым 30 секундами? По умолчанию - да. Это настраиваемый параметр. >Как скриптом PHP выполнить SQL скрипт (отдельно лежащий большой текстовый файл -последовательность INSERT-ов и Update-ов, без создания таблиц)? >То есть вручную (без mysqldump) созданный обрезаный дамп (только данные) нужно "восстановить" скриптом PHP. Я не понимаю, почему нельзя взять файл дампа, открыть его для чтения и считывать с него и выполнять конструкции заполнения базы на сервере? Отдельно скрипт, отдельно дамп. ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2005, 22:13 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
А в чём разница? Если я в скрипте организую цикл, в котором построчно считываю команды SQL из файла дампа, а затем выполняю их, то скрипт всё равно будет ограничен 30 секундами ... Так зачем тогда разделять скрипт и данные? (Только из-за размера файла?) Или я торможу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 12:18 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
авторА в чём разница? у тебя есть динамически создан dump.sql и статический (с циклом) dump.php который будет либо возле .ехе либо у провайдера. Таким образом в будущем намного легче поменять dump.php чем изменять и перекомпиливать код на Delphi. при етом можно легко перейти на другой язык dump.pl ... dump.* авторвсё равно будет ограничен 30 секундами ... надо кусками выполнять скрипт например аплоадаем на сервер с лимитом на 1000 запросов : dump_01.sql dump_02.sql ... dump_N.sql потом запускаем dump.php который поочереди исполняет все ети *.sql p.s. для INSERT используй INSERT INTO (...) VALUES (...), (...), (...), (...), (...), (...); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 12:45 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Я же сказал, что - max_execution_time настраиваемый параметр!!!! Зачем дробить файл? Нужна часть файла - открой его для четния - возми то, что нужно и все. >Так зачем тогда разделять скрипт и данные? (Только из-за размера файла?) Как минимум, зачем РНР должен обрабатывать то, что не является РНР? Зачем лишний раз нагружать сервер? Ведь проще закатал дамп базы, залил на сервер, открыл файл с дампом для чтения и начал последовательно перебирать конструкции в дампе. Все для того, что бы ты залил всю инфу в БД - тебе уже сказали, не хочешь подумать головой - делай все а-ля "лишь бы работало" и никому не показывай. ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:25 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Okram, за P.S. спасибо конечно... 8-) --------------------------------- что же получается? В любом случае я должен уложиться в 30 секунд реального времени? При проверке локально я параллельно с выполнением скрипта запускал крутиться разные проги. У меня в зависимости от загрузки компа вставлялось разное количество записей! т.е. скрипт выполняется - как ему захочется?! А если у провайдера загружен сервак, тогда что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:33 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. И почему 1000 запросов? А если сервер будет загружен и сможет обработать только 999 запросов, а 1000ный не успеет обработать? А в этом запросе как раз создание таблицы, которая должна будет заполняться с 1001-ой записи? ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:37 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Диктую большими буквами Время исполнения скрипта - настраиваемый параметр Читать здесь http://]http://ru.php.net/manual/ru/ref.info.php#ini.max-execution-time ---------------------------------------- Артисты не приехали, приехали цыгане ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:40 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
Всё понятно, спасибо. С тем, что этот параметр настраиваемый, всё ясно. Но настраиваю его, увы не я. А что ж делать в том случае, если нужно обработать сложный долгий (дольше чем настроил админ хоста) запрос к базе и выдать его пользователю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:53 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
А SSH на сервер есть? Попроси. Щас много хостингов с SSH.... Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:55 |
|
||
|
(PHP&MYSQL) сработает ли экспорт?
|
|||
|---|---|---|---|
|
#18+
4m@t!cДиктую большими буквами Время исполнения скрипта - настраиваемый параметр Читать здесь http://]http://ru.php.net/manual/ru/ref.info.php#ini.max-execution-time ---------------------------------------- Артисты не приехали, приехали цыгане недавно я работал с таким провайдером где нельзя было использовать set_time_limit(60*60*24) :( надеюсь у тебя Oleg Efimenko сработает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2005, 13:58 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=33019363&tid=1478431]: |
0ms |
get settings: |
12ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
450ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 799ms |

| 0 / 0 |
