Модератор
Yui
(@fierevere)
永子
у хостера есть ф-ция Cron Jobs.
т.е. вы хотите без WP?
Задание для crontab:
1,16,31,46 * * * * mysql --defaults-extra-file=/путь/к/домашней/папке/mysql.crd -D имя_БД < /путь/к/домашней/папке/script.sql > /dev/null 2>&1
в script.sql кладете ваши запросы sql
в mysql.crd кладете данные для доступа к БД
[client]
user = пользователь
password = пароль
host = 127.0.0.1
port = 3306
-
Ответ изменён 8 лет, 5 месяцев назад пользователем
Yui.
Большое спасибо. Можно через WP Cron или Cron jobs.
Сейчас попробую.
Что-то я попробовал, но вроде не работает.
Добавил свою почту для получения логов
получил ошибку:
/usr/local/cpanel/bin/jailshell: /public_html/cgi-bin/script.sql: No such file or directory
Далее я исправил код:
1,16,31,46 * * * * mysql --defaults-extra-file=/home/presvizb/public_html/cgi-bin/mysql.crd -D имя БД < /home/presvizb/public_html/cgi-bin/script.sql > /dev/null 2>&1
Панель управления хостингом CPanel. Частота обновления 15 мин Cron Job. Что я делаю не так?)))
Содержимое script.sql
UPDATE wp_posts SET post_content = REPLACE(post_content, 'Oxu.Az', 'Pressaz24.info');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'www.oxu.az', 'www.pressaz24.info');
UPDATE wp_posts SET post_excerpt = REPLACE(post_excerpt, 'Oxu.Az', 'Pressaz24.info');
UPDATE wp_posts SET post_excerpt = REPLACE(post_excerpt, 'www.oxu.az', 'www.pressaz24.info');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'A.S.', '.');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'Aytən Sadıqzadə', '.');
Содержимое mysql.crd
[client]
user = имя пользователя
password = мой пароль
host = 127.0.0.1
port = 3306
Буду признателен за помощь!
-
Ответ изменён 8 лет, 5 месяцев назад пользователем
Phoenix.
Модератор
Yui
(@fierevere)
永子
/usr/local/cpanel/bin/jailshell: /public_html/cgi-bin/script.sql: No such file or directory
вам путь урезается jailshellом
попробуйте так
1,16,31,46 * * * * mysql —defaults-extra-file=/public_html/cgi-bin/mysql.crd -D имя БД < /public_html/cgi-bin/script.sql > /dev/null 2>&1
/usr/local/cpanel/bin/jailshell: /public_html/cgi-bin/script.sql: No such file or directory
Эта ошибка возникла, когда я указал путь:
1,16,31,46 * * * * mysql —defaults-extra-file=/public_html/cgi-bin/mysql.crd -D имя БД < /public_html/cgi-bin/script.sql > /dev/null 2>&1
Когда я изменил код на:
1,16,31,46 * * * * mysql --defaults-extra-file=/home/presvizb/public_html/cgi-bin/mysql.crd -D имя БД < /home/presvizb/public_html/cgi-bin/script.sql > /dev/null 2>&1
Я не получаю писем с ошибками… но скрипт сам тоже не работает)
Модератор
Yui
(@fierevere)
永子
> /dev/null 2>&1
вот эта конструкция убирает отсылку писем из крона
Большое спасибо за ответ)
Отсылку писем-то конструкция > /dev/null 2>&1
убирает.
Но sql скрипт не работает. По идее каждые 15 мин крон должен заменять в БД нужные строки, но не работает…
Приходиться вручную подавать SQL запрос следующего вида:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'Oxu.Az', 'Pressaz24.info');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'www.oxu.az', 'www.pressaz24.info');
UPDATE wp_posts SET post_excerpt = REPLACE(post_excerpt, 'Oxu.Az', 'Pressaz24.info');
UPDATE wp_posts SET post_excerpt = REPLACE(post_excerpt, 'www.oxu.az', 'www.pressaz24.info');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'A.S.', '.');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'Aytən Sadıqzadə', '.');
Все разобрался уже) Большое спасибо за помощь.
Нужно было указать путь:
/home/[ваш_логин]/public_html/cgi-bin/script.sql
/home/[ваш_логин]/public_html/cgi-bin/mysql.crd
+ правильная команда
mysql —defaults-extra-file=/home/[ваш_логин]/public_html/cgi-bin/mysql.crd -D presvizb_press < /home/[ваш_логин]/public_html/cgi-bin/script.sql > /dev/null 2>&1
(без 1,16,31,46 * * * *)