2011-01-04 7 views
9

मैं mysqldump के साथ पर MS-DOS कमांड लाइन से एक निर्यात कर रहा हूँ:mysqldump

& mysqldump -u root -p --default-character-set=utf8 -W -B dbname 
> C:\mysql_backup.sql 

मेरे डेटाबेस/तालिकाओं UTF-8 के साथ इनकोड और मैं एक ही एन्कोडिंग जब मैं निर्दिष्ट डंप किया था। लेकिन जब मैं नोटपैड ++ या स्केट के साथ फ़ाइल खोलता हूं तो मुझे यूटीएफ -16 (यूसीएस -2) का एन्कोडिंग दिखाई देता है। अगर मैं आयात चलाने से पहले आइकन को यूटीएफ -8 में कनवर्ट नहीं करता हूं तो मुझे एक त्रुटि मिली है।

ऐसा लगता है कि एमएस-डॉस/सीएमडी.एक्सई डिफ़ॉल्ट रूप से यूटीएफ -16 के साथ रीडायरेक्ट कर रहा है। क्या मैं इसे बदल सकता हूँ?

एक साइड नोट: मैं पावरहेल का उपयोग mysqldump को कॉल करने के लिए करता हूं।

अद्यतन: ऐसा लगता है कि यह केवल पावरहेल से mysqldump को कॉल करते समय होता है। मैं अपनी पीएस स्क्रिप्ट

+1

मुझे इस समस्या का सामना नहीं हुआ है, और मैं एक ही वाक्यविन्यास का उपयोग करता हूं। क्या यह पावरहेल विशिष्ट हो सकता है? क्या आप 100% सुनिश्चित हैं कि यह यूटीएफ -16 है? –

+0

आप सही हैं मैं बस उसी सर्वर पर कमांड निष्पादित करता हूं और मेरी फ़ाइल एक यूटीएफ -8 एक है। हम सवाल बदल देंगे। धन्यवाद! – MatthieuGD

+0

यहां एक वर्कअराउंड ("यूटीएफ -16" के लिए खोज) लगता है: http://xahlee.org/powershell/PowerShell_for_unixer.html –

उत्तर

6

डिफ़ॉल्ट रूप से टेक्स्ट का प्रतिनिधित्व करता हूं और जब आप इसे फ़ाइल में सहेजते हैं तो यह डिफ़ॉल्ट रूप से यूनिकोड के रूप में सहेजता है। आप के बजाय Out-File cmdlet > ऑपरेटर उदा .:

... | Out-File C:\mysql_backup.sql -Encoding UTF8 

तुम भी PowerShell कैसे UTF8 पाठ डंप utiltiy से आ रही व्याख्या करने के लिए पर एक संकेत देने के लिए आवश्यकता हो सकती है का उपयोग करके फ़ाइल स्वरूप को बचाने बदल सकते हैं। This blog post दिखाता है कि इस परिदृश्य को कैसे संभालना है, यदि उपयोगिता उचित यूटीएफ 8 बीओएम आउटपुट नहीं कर रही है।

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^