По умолчанию mysqldump
выполняется резервное копирование всей базы данных. Мне нужно сделать резервную копию одной таблицы в MySQL. Является ли это возможным? Как мне его восстановить?
По умолчанию mysqldump
выполняется резервное копирование всей базы данных. Мне нужно сделать резервную копию одной таблицы в MySQL. Является ли это возможным? Как мне его восстановить?
Ответы:
свалка
mysqldump db_name table_name > table_name.sql
Сброс из удаленной базы данных
mysqldump -u <db_username> -h <db_host> -p db_name table_name > table_name.sql
Для дальнейшего использования:
http://www.abbeyworkshop.com/howto/lamp/MySQL_Export_Backup/index.html
Восстановить
mysql -u <user_name> -p db_name
mysql> source <full_path>/table_name.sql
или в одну строку
mysql -u username -p db_name < /path/to/table_name.sql
Предоставлено: Джон МакГрат
свалка
mysqldump db_name table_name | gzip > table_name.sql.gz
Восстановить
gunzip < table_name.sql.gz | mysql -u username -p db_name
пытаться
for line in $(mysql -u... -p... -AN -e "show tables from NameDataBase");
do
mysqldump -u... -p.... NameDataBase $line > $line.sql ;
done
Мы можем взять дамп mysql любой конкретной таблицы с любым заданным условием, как показано ниже
mysqldump -uusername -p -hhost databasename tablename --skip-lock-tables
Если мы хотим добавить конкретное условие where в таблицу, мы можем использовать следующую команду
mysqldump -uusername -p -hhost databasename tablename --where="date=20140501" --skip-lock-tables
Вы можете легко использовать дамп выбранных таблиц, используя по MYSQLWorkbench tool
отдельности или группу таблиц в одном дампе, а затем импортировать его следующим образом: также вы можете добавить информацию о хосте, если вы запускаете ее на локальном компьютере, добавив -h IP.ADDRESS.NUMBER after-u имя пользователя
mysql -u root -p databasename < dumpfileFOurTableInOneDump.sql
Вы можете использовать этот код:
В этом примере создается резервная копия базы данных sugarcrm и выводится вывод в sugarcrm.sql.
# mysqldump -u root -ptmppassword sugarcrm > sugarcrm.sql
# mysqldump -u root -p[root_password] [database_name] > dumpfilename.sql
Sugarcrm.sql будет содержать таблицу удаления, создать таблицу и вставить команду для всех таблиц в базе данных sugarcrm. Ниже приведен частичный вывод sugarcrm.sql, показывающий информацию о дампе таблицы accounts_contacts:
-
accounts_contacts
DROP TABLE IF EXISTS `accounts_contacts`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `accounts_contacts` (
`id` varchar(36) NOT NULL,
`contact_id` varchar(36) default NULL,
`account_id` varchar(36) default NULL,
`date_modified` datetime default NULL,
`deleted` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `idx_account_contact` (`account_id`,`contact_id`),
KEY `idx_contid_del_accid` (`contact_id`,`deleted`,`account_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
SET character_set_client = @saved_cs_client;
--
Вы можете использовать mysqldump
из командной строки:
mysqldump -u username -p password dbname tablename > "path where you want to dump"
Вы также можете использовать MySQL Workbench:
Перейдите влево> Экспорт данных> Выберите схему> Выберите таблицы и нажмите «Экспорт»
mysqldump db_name table_name | gzip > table_name.sql.gz
для восстановления:gunzip < table_name.sql.gz | mysql -u username -p db_name