parent
3d8ccf2448
commit
2918ef555e
|
@ -40,7 +40,7 @@ class Migration
|
|||
|
||||
try {
|
||||
foreach ($queries as $query) {
|
||||
if (preg_match('/^OPTIMIZE /i', $query)) {
|
||||
if (preg_match('/^(?:OPTIMIZE|EXECUTE) /i', $query)) {
|
||||
$db->query($query);
|
||||
} else {
|
||||
$db->exec($query);
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
ALTER TABLE icinga_service_set
|
||||
DROP FOREIGN KEY icinga_service_set_host;
|
||||
|
||||
ALTER TABLE icinga_service_set
|
||||
ADD FOREIGN KEY icinga_service_set_host (host_id)
|
||||
REFERENCES icinga_host (id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE;
|
||||
|
||||
ALTER TABLE icinga_service
|
||||
DROP FOREIGN KEY icinga_service_service_set;
|
||||
|
||||
ALTER TABLE icinga_service
|
||||
ADD CONSTRAINT icinga_service_service_set FOREIGN KEY (service_set_id)
|
||||
REFERENCES icinga_service_set (id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE;
|
||||
|
||||
INSERT INTO director_schema_migration
|
||||
(schema_version, migration_time)
|
||||
VALUES (124, NOW());
|
||||
|
|
|
@ -0,0 +1,193 @@
|
|||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT * FROM information_schema.table_constraints
|
||||
WHERE
|
||||
table_schema = DATABASE()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND constraint_name = 'icinga_service_set_host'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP FOREIGN KEY icinga_service_set_host',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT 1
|
||||
FROM information_schema.statistics
|
||||
WHERE table_schema = SCHEMA()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND index_name = 'icinga_service_set_host'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP INDEX icinga_service_set_host',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT * FROM information_schema.table_constraints
|
||||
WHERE
|
||||
table_schema = DATABASE()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND constraint_name = 'icinga_service_set_ibfk_1'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP FOREIGN KEY icinga_service_set_ibfk_1',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT 1
|
||||
FROM information_schema.statistics
|
||||
WHERE table_schema = SCHEMA()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND index_name = 'icinga_service_set_ibfk_1'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP INDEX icinga_service_set_ibfk_1',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT * FROM information_schema.table_constraints
|
||||
WHERE
|
||||
table_schema = DATABASE()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND constraint_name = 'icinga_service_set_ibfk_2'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP FOREIGN KEY icinga_service_set_ibfk_2',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT 1
|
||||
FROM information_schema.statistics
|
||||
WHERE table_schema = SCHEMA()
|
||||
AND table_name = 'icinga_service_set'
|
||||
AND index_name = 'icinga_service_set_ibfk_2'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP INDEX icinga_service_set_ibfk_2',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT * FROM information_schema.table_constraints
|
||||
WHERE
|
||||
table_schema = DATABASE()
|
||||
AND table_name = 'icinga_service'
|
||||
AND constraint_name = 'icinga_service_service_set'
|
||||
)),
|
||||
'ALTER TABLE icinga_service DROP FOREIGN KEY icinga_service_service_set',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT 1
|
||||
FROM information_schema.statistics
|
||||
WHERE table_schema = SCHEMA()
|
||||
AND table_name = 'icinga_service'
|
||||
AND index_name = 'icinga_service_service_set'
|
||||
)),
|
||||
'ALTER TABLE icinga_service DROP INDEX icinga_service_service_set',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT * FROM information_schema.table_constraints
|
||||
WHERE
|
||||
table_schema = DATABASE()
|
||||
AND table_name = 'icinga_service'
|
||||
AND constraint_name = 'icinga_service_ibfk_1'
|
||||
)),
|
||||
'ALTER TABLE icinga_service DROP FOREIGN KEY icinga_service_ibfk_1',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
SET @stmt = (SELECT IF(
|
||||
(SELECT EXISTS(
|
||||
SELECT 1
|
||||
FROM information_schema.statistics
|
||||
WHERE table_schema = SCHEMA()
|
||||
AND table_name = 'icinga_service'
|
||||
AND index_name = 'icinga_service_ibfk_1'
|
||||
)),
|
||||
'ALTER TABLE icinga_service_set DROP INDEX icinga_service_ibfk_1',
|
||||
'SELECT 1'
|
||||
));
|
||||
|
||||
PREPARE stmt FROM @stmt;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
SET @stmt = NULL;
|
||||
|
||||
|
||||
ALTER TABLE icinga_service_set
|
||||
ADD CONSTRAINT icinga_service_set_host
|
||||
FOREIGN KEY host (host_id)
|
||||
REFERENCES icinga_host (id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE;
|
||||
|
||||
ALTER TABLE icinga_service
|
||||
ADD CONSTRAINT icinga_service_service_set
|
||||
FOREIGN KEY service_set (service_set_id)
|
||||
REFERENCES icinga_service_set (id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE;
|
||||
|
||||
INSERT INTO director_schema_migration
|
||||
(schema_version, migration_time)
|
||||
VALUES (126, NOW());
|
|
@ -541,8 +541,8 @@ CREATE TABLE icinga_service_set (
|
|||
PRIMARY KEY (id),
|
||||
UNIQUE KEY object_key (object_name, host_id),
|
||||
CONSTRAINT icinga_service_set_host
|
||||
FOREIGN KEY host (host_id)
|
||||
REFERENCES icinga_host (id)
|
||||
FOREIGN KEY host (host_id)
|
||||
REFERENCES icinga_host (id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||
|
@ -1370,4 +1370,4 @@ CREATE TABLE sync_run (
|
|||
|
||||
INSERT INTO director_schema_migration
|
||||
(schema_version, migration_time)
|
||||
VALUES (125, NOW());
|
||||
VALUES (126, NOW());
|
||||
|
|
Loading…
Reference in New Issue