Если вдруг кто-то пришёл сюда в поисках решения для похожего вопроса:
delete FROM roundcubemail.contacts WHERE (email LIKE '%@MYDOMAIN') AND (user_id=NUMBER);
CREATE TABLE roundcubemail.temp AS SELECT username, name, created, employeeid FROM vmail.mailbox;
INSERT INTO roundcubemail.contacts (name, email, surname, user_id) SELECT name, username, name, NUMBER FROM roundcubemail.temp;
drop TABLE roundcubemail.temp;
, где
NUMBER - идентификатор пользователя, который создал globaladdressbook;
roundcubemail.temp - временная таблица для миграции данных.
Можно обойтись без temp-таблицы, но мне она понадобилась, чтобы удалить из общего справочника разные технические адреса, чтобы они пользователям не мешались.
Всё это дело в скрипт, а затем в Cron.