protected function dumpTriggers()
    {
        if ($this->config->triggers === true && version_compare($this->version, '5.0.10') >= 0) {
            $triggers = $this->pdo->prepare('SHOW TRIGGERS');
            $triggers->execute();

            while ($a = $triggers->fetch(\PDO::FETCH_ASSOC)) {
                if (in_array($a['Table'], (array) $this->config->ignore, true)) {
                    continue;
                }

                if ((string) $this->config->prefix !== '' && strpos($a['Table'], $this->config->prefix) !== 0) {
                    continue;
                }

                $this->write("\n-- Trigger structure `{$a['Trigger']}`\n", false);
                $this->write('DROP TRIGGER IF EXISTS `'.$a['Trigger'].'`');

                $query = "CREATE TRIGGER `{$a['Trigger']}`".
                    " {$a['Timing']} {$a['Event']} ON `{$a['Table']}`".
                    " FOR EACH ROW\n{$a['Statement']}";

                $delimiter = $this->getDelimiter('//', $query);
                $this->write("DELIMITER {$delimiter}\n{$query}\n{$delimiter}\nDELIMITER ;", false);
            }
        }
    }