একটি মাইএসকিউএল ডাটাবেসকে পোস্টগ্রাইএসকিউএলে রূপান্তর করবেন কীভাবে?


20

মাইএসকিউএল ডাটাবেসকে পোস্টগ্রাইএসকিউএলে রূপান্তর করার জন্য কি কোনও কমান্ড লাইন সরঞ্জাম আছে? আমি আরও জানতে চাই যে সাধারণ mysqldumpকমান্ড ব্যবহার করে ডাটাবেস রূপান্তর করার উপায় আছে কিনা ।


1
এখানে শুরু করুন: wiki.postgresql.org/wiki/…
a_horse_with_no_name

4
আমি যখনই এটি দেখি, তখন আনন্দের অশ্রুটি কাঁদি।
rfusca


এটি সহজেই এই পুরো সাইটের সবচেয়ে দরকারী প্রশ্নগুলির একটি।
ইভান ক্যারল

উত্তর:


13

আপনি চেষ্টা করেছেন:

mysqldump --compatible=postgresql dbname > export.sql

তারপরে উদ্ধৃতি থেকে বাঁচার জন্য এটি করুন

sed "s/\\\'/\'\'/g" export.sql > export1.sql

আরও কিছু ম্যাসেজের প্রয়োজন হতে পারে তাই আরও ঘনিষ্ঠভাবে মাইএসকিএলডম্প ডকো দেখুন।


2
আমি আপনার দ্বারা প্রদত্ত পদ্ধতিটি ইতিমধ্যে চেষ্টা করেছি তবে
পোস্টগ্র্যাস্কল-এ

2
@ মাগিল কি ত্রুটি আছে?
জানুস ট্রয়লসেন

4
5 বছর এবং mysqldumpএখনও কেউ স্থির করেনি। syntax error at or near "(" LINE 2: "id" int(10) NOT NULL,
সিস টিমারম্যান

1
মতে dev.mysql.com/doc/refman/8.0/en/... শুধুমাত্র অনুমতি মান --compatibleহয়ansi
phunehehe

7

এখানে কয়েকটি মুক্ত উত্স সরঞ্জাম রয়েছে, এটি খুব সহায়ক হতে পারে:

মাইএসকিএলএলটোপোস্টগ্রি এসকিএল একটি বৈশিষ্ট্য-পৌঁছানোর সরঞ্জাম এবং ব্যবহার করা খুব সহজ।
এটি আপনার মাইএসকিউএল ডিবিতে যেমন ছিল ঠিক তেমন ডেটা-টাইপস, মাইগ্রেশন সীমাবদ্ধতা, সূচিপত্র, পিকে এবং এফকে ম্যাপ করে।
ফণা অধীনে এটি PostgreSQL কপি ব্যবহার করে, তাই ডেটা স্থানান্তর খুব দ্রুত।
থেকে MySqlToPostgreSql পিএইচপি লিখিত (> = 5.4)।

  কপি কমান্ডটি ব্যবহার করে পোস্টগ্র্রেএসকিউএল-এর জন্য পিজিলোডার একটি ডেটা লোডিং সরঞ্জাম। শুধু ব্যবহারের উপর এটির প্রধান সুবিধা

COPY
অথবা
\copy
, এবং একটি বিদেশী ডেটা র‍্যাপার ব্যবহার করে এটির লেনদেন আচরণ, যেখানে পিজোলোডার প্রত্যাখ্যান করা ডেটার একটি পৃথক ফাইল রাখবে, তবে আপনার ডাটাবেসে ভাল ডেটা অনুলিপি করার চেষ্টা চালিয়ে যাবে। ডিফল্ট পোস্টগ্রিএসকিউএল আচরণটি লেনদেনের, যার অর্থ ইনপুট ডেটাতে কোনও ফাইল (ফাইল বা রিমোট ডাটাবেস) সারণীর জন্য পুরো বাল্ক লোডকে থামিয়ে দেবে। পিজিলোডার ডেটা পুনরায় ফর্ম্যাটিং প্রয়োগ করে, মাইএসকিউএল ডেটস্ট্যাম্পস 0000-00-00 এবং 0000-00-00 00:00:00 পোস্টগ্রিএসকিউএল রূপান্তরকরণ এর একটি সাধারণ উদাহরণ
NULL
মান (কারণ আমাদের ক্যালেন্ডারের কোনও বছর শূন্য ছিল না)।
পিজিলোডার এলআইএসপিতে লিখিত এবং উত্স কোড হিসাবে বিতরণ করা হয়েছে, সুতরাং আপনাকে ব্যবহারের আগে এটি সংকলন করতে হবে।

আশা করি এটা তোমাকে সাহায্য করবে...


1
পিগ্রোলোডার এমনকি পোস্টগ্রি ডক্সে মাইগ্রেশন সরঞ্জামের প্রস্তাব দেওয়া হয়, তাই আমি বলি যে এটি সেরা পছন্দ। আমি এটি 50+ টেবিলের সাথে মোটামুটি ছোট ডিবিতে সাফল্যের সাথে ব্যবহার করেছি, কবজির মতো কাজ করেছি।
কপাজ

3

প্রকৃতপক্ষে একটি ফ্রি মাইগ্রেশন সরঞ্জাম রয়েছে যা ব্যবহার করা বেশ সহজ, এন্টারপ্রাইজডিবি তাদের দ্বারা বিকাশিত। এটি স্ট্যাকবিল্ডার: মাইগ্রেশন টুলকিটের মাধ্যমে ইনস্টল করা যেতে পারে


3

অ্যাক্সেস ডাটাবেসকে পোস্টগ্রাগিতে রূপান্তর করতে আমি সম্প্রতি ডিবিসিওনভার্ট থেকে একটি অ-নিখরচায় সরঞ্জাম ব্যবহার করেছি এবং এটি নিখরচায় করে বিশ্বস্তভাবে করার চেষ্টা করার যে পরিমাণ সময় আমি নষ্ট করেছি তার তুলনায় এটি বেশ মূল্যবান বলে মনে করেছি। মাইএসকিউএল <-> পোস্টগ্রিজের জন্য বিক্রয় একই ধরণের সরঞ্জাম বিক্রয় করুন যা আমি ব্যবহার করি নি তবে আপনি কেবল কমান্ড লাইন সরঞ্জামগুলিতে আগ্রহী না হলে বিবেচনা করা ভাল be

আপনি যদি ভাবছেন যে আমি কোনওভাবেই তাদের সাথে অনুমোদিত নই :-)


3

উদাহরণস্বরূপ আপনি এন্টারপ্রাইজবিবি মাইগ্রেশন উইজার্ড ব্যবহার করতে পারেন।

এটি নিবিড়ভাবে ওরাকলডিবিতে স্থানান্তর করতে পারে। তবে মাইএসকিএলের ক্ষেত্রে এর কিছু সীমাবদ্ধতা রয়েছে, উদাহরণস্বরূপ, এটি দর্শন, ট্রিগার, সঞ্চিত পদ্ধতি সমর্থন করে না।

আরও তথ্যের জন্য, EDB মাইগ্রেশন টুলকিট দেখুন । নিশ্চিত নয়, তবে আপনার সঞ্চিত পদ্ধতিগুলি (যদি তারা বিদ্যমান থাকে) সংরক্ষণ করে mysql-> oracle-> postgresql স্থানান্তরিত করা সম্ভব।

এটি গ্রেপ করুন: ডেটাবেস এবং এসকিউএল মাইগ্রেশন সরঞ্জাম


1

এটি কেবল বিদ্যমান উত্তরগুলিতে যোগ করার জন্য, যা আমাকে এই সমাধানটি খুঁজে পেতে সহায়তা করেছিল। আমি MySqlToPostgreSql ব্যবহার করেছি । আপনাকে যা করতে হবে তা হ'ল MySqlToPostgreSql থেকে ডাউনলোড এবং এক্সট্র্যাক্ট করা , স্যাম্পল কনফিগারেশন ফাইলটির একটি অনুলিপি তৈরি করা, এতে ডিবি সংযোগের মান নির্ধারণ করা এবং সূচক ফাইলটি নিম্নলিখিত কমান্ড দিয়ে চালানো:

পিএইচপি সূচক। পিএফপি কনফিগারেশন। এক্সএমএল

সহজ এখনও কার্যকর!


আপনি কি এই সরঞ্জামের একটি লিঙ্ক সহ আপনার পোস্ট সম্পাদনা করতে পারেন, দয়া করে?
dezso

দুঃখিত, আমি এটা ভুলে গেছি। যোগ করা হয়েছে!
toing_toing

আহ, এটা মজার। আপনি কি বুঝতে পেরেছেন যে সরঞ্জামটির লেখকও একটি উত্তর পোস্ট করেছেন? ;) এখন করেছি।
dezso

আমি চাটুকার! যদিও তিনি তার নিজের দুর্দান্ত প্লাগইন সম্পর্কে খুব বেশি বর্ণনা করেন নি।
toing_toing

0

একটি ওপেনসোর্স সরঞ্জাম রয়েছে যা একটি মাইএসকিউএল ডিবিকে পোস্টগ্র্যাস্কিল ডিবিতে সূচী, fks এবং ডেটাতে রূপান্তর করতে কার্যকারিতা সরবরাহ করে।

https://github.com/ggarri/mysql2psql

এই সরঞ্জামটি স্কিমা পরিবর্তনগুলি সংজ্ঞায়িত করতেও অনুমতি দেয় যাতে আপনি রান সময়ে আপনার বর্তমান স্কিমায় কিছু আপগ্রেড করতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.