एसक्यूएल फ़ाइल को पोस्टग्रेस्क्ल में कनवर्ट करें और आयात करें - mysql, postgresql

मैं mysql से postgresql में डेटाबेस माइग्रेट करना चाहता हूं। तो, पहले किया था mysqldump इस आदेश के साथ

mysqldump -u root -p --compatible=postgresql --default-character-set=utf8  databasename > output.sql

फिर मैं नीचे कमांड का उपयोग कर एसक्यूएल फ़ाइल होस्ट और आयात करने के लिए output.sql अपलोड करता हूं

psql -U root -d databasename -f /home/test/output.sql

लेकिन जब मैं आयात करने की कोशिश करता हूं तो मुझे त्रुटि मिली

ERROR:  syntax error at or near "KEY"
ERROR:  syntax error at or near "UNLOCK"
ERROR:  syntax error at or near "("
invalid command n
invalid command "></script>
invalid command ";s:2:
invalid command ",
invalid command "]
Query buffer reset (cleared).

मैंने जो डेटाबेस डाला था वह आकार 7.5 जीबी है।

उत्तर:

जवाब के लिए 3 № 1

एसक्यूएल MySQL में उपयोग किया जाता है और पोस्टग्रेज़ में उपयोग किया जाता है जो एक-से-एक अंतर-संगत नहीं होता है। आपको गैर-तुच्छ के लिए कनवर्टर प्रोग्राम की आवश्यकता है।

के लिए प्रलेखन से --compatible:

यह विकल्प अन्य सर्वरों के साथ संगतता की गारंटी नहीं देता है।

दूसरे शब्दों में, यह केवल "है थोड़ा अधिक संगत।

जैसे वाणिज्यिक उत्पाद हैं Navicat जो स्वचालित रूप से आपके लिए ऐसा करने में मदद कर सकता है, या आप अपने सभी MySQL डेटा को एक्सएमएल, जेएसओएन या सीएसवी जैसे तटस्थ प्रारूप में डंप कर सकते हैं और इसे किसी अन्य टूल का उपयोग करके वापस पढ़ सकते हैं।


संबंधित सवाल
सबसे लोकप्रिय