Here are the full changes required.
-- iredadmin
ALTER TABLE `iredadmin`.`deleted_mailboxes`
ADD PRIMARY KEY (`id`);
;
ALTER TABLE `iredadmin`.`updatelog`
ADD PRIMARY KEY (`id`);
;
ALTER TABLE `iredadmin`.`log`
ADD PRIMARY KEY (`id`);
;
-- RoundCube
ALTER TABLE `roundcubemail`.`cache_index`
DROP FOREIGN KEY `user_id_fk_cache_index`;
ALTER TABLE `roundcubemail`.`cache_index`
ADD CONSTRAINT `user_id_fk_cache_index`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`cache`
DROP FOREIGN KEY `user_id_fk_cache`;
ALTER TABLE `roundcubemail`.`cache`
ADD CONSTRAINT `user_id_fk_cache`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`cache_messages`
DROP FOREIGN KEY `user_id_fk_cache_messages`;
ALTER TABLE `roundcubemail`.`cache_messages`
ADD CONSTRAINT `user_id_fk_cache_messages`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`cache_thread`
DROP FOREIGN KEY `user_id_fk_cache_thread`;
ALTER TABLE `roundcubemail`.`cache_thread`
ADD CONSTRAINT `user_id_fk_cache_thread`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`contactgroupmembers`
DROP FOREIGN KEY `contact_id_fk_contacts`,
DROP FOREIGN KEY `contactgroup_id_fk_contactgroups`;
ALTER TABLE `roundcubemail`.`contactgroupmembers`
ADD CONSTRAINT `contact_id_fk_contacts`
FOREIGN KEY (`contact_id`)
REFERENCES `roundcubemail`.`contacts` (`contact_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
ADD CONSTRAINT `contactgroup_id_fk_contactgroups`
FOREIGN KEY (`contactgroup_id`)
REFERENCES `roundcubemail`.`contactgroups` (`contactgroup_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`contactgroups`
DROP FOREIGN KEY `user_id_fk_contactgroups`;
ALTER TABLE `roundcubemail`.`contactgroups`
ADD CONSTRAINT `user_id_fk_contactgroups`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`contacts`
DROP FOREIGN KEY `user_id_fk_contacts`;
ALTER TABLE `roundcubemail`.`contacts`
ADD CONSTRAINT `user_id_fk_contacts`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`dictionary`
DROP FOREIGN KEY `user_id_fk_dictionary`;
ALTER TABLE `roundcubemail`.`dictionary`
ADD CONSTRAINT `user_id_fk_dictionary`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`identities`
DROP FOREIGN KEY `user_id_fk_identities`;
ALTER TABLE `roundcubemail`.`identities`
ADD CONSTRAINT `user_id_fk_identities`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
ALTER TABLE `roundcubemail`.`searches`
DROP FOREIGN KEY `user_id_fk_searches`;
ALTER TABLE `roundcubemail`.`searches`
ADD CONSTRAINT `user_id_fk_searches`
FOREIGN KEY (`user_id`)
REFERENCES `roundcubemail`.`users` (`user_id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION;
-- Sogo
ALTER TABLE `sogo`.`sogo_acl`
ADD COLUMN `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT FIRST,
ADD PRIMARY KEY (`id`);
;
ALTER TABLE `sogo`.`sogo_alarms_folder`
ADD COLUMN `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT FIRST,
ADD PRIMARY KEY (`id`);
;
-- vmail
ALTER TABLE `vmail`.`deleted_mailboxes`
ADD PRIMARY KEY (`id`);
;