to post messages and comments.

← All posts tagged MySQL

В процессе перевода проекта с MySQL на PostgreSQL возникла резонная проблема миграции существующей базы. Попробовал несколько софтин, остановился на этой — github.com Правда обнаружились проблемы при миграции в режиме "quote identifiers" (т.е. когда сохраняется регистр названий таблиц/колонок/прочего). Запатчил, сделал пул-реквест. Если что — github.com — тут есть версия с фиксом. Увы, не смог убить один баг, а именно кривую конвертацию enum'ов в этом самом "quote identifiers". Возможно что-то посоветует разработчик.

Забавное: первоначально софтина была на Tcl (1.х), потом переписали на Python (2.x) и теперь на Common Lisp (3.x). Как это прокомментировал сам разработчик: "The pgloader version 1.x from a long time ago had been developped in TCL. When faced with maintaining that code, the new emerging development team (hi!) picked python instead because that made sense at the time. So pgloader version 2.x were in python.

The current version of pgloader is the 3.x series, which is written in Common Lisp for better development flexibility, run time performances, real threading."

Вопрос к дебианщикам: есть неизвратный способ запускать несколько instance'ов MariaDB под Debian? Неизвратный == без создания 100500 init-скриптов и более/менее нормально вписывающийся в существующую систему debian-скриптов.

Вопрос достаточно важный, потому рекоменд приветствуется.

жуец, а есть тут эксперты по liquibase? Как этой штукенцией порезать таблицу на несколько более мелких?

Ситуация следующая: есть здоровая (4кк записей) табличка с данными. Хочется ее порезать по некоторому полю (например Date). Нет, я хочу не partitions, а именно сделать несколько таблиц с суффиксом. Понятно, что можно посмотреть таблицу, и вручную нахерачить SQL'ки для всех диапазонов. Но этот вариант плох тем, что если применять этот ченжсет позже его написания, данных в таблице будет на больше "сегментов", чем предусмотрено.

Вопрос в следующем: есть ли готовые средства (гугл молчит, собака) под liquibase для осуществления подобной операции или костылить свой custom-скриптик?

Рек, как обычно, приветствуется :)

Дано: MySQL база, несколько таблиц (InnoDB) с foreign key ON DELETE CASCADE. Есть DELETE-запрос к одной из таблиц.

Внимание, вопрос! Существует ли способ узнать, будут ли удалены какие-то зависимые строки по каскаду или нет при выполнение конкретно данного DELETE-запроса? Т.е. я хочу получить от базы ответ "нет" тогда, и только тогда, если будут удалены лишь записи непосредственно из таблицы, упомянутой в DELETE.

Господа, скажите, а почему в MySQL примак (точнее хотя бы 1 его колонка) обязательно должен быть упомянут в выражении разбивки? Т.е. допустим у меня есть таблица из 2х колонок: ID (INT), Date (TIMESTAMP). Если ID сделать примаком, то я не могу сделать разбивку таблицы только по Date. Я чего-то не понимаю в СУБД-строении или разрабы таки наркоманы?

Ветка MySQL — 5.1.