यह rehearsal है, production restore runbook नहीं। Copy बनाने से पहले database engine/version, data owner, retention, encryption और उपलब्ध disk की पुष्टि करें। Production को overwrite करके कभी परीक्षण न करें।
Backup बनाएँ और उसकी पहचान दर्ज करें
- Project में दर्ज backup विधि और consistent snapshot इस्तेमाल करें। Source database, version, timestamp/timezone, size, encryption key owner और checksum दर्ज करें।
- Encrypted copy को production host से अलग रखें। Shell history, tickets और screenshots में secrets न रखें; पुष्टि करें कि अधिकृत staff key प्राप्त कर सकते हैं।
अलग-थलग target पर restore करें
- इच्छित major version और compatible roles/extensions वाला नया, खाली database बनाएँ। Matching PostgreSQL restore tool से वहीं restore करें; command को production पर कभी न चलाएँ।
- अपेक्षित tables, महत्वपूर्ण records की row counts, constraints, application startup और read-only sample workflow जाँचें। Migration मंज़ूर करने से पहले restore duration और mismatches दर्ज करें।
उदाहरण और अपेक्षित नतीजा
- Format के अनुसार restore tool चुनें: plain SQL के लिए
psql; custom/tar archives के लिएpg_restore(pg_restore --list backup.dumpसे जाँचें)। Disposable isolated database में restore करें, workers और outbound integrations बंद रखें तथा केवल test secrets इस्तेमाल करें। इस अभ्यास में production का उपयोग कभी न करें। - Exit code, बीता समय, अपेक्षित table counts और ज्ञात aggregate checks दर्ज करें। Restore विफल हो या counts अलग हों तो रुकें; migration से पहले test host पर error, extensions और roles जाँचें।
pg_dumpएक database को cover करता है; global roles के लिए अलग backup चाहिए।