Копирование ДБ
Копирование ДБ
При копированию БД появляются ошибки:
1. 2. Отсутствует таблица, которая находиться в другой БД, а в этой БД сделано представление.
Со второй ошибкой - ок, справлюсь, а что делать с первой ошибкой?
1. 2. Отсутствует таблица, которая находиться в другой БД, а в этой БД сделано представление.
Со второй ошибкой - ок, справлюсь, а что делать с первой ошибкой?
Re: Копирование ДБ
Мы исследуем данную проблему и свяжемся с Вами в ближайшее время.
Re: Копирование ДБ
Не могли бы сообщить нам версии Source и Target серверов?
Также, пожалуйста, воспроизведите проблему и пришлите нам сгенерированный лог файл.
Также, Вы можете попробовать определить проблему по данному лог файлу.
Вы можете прислать ответ в нашу службу поддержки на supportATdevartDOTcom и alexaATdevartDOTcom .
Также, пожалуйста, воспроизведите проблему и пришлите нам сгенерированный лог файл.
Также, Вы можете попробовать определить проблему по данному лог файлу.
Вы можете прислать ответ в нашу службу поддержки на supportATdevartDOTcom и alexaATdevartDOTcom .
Re: Копирование ДБ
Версии серверов Source и Target одинаковые MariaDb 10.2.13
Ошибку постараюсь воспроизвести и передать детали на почту.
Ошибку постараюсь воспроизвести и передать детали на почту.
Re: Копирование ДБ
Пример таблицы, которая дает ошибку при копировании БД:
Код: Выделить всё
CREATE TABLE test (
test varchar(250) NOT NULL
)
ENGINE = CONNECT
TABLE_TYPE = CSV FILE_NAME = 'test.csv' HEADER = 1 SEP_CHAR = ',' QUOTED = 1
CHARACTER SET utf8
COLLATE utf8_unicode_ci
ROW_FORMAT = DYNAMIC;
Re: Копирование ДБ
Таблица, которая давала первоначальную ошибку выглядит следующим образом: MariaDB тоже дает ошибку. Таблица было сделана давно и под другую версию сервера.
Если ее изменить на, то ошибки не будет.
Спасибо за помощь!
Код: Выделить всё
CREATE TABLE test (
Rows int(11) not NULL
);
Если ее изменить на
Код: Выделить всё
CREATE TABLE test (
`Rows` int(11) not NULL
);
Спасибо за помощь!
Последний раз редактировалось SergeyW Вс 25 мар 2018 07:03, всего редактировалось 1 раз.
Re: Копирование ДБ
Но попутно выяснилось, что dbForge for MySQL не умеет работать с таблицами в которых в качестве имени столбца используется зарезервированное слово.
dbForge for MySQL убирает кавычки "`" и изменить, скопировать и т.д. такой объект в dbForge for MySQL уже не получиться. Поэтому проблема актуальна.
Код: Выделить всё
CREATE TABLE test (
`Rows` int(11) not NULL
);
Re: Копирование ДБ
Спасибо!
Две проблемы!?
Две проблемы!?
Re: Копирование ДБ
Бекап делается для одной базы. В случае наличия зависимостей необходимо копировать все связанные БД в нужном порядке.
Re: Копирование ДБ
Не понял о каких зависимостях идет речь?
Я говорю о двух выявленных проблемных вопросах:
1. Не копируются присоединенные таблицы, например, "TABLE_TYPE = CSV".
2. Не копируются (не возможно изменить) таблицы у которых имена столбцов совпадают с зарезервированными словами, например, ROWS.
Я говорю о двух выявленных проблемных вопросах:
1. Не копируются присоединенные таблицы, например, "TABLE_TYPE = CSV".
2. Не копируются (не возможно изменить) таблицы у которых имена столбцов совпадают с зарезервированными словами, например, ROWS.
Re: Копирование ДБ
Наш ответ относился к ошибке, касательно представления на таблицу из другого сервера. dbForge такие зависимости не обрабатывает.1. Не копируются присоединенные таблицы, например, "TABLE_TYPE = CSV".
Теперь Вы пишете, что таблица ссылается на csv файл. Этот файл находится в директории сервера. dbForge копирует в данном случае DDL объекта.
Если Вы копируете базу в рамках одного инстанса сервера, то все будет работать, а если на другой сервер, то файл нужно вручную копировать. Файлы на сервере dbForge не копирует. Функциональность copy databases работает по принципу backup-restore.
Мы устраним данную проблему в следующей версии 7.4.2. Не копируются (не возможно изменить) таблицы у которых имена столбцов совпадают с зарезервированными словами, например, ROWS.
Re: Копирование ДБ
У меня такое впечатление, что мы друг друга не понимаем. Вы про Еремю, я про Фому.
Копирование файла не нужно! Его вообще может и не быть. Это совершенно не важно.
Важно, что подобные таблицы, где есть "... ENGINE = CONNECT TABLE_TYPE ..." дают ошибку при копировании БД!
Попробуйте у себя воспроизвести эту ошибку и, думаю, поймете в чем дело.
Копирование файла не нужно! Его вообще может и не быть. Это совершенно не важно.
Важно, что подобные таблицы, где есть "... ENGINE = CONNECT TABLE_TYPE ..." дают ошибку при копировании БД!
Попробуйте у себя воспроизвести эту ошибку и, думаю, поймете в чем дело.
Re: Копирование ДБ
Конечно. Но странно, у Вас не получается ее воспроизвести?