Posted 22 сентября, 20213 yr comment_172684 Погуглил. Предлагают создать файл sql, в котором прописать команды. Например: UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag1', 'tag2'); UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag3', 'tag4'); Как теперь прописать команду запуска в кроне? Какая команда и верен ли такой подход? Крон имеет графическую оболочку в панели ISP Manager. Edited 22 сентября, 20213 yr by Zero108 Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/ Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172688 wget -O- "https://site.ru/sql.php" Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172688 Share on other sites Больше вариантов
22 сентября, 20213 yr Author comment_172692 Подскажите, а через локальный путь как запустить такую команду? Нужно ли в самом файле прописывать атрибуты пхп ( <php и т.п.)? И что означает ключ -O-? Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172692 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172694 2 минуты назад, Zero108 сказал: Подскажите, а через локальный путь как запустить такую команду? Нужно ли в самом файле прописывать атрибуты пхп ( <php и т.п.)? И что означает ключ -O-? Цитата Журналирование и входной файл: -o, --output-file=ФАЙЛ записывать сообщения в ФАЙЛ Непонятно, для чего это здесь И wget обычно скачивает файл, для просто выполнения желательно использовать curl Выполнить локальный скрипт через крон можно так /opt/php74/bin/php /var/www/user/data/script.php Где /opt/php74/bin/php - ссылка на дистрибутив PHP Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172694 Share on other sites Больше вариантов
22 сентября, 20213 yr Author comment_172695 Достаточно ли в самом файле прописать команды sql или нужно добавить в начале и конце атрибуты пхп: <php и т.п.? Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172695 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172696 1 минуту назад, Zero108 сказал: Достаточно ли в самом файле прописать команды sql или нужно добавить в начале и конце атрибуты пхп: <php и т.п.? нужно полностью оформить как php код, т.е. со всеми атрибутами Соответственно со всеми подключениями к БД Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172696 Share on other sites Больше вариантов
22 сентября, 20213 yr Author comment_172697 Можно попросить образец такого файла, где осталось только подставить sql команды, указанные выше? Файл будет запускаться из папки сайта на движке Invision Community. Edited 22 сентября, 20213 yr by Zero108 Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172697 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172698 <? $host = "localhost"; // ХОСТ БАЗЫ ДАННЫХ $name = ""; // ИМЯ БАЗЫ ДАННЫХ $user = ""; // ПОЛЬЗОВАТЕЛЬ БАЗЫ ДАННЫХ $password = ""; // ПАРОЛЬ БАЗЫ ДАННЫХ $connect = "mysql:dbname=$name;host=$host"; $db = new PDO($connect, $user, $password); $sql = "UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag1', 'tag2')"; $result = $db->query($sql); $sql = "UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag3', 'tag4')"; $result = $db->query($sql); ?> 3 минуты назад, Zero108 сказал: Файл будет запускаться из папки сайта на движке Invision Community. Не важно из какой папки запускать файл. Главное укажите верный путь в кроне Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172698 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172700 50 минут назад, HooLIGUN сказал: И wget обычно скачивает файл потому после флага O и стоит дефис второй. 50 минут назад, HooLIGUN сказал: Выполнить локальный скрипт через крон можно так вики арены предлагает оба варианта, значит оба варианта верны. только первый удобнее и запустить можно любой локальный и сторонний файл с любого сайта. Edited 22 сентября, 20213 yr by by_ix Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172700 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172701 В мускуле есть свой шедулер, зачем крон мучать? Включить события SET GLOBAL event_scheduler=ON; Создать событие CREATE EVENT updateevent ON SCHEDULE EVERY 1 DAY DO UPDATE table_test SET `value` = `value` + 1; Посмотреть события SHOW EVENTS; Удалить событие DROP EVENT updateevent; Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172701 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172702 1 минуту назад, Desti сказал: В мускуле есть свой шедулер для связки нескольких бд это вариант же не подойдёт. Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172702 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172703 3 минуты назад, by_ix сказал: для связки нескольких бд Это как? Не увидел такой задачи в вопросе ТС. Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172703 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172704 4 минуты назад, Desti сказал: Не увидел такой задачи в вопросе ТС. я в целом говорю. если ему потом нужно будет это, то вопрос с кроном и скриптами снова вернётся. Edited 22 сентября, 20213 yr by by_ix Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172704 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172705 В рамках поставленной задачи шедулер мускуля вполне удобное решение. Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172705 Share on other sites Больше вариантов
22 сентября, 20213 yr Author comment_172712 Мне удобнее cron, так как понятнее. А в мускуле непонятно, какой синтаксис, нужно убить кучу времени, чтобы правильно всё это добавить в маленьком черном окошечке терминала ssh. Edited 22 сентября, 20213 yr by Zero108 Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172712 Share on other sites Больше вариантов
22 сентября, 20213 yr comment_172713 Тогда есть еще один способ, вызывать не php, а mysql, cделать файлик с командами и вызывать его. #!/bin/bash /usr/bin/mysql --user=username --password=password --database=dbname --execute="UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag1', 'tag2')" /usr/bin/mysql --user=username --password=password --database=dbname --execute="UPDATE db_name.ibf_core_tags SET tag_text=REPLACE(tag_text, 'tag3', 'tag4')" Link to comment https://ipbmafia.ru/topic/23529-kak-povesit-vypolnenie-sql-komand-na-cron/?&do=findComment&comment=172713 Share on other sites Больше вариантов
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.