답변:
덤프
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
크레딧 : John McGrath
덤프
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
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 데이터베이스의 모든 테이블에 대한 테이블 삭제, 테이블 작성 및 삽입 명령을 포함합니다. 다음은 accounts_contacts 테이블의 덤프 정보를 보여주는 sugarcrm.sql의 부분 출력입니다.
-
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 db_name table_name | gzip > table_name.sql.gz
복원 :gunzip < table_name.sql.gz | mysql -u username -p db_name