Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/roundcube/roundcubemail.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/SQL
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2020-07-18 15:14:33 +0300
committerAleksander Machniak <alec@alec.pl>2020-07-18 15:14:33 +0300
commitcd2ec14b36dbe5bcfae12cf9fea338f78bccfc1d (patch)
treeacdbd86815470569160c66cfeb226513c562e75c /SQL
parent790253d4225451cefef4a20c7c1584cd081f130b (diff)
Fix MySQL DDL update 2020020101.sql (#7277)
Diffstat (limited to 'SQL')
-rw-r--r--SQL/mysql/2020020101.sql48
1 files changed, 48 insertions, 0 deletions
diff --git a/SQL/mysql/2020020101.sql b/SQL/mysql/2020020101.sql
index 371d6d596..e024ccaa4 100644
--- a/SQL/mysql/2020020101.sql
+++ b/SQL/mysql/2020020101.sql
@@ -1,3 +1,30 @@
+-- Dropping foreign keys and changing table format is nedded for some versions of MySQL (#7277)
+ALTER TABLE `cache` DROP FOREIGN KEY `user_id_fk_cache`;
+ALTER TABLE `cache_index` DROP FOREIGN KEY `user_id_fk_cache_index`;
+ALTER TABLE `cache_thread` DROP FOREIGN KEY `user_id_fk_cache_thread`;
+ALTER TABLE `cache_messages` DROP FOREIGN KEY `user_id_fk_cache_messages`;
+ALTER TABLE `contactgroups` DROP FOREIGN KEY `user_id_fk_contactgroups`;
+ALTER TABLE `contacts` DROP FOREIGN KEY `user_id_fk_contacts`;
+ALTER TABLE `dictionary` DROP FOREIGN KEY `user_id_fk_dictionary`;
+ALTER TABLE `filestore` DROP FOREIGN KEY `user_id_fk_filestore`;
+ALTER TABLE `identities` DROP FOREIGN KEY `user_id_fk_identities`;
+ALTER TABLE `searches` DROP FOREIGN KEY `user_id_fk_searches`;
+
+ALTER TABLE `session` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `users` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `cache` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `cache_shared` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `cache_index` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `cache_thread` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `cache_messages` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `contacts` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `contactgroups` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `identities` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `dictionary` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `searches` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `filestore` ROW_FORMAT=DYNAMIC;
+ALTER TABLE `system` ROW_FORMAT=DYNAMIC;
+
ALTER TABLE `session` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE `users` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE `cache` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
@@ -19,3 +46,24 @@ ALTER TABLE `cache_shared` CHANGE `cache_key` `cache_key` varchar(255) BINARY NO
ALTER TABLE `cache_index` CHANGE `mailbox` `mailbox` varchar(255) BINARY NOT NULL;
ALTER TABLE `cache_thread` CHANGE `mailbox` `mailbox` varchar(255) BINARY NOT NULL;
ALTER TABLE `cache_messages` CHANGE `mailbox` `mailbox` varchar(255) BINARY NOT NULL;
+
+ALTER TABLE `cache`
+ ADD CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `cache_index`
+ ADD CONSTRAINT `user_id_fk_cache_index` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `cache_thread`
+ ADD CONSTRAINT `user_id_fk_cache_thread` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `cache_messages`
+ ADD CONSTRAINT `user_id_fk_cache_messages` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `contactgroups`
+ ADD CONSTRAINT `user_id_fk_contactgroups` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `contacts`
+ ADD CONSTRAINT `user_id_fk_contacts` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `dictionary`
+ ADD CONSTRAINT `user_id_fk_dictionary` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `filestore`
+ ADD CONSTRAINT `user_id_fk_filestore` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `identities`
+ ADD CONSTRAINT `user_id_fk_identities` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
+ALTER TABLE `searches`
+ ADD CONSTRAINT `user_id_fk_searches` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;