মন্তব্য সহ পোস্টগ্রিএসকিউএল স্কিমা সংস্করণ কীভাবে করবেন?


9

আমি আমার বেশিরভাগ কাজের সংস্করণটি গিট : কোড, ডকুমেন্টেশন, সিস্টেম কনফিগারেশন সহ নিয়ন্ত্রণ করি । আমি এটি করতে সক্ষম হলাম কারণ আমার সমস্ত মূল্যবান কাজ পাঠ্য ফাইল হিসাবে সঞ্চিত।

আমি আমাদের পোস্টগ্রিস ডাটাবেসের জন্য প্রচুর এসকিউএল স্কিমা লিখছি এবং তার সাথে ডিল করেছি। স্কিমাতে ভিউ, এসকিউএল ফাংশন অন্তর্ভুক্ত রয়েছে এবং আমরা আরআর প্রোগ্রামিং ল্যাঙ্গুয়েজে ( পিএল / আর এর মাধ্যমে ) পোস্টগ্রিস ফাংশন লিখব ।

আমি এবং আমার সহযোগীরা যে লেখার অংশগুলি স্কিমা অনুলিপি করার চেষ্টা করছিলাম তা কিন্তু আমি তা করতে ভুলে গেছি। অনুলিপি এবং অতীত ক্রিয়া পুনরাবৃত্তি এবং ত্রুটি প্রবণ।

পিজি_ডাম্প / পিজি_রেস্টোর পদ্ধতিটি কাজ করবে না কারণ এটি মন্তব্যগুলি হারায়।

আদর্শভাবে আমি আমার বর্তমান স্কিমাটি কোনও ফাইল বা ফাইলগুলিতে বের করতে এবং মন্তব্যগুলি সংরক্ষণ করার মতো কিছু উপায় রাখতে চাই যাতে আমি সংস্করণ নিয়ন্ত্রণ করতে পারি।

মন্তব্য সহ সংস্করণ নিয়ন্ত্রণ স্কিমা সেরা অনুশীলন কি?


2
আমি মনে করি না যে প্রশ্নটি পিএসকিএল নির্দিষ্ট। আপনি কি এসও স্ট্যাকওভারফ্লো . com/… এ কয়েকটি উত্তর পড়েছেন ? আপনার জন্য কিছু থাকতে পারে।
ড্রকলোসোসোস

@ ড্রকলোসোসস - এই প্রশ্নগুলির মধ্যে কয়েকটি হ'ল ভাল অভিবাসন প্রার্থী candidates
কোডারহক

@ ড্রোলকোসোসগুলি একটি পোস্ট পোস্টহীন COMMENT ONপরিবেশে উপলব্ধ? আমি মনে করি না এটি স্ট্যান্ডার্ড এসকিউএল। যার অর্থ এটি পোস্টগ্রাইস নির্দিষ্ট হতে পারে।
xenoterracide

@ এক্সেনোটেরাকাইড আপনি ঠিকই বলেছেন, আমি নিজেই একটি ডেটাবেস
ভার্সন

উত্তর:


9

আপনি COMMENT ONবিভিন্ন SCHEMAউপাদান কেন করবেন না , সেভাবে আপনার মন্তব্যগুলি স্কিমাতে রয়েছে এবং তা ফেলে দেওয়া হবে।

কমেন্ট একটি ডাটাবেস অবজেক্ট সম্পর্কে একটি মন্তব্য সঞ্চয় করে।
একটি মন্তব্য সংশোধন করতে, একই অবজেক্টের জন্য একটি নতুন COMMENT কমান্ড জারি করুন। প্রতিটি বস্তুর জন্য কেবল একটি মন্তব্যের স্ট্রিং সংরক্ষণ করা হয়। একটি মন্তব্য মুছে ফেলতে, পাঠ্য স্ট্রিংয়ের জায়গায় NULL লিখুন। মন্তব্যগুলি স্বয়ংক্রিয়ভাবে বাদ দেওয়া হয় যখন অবজেক্টটি বাদ দেওয়া হয়।


সত্যই সহায়ক, তবে আমি এটিকে এখনও উত্তর হিসাবে চিহ্নিত করতে চাই না কারণ আমি সর্বোত্তম অনুশীলনের উত্তর পাওয়ার আশা করছি।
আলেকসান্দ্র লেভুকুক

2

সংস্করণ নিয়ন্ত্রণকারী স্কিমাগুলি সর্বদা আমার জন্য সমস্যাযুক্ত। আমি সাধারণত যে ডেটা মডেলিং সরঞ্জামটি ব্যবহার করছি তার দ্বারা উত্পাদিত স্কিমা নিয়ন্ত্রণ করে। মডেলটিও সংস্করণ নিয়ন্ত্রিত। স্কিমা আপডেট করার জন্য প্রয়োজনীয় প্যাচটি তৈরি করতে আমি বর্তমান এবং পূর্ববর্তী স্কিমার মধ্যে পার্থক্য ব্যবহার করি। কিছু মডেলিং সরঞ্জামগুলি ব্যবহারযোগ্য স্কিমা আপডেট স্ক্রিপ্ট তৈরি করে। আপডেট স্ক্রিপ্টগুলিও সংস্করণ নিয়ন্ত্রিত।

আমি মাঝে মধ্যে স্ক্রিপ্টগুলি দেখতে পাই যা স্কিমাটি পুনরায় উত্পন্ন করার জন্য উপযুক্ত বিন্যাসে স্কিমাটি ডাম্প করার উদ্দেশ্যে করা হয়। এর মধ্যে একটি হতে পারে আপনি যা সন্ধান করছেন। কিছু মডেলিং এবং ক্যোয়ারী সরঞ্জামগুলি স্কিমা পুনর্জন্ম স্ক্রিপ্টগুলি বিদ্যমান স্কিমা তৈরি করতে সক্ষম form আপনি যদি এটি স্ক্রিপ্ট করতে পারেন এটি আপনাকে সংস্করণ নিয়ন্ত্রণের জন্য উপযুক্ত একটি ফাইল দিতে পারে।


2

আমার আগের প্রস্তাবটির একটি বিকল্প (বা আপনি এগুলি একত্রিত করতে পারেন) হ'ল আপনার সম্পাদক (আইডিই) এ আপনার এসকিউএল কোডটি লিখুন এবং ফাইলগুলি সংরক্ষণ করুন এবং আপনার ভিসিএসের কাছে প্রতিশ্রুতিবদ্ধ করুন, তারপরে ডাটাবেসে কোডটি ব্যবহার করে রান করুন psql -1f। এইভাবে কোডটি কার্যকর হওয়ার আগে সংস্করণটি নিয়ন্ত্রিত হয়।


"এইভাবে কোডটি কার্যকর করার আগে সংস্করণটি নিয়ন্ত্রিত হয়।" এবং এটি হওয়া উচিত।
মাইক শেরিল 'ক্যাট রিক্যাল' ২

@ ক্যাটকেল হ্যাঁ তবে আপনি যদি অপ্স পোস্টটি পড়েন তবে আমি মনে করি না এটি কেস।
xenoterracide

দুর্ভাগ্যক্রমে আমি দেখেছি বেশিরভাগ জায়গায় এটি ঘটেনি। তবে গ্যারান্টি দেওয়ার একমাত্র উপায় যে আপনি পরীক্ষিত কোড এবং কিউএ একই কোডটি আপনি উত্পাদনে যান। "সত্য" ডাটাবেস ভিসিএসে রয়েছে, এটি ডিবিএমএসে নেই, ধারণাটি ব্যাপক নয়।
মাইক শেরিল 'ক্যাট রিক্যাল'

0

আমি একই প্রকল্পে কাজ করছি। এটি আমার নকশা প্রস্তাব:

  1. নিয়মিত সময় ভিত্তিতে মন্তব্য ডিবি অবজেক্টগুলি প্রতি দুই সপ্তাহ বা মাসে দুইবার বলতে দেয়।
  2. না সব pg_dump (হ্যাঁ সবকিছু নিশ্চিত করুন যে আপনি সব ছোট বিবরণ এবং সম্পর্ক পেতে করতে পাবেন)। তাদের নাম yyyymmdd-VERSION.dump করে দিন
  3. গিট ব্যবহার করা হলে বড় ফাইলগুলির জন্য একটি প্লাগইন ব্যবহার করুন
  4. যদি রেপো ব্যবহার না করে থাকেন তবে টেক্সটে একটি সাধারণ টেবিল তৈরি করুন। নীচের টেবিলের মতো সিএসভি ফর্ম্যাট:

    version | file name | date | description | 1.0 | yyyymmdd-v10.dump | yyyymmdd | new version of user table | 1.1 | backupDB-v11.dump | yyyymmdd | normalized reports tables |

  5. ফাইলনাম দ্বারা উত্পন্ন ডাম্পগুলির সিএসভি ফাইলে একটি সম্পর্ক রেখে আপনি এগুলি সহজেই কোনওভাবে ট্র্যাক করতে পারেন এবং আপনি নিশ্চিত করেন যে পুনরুদ্ধারটি কাজ করবে কারণ আপনি একেবারে সবকিছু ফেলে দিয়েছেন।

আজকাল যে কোনও ক্লাউড স্টোরেজ বা সাইট স্টোরেজে থাকা তথ্যের টিবি নিয়ে কথা বললেও এত ব্যয় করা উচিত নয়। এখানে 16 টিবি পর্যন্ত 700 থেকে 1000 মার্কিন ডলার পর্যন্ত কিছু র‌্যাগিং রয়েছে ।

এমনকি আপনি যদি সবচেয়ে জনপ্রিয় একডাব্লুএস এস 3 এর মতো স্টোরেজ ক্লাউডে যান তবে আপনি আরও অনেক কিছু সঞ্চয় করতে পারবেন

যদি কোনও আইটি অবকাঠামো এবং সম্পদগুলি ট্র্যাক করে রাখার জন্য যদি কোনও ভাল নকশা এবং সংস্থার মানগুলি সংজ্ঞায়িত করা হয় তবে এটি একবার প্রয়োগ করা বেদনাদায়ক হওয়া উচিত নয়, এটি তুলনামূলক সহজ হতে পারে এবং এটি আপনাকে কনফিগারেশনের ব্যথা এবং সবচেয়ে গুরুত্বপূর্ণ সময়ে সাশ্রয় দেয় ...

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