Выведите mysql базу данных к простому тексту (CSV) резервное копирование из командной строки

Похоже, вы пытаетесь указать поля в find , которые вы можете сделать следующим образом:

var options = {
  fields: {
    'profile.name': 1,
    'profile.description': 1,
    'profile.picture': 1,
    'profile.website': 1,
    'profile.country': 1
  }
};

Meteor.users.find({_id: {$in: myArray}}, options);

Однако, если это используется в публикации Я настоятельно рекомендую использовать только такие поля верхнего уровня, как:

Meteor.users.find({_id: {$in: myArray}}, {fields: {profile: 1}});

Подробнее о том, почему, см. этот вопрос .


Во втором вопросе вы можете просмотреть документы, возвращенные курсором, вызвав fetch . Например:

console.log(Posts.find({_id: {$in: postIds}}).fetch());

89
задан dreeves 21 January 2009 в 23:13
поделиться

4 ответа

Если можно справиться с table-at-a-time, и данные не являются двоичными, используйте -B опция к эти mysql команда. При использовании этой опции это генерирует TSV (разделенная вкладка) файлы, которые могут импортировать в Excel, и т.д., довольно легко:

% echo 'SELECT * FROM table' | mysql -B -uxxx -pyyy database

, С другой стороны, если у Вас есть прямой доступ к файловой системе сервера, используйте SELECT INTO OUTFILE , который может генерировать реальные файлы CSV:

SELECT * INTO OUTFILE 'table.csv'
    FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
    LINES TERMINATED BY '\n'
FROM table
138
ответ дан Alnitak 5 November 2019 в 14:28
поделиться

В самом MySQL можно определить вывод CSV как:

SELECT order_id,product_name,qty
FROM orders
INTO OUTFILE '/tmp/orders.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'

От http://www.tech-recipes.com/rx/1475/save-mysql-query-results-into-a-text-or-csv-file/

31
ответ дан Paul Tomblin 5 November 2019 в 14:28
поделиться

Выезд mk-parallel-dump, который является частью когда-либо полезного maatkit комплект инструментов . Это может вывести разделенные от запятой файлы с - csv опция.

Это может сделать Ваш целый дб, не определяя отдельные таблицы, и можно определить группы таблиц в backupset таблице.

Примечание, что это также выводит определения таблицы, представления и триггеры в отдельные файлы. Кроме того, обеспечивая полное резервное копирование в более универсально доступной форме, это также сразу восстановимый с mk-parallel-restore

2
ответ дан Paul Dixon 5 November 2019 в 14:28
поделиться

При реальной необходимости в "Резервном копировании" тогда, Вы также нуждаетесь в схеме базы данных, как определения таблицы, просматриваете определения, храните процедуры и так далее. Резервное копирование базы данных не является просто данными.

значение формата mysqldump для резервного копирования конкретно, что это очень Просто в использовании он для восстановления mysql баз данных. Резервное копирование, которое легко не восстанавливается, намного менее полезно. При поиске метода для надежного резервного копирования mysql данных к тому, таким образом, можно восстановить к mysql серверу тогда, я думаю, что необходимо придерживаться mysqldump инструмента.

Mysql свободен и работает на многих различных платформах. Установка нового mysql сервера, к которому я могу восстановить, проста. Я нисколько не волнуюсь по поводу неспособности установить mysql, таким образом, я могу сделать восстановление.

я был бы намного более взволнован по поводу пользовательского резервного копирования/восстановления на основе хрупкого формата как сбой csv/tsv. Вы уверены, что всех Ваших кавычек, запятых или вкладок, которые находятся в Ваших данных, оставить правильно и затем проанализированные правильно Вашим инструментом восстановления?

при поиске метода для извлечения данных тогда посмотрите несколько в других ответах.

3
ответ дан Zoredache 5 November 2019 в 14:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: