डिफ़ॉल्ट रूप से, 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
यदि हम तालिका में एक विशिष्ट जहां स्थिति जोड़ना चाहते हैं तो हम निम्नलिखित कमांड का उपयोग कर सकते हैं
mysqldump -uusername -p -hhost databasename tablename --where="date=20140501" --skip-lock-tables
आप MYSQLWorkbench tool
व्यक्तिगत रूप से या एक डंप पर तालिकाओं के समूह का उपयोग करके आसानी से चयनित तालिकाओं को डंप करने के लिए उपयोग कर सकते हैं , फिर इसे निम्नानुसार आयात करें: यू भी होस्ट जानकारी जोड़ सकते हैं यदि आप इसे अपने स्थानीय में जोड़ रहे हैं -h IP.ADDRESS.NUMBER बाद u उपयोगकर्ता नाम
mysql -u root -p databasename < dumpfileFOurTableInOneDump.sql
आप इस कोड का उपयोग कर सकते हैं:
यह उदाहरण गन्ने के डेटाबेस का बैकअप लेता है और गन्ने के उत्पादन में कमी करता है
# mysqldump -u root -ptmppassword sugarcrm > sugarcrm.sql
# mysqldump -u root -p[root_password] [database_name] > dumpfilename.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
कमांड लाइन से उपयोग कर सकते हैं :
mysqldump -u username -p password dbname tablename > "path where you want to dump"
आप MySQL कार्यक्षेत्र का भी उपयोग कर सकते हैं:
बाईं ओर जाएं> डेटा निर्यात> स्कीमा चुनें> तालिकाएँ चुनें और निर्यात पर क्लिक करें
mysqldump db_name table_name | gzip > table_name.sql.gz
पुनर्स्थापित करने के लिए:gunzip < table_name.sql.gz | mysql -u username -p db_name