Ad Widget

Collapse

Mysql партицирование

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • fedyalutkovski
    Junior Member
    • Dec 2017
    • 2

    #1

    Mysql партицирование

    Всем доброго дня!
    Подскажите, актуальна ли данная статья http://unixadm.info/content/%D1%80%D...4-zabbix-mysql для текущей версии Zabbix'а ?
  • astrix89
    Senior Member
    • Jun 2017
    • 149

    #2
    Не очень, там для 2.х, хотя переделать проблем не составит.
    Делал по данному примеру с некоторой переработкой, https://www.zabbix.org/wiki/Docs/how...l_partitioning

    Comment

    • fedyalutkovski
      Junior Member
      • Dec 2017
      • 2

      #3
      Originally posted by astrix89
      Не очень, там для 2.х, хотя переделать проблем не составит.
      Делал по данному примеру с некоторой переработкой, https://www.zabbix.org/wiki/docs/how...l_partitioning
      А подробнее можно?

      Comment

      • astrix89
        Senior Member
        • Jun 2017
        • 149

        #4
        Там по сути все сводится к 3 действиям
        Первоночальное создание партиций, данная процедура делается 1 раз

        ALTER TABLE history PARTITION BY RANGE ( clock)
        (PARTITION p2017_11_20 VALUES LESS THAN (UNIX_TIMESTAMP("2017-11-21 00:00:00")) ENGINE = InnoDB,
        PARTITION p2017_11_21 VALUES LESS THAN (UNIX_TIMESTAMP("2017-11-22 00:00:00")) ENGINE = InnoDB);

        Добавление новых партиций

        ALTER TABLE history
        ADD PARTITION (
        PARTITION p2017_11_22
        VALUES LESS THAN (
        UNIX_TIMESTAMP("2017-11-23 00:00:00")));

        Удаление старых партиций

        ALTER TABLE history
        DROP PARTITION p2017_11_19;

        Вообщем то и все.

        Comment

        • Alex1987
          Member
          • Nov 2015
          • 55

          #5
          Originally posted by astrix89
          Там по сути все сводится к 3 действиям
          Первоночальное создание партиций, данная процедура делается 1 раз

          ALTER TABLE history PARTITION BY RANGE ( clock)
          (PARTITION p2017_11_20 VALUES LESS THAN (UNIX_TIMESTAMP("2017-11-21 00:00:00")) ENGINE = InnoDB,
          PARTITION p2017_11_21 VALUES LESS THAN (UNIX_TIMESTAMP("2017-11-22 00:00:00")) ENGINE = InnoDB);

          Добавление новых партиций

          ALTER TABLE history
          ADD PARTITION (
          PARTITION p2017_11_22
          VALUES LESS THAN (
          UNIX_TIMESTAMP("2017-11-23 00:00:00")));

          Удаление старых партиций

          ALTER TABLE history
          DROP PARTITION p2017_11_19;

          Вообщем то и все.
          Подскажите, как сделать партицию для таблицы acknowledges (zabbix 3.4, mariadb 10.2)?
          Я делаю так:
          ALTER TABLE `acknowledges` PARTITION BY RANGE ( clock)
          (PARTITION p2018_04 VALUES LESS THAN (UNIX_TIMESTAMP("2018-05-01 00:00:00") div 1) ENGINE = InnoDB);

          и получаю ошибку:
          ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails


          CREATE TABLE `acknowledges` (
          `acknowledgeid` bigint(20) unsigned NOT NULL,
          `userid` bigint(20) unsigned NOT NULL,
          `eventid` bigint(20) unsigned NOT NULL,
          `clock` int(11) NOT NULL DEFAULT 0,
          `message` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT '',
          `action` int(11) NOT NULL DEFAULT 0,
          PRIMARY KEY (`acknowledgeid`),
          KEY `acknowledges_1` (`userid`),
          KEY `acknowledges_2` (`eventid`),
          KEY `acknowledges_3` (`clock`),
          CONSTRAINT `c_acknowledges_1` FOREIGN KEY (`userid`) REFERENCES `users` (`userid`) ON DELETE CASCADE,
          CONSTRAINT `c_acknowledges_2` FOREIGN KEY (`eventid`) REFERENCES `events` (`eventid`) ON DELETE CASCADE
          ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin

          Как обойти это?
          Может кто сталкивался?

          Comment

          • astrix89
            Senior Member
            • Jun 2017
            • 149

            #6
            Ни как.
            https://dev.mysql.com/doc/refman/5.7...mitations.html

            Comment

            Working...