Linux: при использовании rm ошибка Argument list too long

Ошибка возникает при очень большом количестве файлов в каталоге. Фактически оно обычно ограничено 2097152 штуками (getconf ARG_MAX).

Решение:

find . -type f -delete

Или просто удалите целиком веь каталог и создайте вновь

Memcached: MemcachePool::get(): Server localhost (tcp 11211, udp 0) failed with: Network timeout

После очередной перезагрузки сервера, при работе с memcached из PHP стали валиться ошибки вида:


MemcachePool::get(): Server localhost (tcp 11211, udp 0) failed with: Network timeout

Решение: перевел memcached в режим debug и увидиел, что не может создать папку /var/run/memcached.socket (premission denied). Для того чтобы мог сам создавать, в /etc/memcached.conf добавил возможность запуска сервиса из под root:

-u root

PostgreeSQL: контроль уникальности вставки

Хороший вариант: возложить контроль уникальности вставляемых данных, на уровень БД. Если это по каким-то причинам не возможно, то можно попробовать такой вариант:

insert into users_groups_filling (user_id,user_group) 
select  :user_id,:user_group 
where 
 NOT EXISTS (
	 SELECT id from users_groups_filling where user_id=:user_id and user_group=:user_group
 )

RouterOs: как на Mikrotick добавить еще одну WiFi сеть (без изоляции)

Задача: добавить еще одну wifi сеть с доступом в интернет, с устройствами не изолированными друг от друга

Решение:

1) Добавим виртуальный интерфейс:

Добавим SSID и профиль безопасности:

Добавим адрес для интерфейса (IP->Adresses), и добавим в интерфейс wlan2 в мост (Brige):

SQL: выборка последних значений по дате из БД

Задача: в таблице хранятся тарифы «сплошным навалом», необходимо вытащить последние значения всех тарифов.

Решение:

select 
reg_tarifs.date as dttime,
reg_tarifs.tarif as tarif,
reg_tarifs.zone as zone_num,
enum_zones.name as tarzone
from reg_tarifs
inner join enum_zones on enum_zones.id=reg_tarifs.zone
inner join 
(select 
  max(date) as maxdt,zone 
from reg_tarifs
where ezs=5
group by  zone 
) as max
on max.maxdt=reg_tarifs.date and max.zone=reg_tarifs.zone
1 9 10 11 12 13 59