Иконка ресурса

Полезные SQL запросы

в целом, DiWorm, прав - всё и всюду заменилось, что и требовалось. Но на самом сайте - никаких изминений. Остается нерешенным лишь - как зачистить кэш ксени?
IgorG, могу ли ознакомится с вашим полным вариантом запроса?
 
могу ли ознакомится с вашим полным вариантом запроса?
Да. Вот в этом примере я заменял все ссылки вида forum.odin.com/bla-bla-bla на talk.plesk.com/bla-bla-bla в текстах сообщений:

Код:
mysql> update xf_post set message = replace(message,'forum.odin','talk.plesk') where message regexp 'forum.odin.com*';
 
Последнее редактирование модератором:
в целом, DiWorm, прав - всё и всюду заменилось, что и требовалось. Но на самом сайте - никаких изминений. Остается нерешенным лишь - как зачистить кэш ксени?
IgorG, могу ли ознакомится с вашим полным вариантом запроса?
В это и проблема ксена, его кеширование... По этому такие вещи лучше вообще делать через стандартные дата-врайтеры, но копаться придется не мало в поисках нужного.
 
IgorG, если зреть в корень, то ваш запрос более правильный в рамках моей конкретной задачи. Но сделано уже то, что сделано:-)
Не подскажите, в какой из таблиц хранятся подписи юзеров? Или сразу запрос, если возможно, чтобы и там пройтись заменой.
И на счет кэша: неужели таки нет универсального решения, чтобы его вычестить? где-то же он должен храниться....
 
Последнее редактирование:
Не подскажите, в какой из таблиц хранятся подписи юзеров?
Поле signature в таблице xf_user_profile. Запрос по аналогии можете сделать.
Ну и Rebuild Caches в админке есть :)
 
Последнее редактирование:
боюсь, одним Rebuild Caches в админке сыт не будешь, результата никакого нет - все дело в memcached
Код:
$config['cache']['backend'] = 'Memcached';
как сбросить его? ребут сервера не помог, "птичку" с отложенным sql-запросом в "производительности" сняла - результат пока не наблюдается:(
 
сделала через телнет:
Код:
telnet localhost 11211
flush_all
quit
перестроила кеш, с "птичкой", которая удаляет старый индекс.
Очередной ребут сервера (крайние меры).
Результата - нет, за исключением сообщений в профилях - там замена подхватилась (запрос был идентичен, разные таблицы). Текст основных сообщений в самой БД форума изменился как надо - он же выводится в любом нужном сообщении, если (как администратор или автор) попробовать его отредактировать - в окне редактора изминения есть. Для всего остального (как гость, рид онли) - замена остается недоступной. Чудеса да и только...
Как быть в такой ситуации?
 
Пытаюсь поменять текст по всем сообщениям форума с "названия1", на "название2":
Код:
UPDATE xf_post SET message = REPLACE(message,'старое_значение','новое_значение');

с аналогичным запросом для замены текста во всех подписях
Код:
UPDATE xf_user_profile SET signature = REPLACE(signature,'старое_значение','новое_значение');

и (можно) профилях
Код:
UPDATE xf_profile_post_comment SET message = REPLACE(message,'старое_значение','новое_значение');
 
как сбросить его?
Можно просто элементарно перезапустить его, service memcached restart - мемкеш держит данные в оперативной памяти и с рестатом демона будет чист ака слеза младенца.
 
добрый день!
Если выбрано "не показывать кто как проголосовал", но больно хочется знать - существуют ли способы определить кто из пользователей отдал тот или иной голос в конкретном голосовании?
 
добрый день!
Если выбрано "не показывать кто как проголосовал", но больно хочется знать - существуют ли способы определить кто из пользователей отдал тот или иной голос в конкретном голосовании?
Ну, наверное, что-то вроде:

Код:
select * from xf_poll_vote where user_id=xxxxx and vote_date between UNIX_TIMESTAMP('2016-09-01 00:00:01') and UNIX_TIMESTAMP('2016-09-30 23:59:59');
 
Ребят а как можго из базы sql экспортировать зарегистрированных пользователей?
 
Ребят а как можго из базы sql экспортировать зарегистрированных пользователей?
Вот только так же просто вставить на другой форум не получится. Делайте через встроенный импорт, там просто таблиц-то много переносить.
 
А кто нибудь пользуется плагином Mark Posts as Best Answer?
Нужен запрос для подсчета полученных за месяц best answer-ов для юзеров.
 
Есть необходимость переименовать в районе 100 пользователей, и через определенное время вернуть ники обратно, может кто подсказать подходящий запрос?

UPD: мб кому то кроме меня будет нужно.
Код:
UPDATE `xf_user` SET `username` = 'test234' WHERE `xf_user`.`user_id` = 6
Вместо test234 пишем ник, на который хотим менять
В `user_id` = 6 пишем ид нашей жерты.
 
Последнее редактирование:
Подписать пользователей на оповещения:
SQL:
INSERT INTO xf_thread_watch (user_id, thread_id, email_subscribe)
SELECT user_id, thread_id, 1
        FROM xf_thread
ON DUPLICATE KEY UPDATE
email_subscribe = VALUES(email_subscribe);
 
Последнее редактирование:
Продублирую вопрос сюда из этой темы
Подскажите пожалуйста, какой запрос выполнить, что бы отписать всех пользователей от определённой темы, но что бы в последующем они могли снова подписаться на неё? Т.е. сделать подобие "сброса" и обнуление подписки на определённую тему.
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу