Назад | Перейти на главную страницу

Сделайте так, чтобы mysqldump выводил операторы USE или полные имена таблиц при выгрузке одной таблицы с предложением where

Можно ли заставить mysqldump выводить операторы USE для единственного (частичного) дампа таблицы?

У меня уже есть несколько сценариев, которые я хотел бы использовать повторно, которые запускают mysqldump с некоторыми аргументами и применяют их к удаленному серверу.

Однако, поскольку я не удосужился разобрать все аргументы mysqldump, и нет USE в дампе удаленный сервер сообщает, что база данных не выбрана.

Я программист больше, чем кто-либо другой, поэтому я могу легко использовать sed для изменения дампа перед его применением в худшем случае, но эти сценарии не позволят мне сделать это, поскольку у меня нет доступа к дампу между создание и применение.

РЕДАКТИРОВАТЬ: возможность вывода полных имен таблиц также может решить мою проблему

mysqldump можно уговорить выступить по запросу, объединив --databases (принудительно использовать операторы USE в базах данных) и --tables (заставить следующие аргументы оцениваться как таблицы) flags:

mysqldump -B dbname --tables tablename