PostgreeSQL: бекап и востановление таблиц по маске

Задача: сделать бекап таблиц по маске и их восстановление

Решение:

для создания бекапа добавим ключи:

—if-exists — если есть, то удалить таблицу

—inserts — вместо copy использовать nsert

-c — очистка данных перед вставкой

Bitrix: восстановление пароля администратора

Задача: восстановить утерянный пароль администратора

Решение 1: создать в корне сайта файл вида:

, где вместо цифры 1 можно использовать id вашего пользователя. Но обычно подходит и 1. Далее необходимо его открыть в браузере

Решение 2: если мы помним логин, и есть доступ к БД, то

  1. Ищем id пользователя с правами администратора:

Меняем пароль на любимый:

PHP: как проверить, вызван ли метод класса из экземпляра, или статически

Задача: при вызове метода класса, использовать разный код в зависимости от того, как вызвана функция: статически или из класса. Т.е. результат выполнения кода:

и кода:

, должен быть разным.

Решение:

объявим в классе статическую переменную, которая будет изменять свое значение, если был создан экземпляр класса.

RabbitMQ: отложенные сообщения

Задача: организовать доставку сообщения «слушателю» спустя какое-то время, а не сразу

Решение: одним из способов реализации является использование модуля rabbitmq-delayed-message-exchange.

Установка для Ubuntu:

  1. Скачать подходящую версию модуля для версии вашего RabbitMQ в формате *.ez
  2. Положить его в папку (в моём случае) /usr/lib/rabbitmq/lib/rabbitmq_server-3.8.9/plugins
  3. Включить плагин

Использование:

Пример постановки в очередь:

Пример слушателя:

1С: Узнать позицию в цикле

Задача: узнать текущую позицию для цикла вида

Решение: учить матчасть (с)

1 2