Создание дампа MySQL5

DeadMorozBLR

Новичок
Создание дампа MySQL5

Столкнулся при создании/импорте дампа со следующей проблемой: неправильно создается кусок дампа, в котором описываются представления.

К примеру есть представления A, B (использует С) и С.

Дамп создается в алфавитном порядке:

1. Создай A;
2. Создай B;
3. Создай C;

При этом, при импортировании дампа, на втором шаге выполнение валится, т.к. на момент создания B представления С которое оно использует, еще не существует.

Перепробовал phpMyAdmin, MySQL-Front и Navicat (до mysqldump руки не дошли) - все создают одинаково кривые дампы.

Может быть есть какая-то опция/команда/переменная СУБД, чтобы такой дамп всё-таки можно было импортировать, и СУБД не ругалась на несуществующие таблицы, или есть утилита, которая создает сперва представления, которые не используют другие представления?
 

DeadMorozBLR

Новичок
@Сергей Тарасов у меня MySQL5 стоит на нестандартном порту, и при попытке сделать дамп с него mysqldump вываливается с Segmentation fault. А больше попробовать негде.
 

Сергей Тарасов

Профессор
DeadMorozBLR
Хм... У меня тоже поимнится пятерка стояла на другом порту.. ивсе вроде работало... Мнэ... А ты уверен, что в этом дело?
Првильно запускаешь?.. От той версии дампер?..

ЗЫ: C SegFault вылетает дампер или сервер?
 

DeadMorozBLR

Новичок
Ну по крайей мере, если я не указываю порт, он нормально коннектится к MySQL 4.1 и делает свое черное дело. Да, наверное mysqldump - от 4-ки. Валится сам дампер.

UPD: добрался-таки до mysqldump от 5-го - то же самое, в алфавитном порядке.
 

Апельсин

Оранжевое создание
mysqldump сначала создает базовые таблицы с такими же как у view именем, а потом прямо перед созданием view дропает их.

Т.е. у вас будет в дампе:

create table a ..;
create table b ..;
create table c ..;

drop table a ..;
create view a ..;

drop table b ..;
create view b ..; //создается без проблем т.к. таблица с именем с присутствует

drop table c .. ;
create view c ..;
 

DeadMorozBLR

Новичок
@Апельсин спасибо, Вы правы, так и есть. Т.е. выходит, что на данный момент mysqldump - это единственная утилита для создания дампов? В любом случае лучше чем ничего.
 
Сверху