Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> डेटाबेस

अपने Vertica डेटाबेस को सुरक्षित रूप से बैकअप और रिस्टोर कैसे करें

परिचय

यह सुनिश्चित करने के लिए कि आप डेटा भ्रष्टाचार या आकस्मिक विलोपन की स्थिति में डेटा पुनर्प्राप्त कर सकते हैं, डेटाबेस बैकअप को नियमित रखरखाव गतिविधि बनाएं। यह पोस्ट Vertica® डेटाबेस बैकअप और रिस्टोरेशन का पता लगाती है।

परिचय

Vertica, एक विश्लेषणात्मक डेटाबेस प्रबंधन प्रणाली, एक कॉलमर स्टोरेज प्लेटफॉर्म है जिसे बड़ी मात्रा में डेटा को संभालने के लिए डिज़ाइन किया गया है, जो पारंपरिक रूप से संसाधन-गहन परिदृश्यों में तेज़ क्वेरी प्रदर्शन को सक्षम करता है।

Vertica निम्नलिखित लाभ प्रदान करता है:

  • पारंपरिक रिलेशनल डेटाबेस मैनेजमेंट सिस्टम पर क्वेरी प्रदर्शन में सुधार करता है।
  • उच्च उपलब्धता प्रदान करता है।
  • कमोडिटी एंटरप्राइज़ सर्वर पर पेटाबाइट स्केलेबिलिटी प्रदान करता है।

डेटाबेस बैकअप और रिकवरी तंत्र रखरखाव और डिजास्टर रिकवरी के दौरान डाउनटाइम को कम करता है।

डेटाबेस बैकअप और रिस्टोर करें

Vertica के साथ, आप हॉट बैकअप बना सकते हैं, अनिश्चित संख्या में रिस्टोर पॉइंट के साथ इन्क्रीमेंटल कॉपी, और पूरे डेटाबेस या डेटाबेस के सबसेट (स्कीमा, टेबल, आदि) के बैकअप। निम्नलिखित बैकअप स्तर उपलब्ध हैं:

  • पूर्ण स्तर: यह स्तर सुनिश्चित करता है कि आप पूर्ण Vertica डेटाबेस का बैकअप और रिस्टोर कर सकते हैं।
  • इन्क्रीमेंटल स्तर: यह स्तर एक बाद का बैकअप है जिसमें केवल नया या बदला हुआ डेटा होता है।
  • ऑब्जेक्ट-स्तर: यह स्तर रिस्टोरेशन के लिए एक ऑब्जेक्ट का बैकअप है।

Vertica पूर्ण बैकअप से विशिष्ट ऑब्जेक्ट्स (जैसे स्कीमा और टेबल) को रिस्टोर करने के लिए लचीलापन और ग्रैन्युलैरिटी के स्तर प्रदान करता है।

स्नैपशॉट

डेटाबेस स्नैपशॉट डेटाबेस में सभी ऑब्जेक्ट्स और डेटा की एक सुसंगत छवि को कैप्चर करते हैं। आप ऑब्जेक्ट-लेवल स्नैपशॉट में शामिल करने के लिए डेटाबेस ऑब्जेक्ट्स का सबसेट चुन सकते हैं, जिसमें स्नैपशॉट के समय डेटाबेस में संबद्ध डेटा और निर्भरता ग्राफ में अन्य ऑब्जेक्ट्स होते हैं। आप अपने स्नैपशॉट को जैसा चाहें नाम दे सकते हैं (उदाहरण: snap, objectsnap1, fullsnap, आदि)।

बैकअप स्थान

बैकअप स्थान बैकअप होस्ट पर एक डायरेक्टरी है जहां आप स्नैपशॉट और उनके संबद्ध आर्काइव सेव करते हैं। चूंकि स्नैपशॉट संगत हैं, आप एक ही बैकअप स्थान से किसी भी ऑब्जेक्ट स्नैपशॉट का उपयोग कर सकते हैं जब आप एक पूर्ण डेटाबेस स्नैपशॉट से डेटाबेस रिस्टोर करते हैं। एक ही बैकअप स्थान में सभी स्नैपशॉट हार्ड लिंक के माध्यम से डेटा फाइलें साझा करते हैं।

हार्ड-लिंक बैकअप

Vertica स्थानीय क्लस्टर इन्फ्रास्ट्रक्चर में डेटाबेस बैकअप की कम लागत और स्थान-कुशल प्रतियां (हार्ड-लिंक लोकल बैकअप) प्रदान करता है। आप इन बैकअप को तेजी से पुनर्प्राप्त कर सकते हैं क्योंकि सिस्टम उपयोगकर्ता डेटा को बाहरी बैकअप वातावरण में कॉपी नहीं करता है। Vertica केवल कैटलॉग डेटा कॉपी करता है और फाइल सिस्टम के भीतर Linux®-आधारित हार्ड लिंक शुरू करता है।

अपने Vertica डेटाबेस को सुरक्षित रूप से बैकअप और रिस्टोर कैसे करें

चित्र स्रोत: https://www.vertica.com/wp-content/uploads/2016/04/sidestep1.png

ये बैकअप स्टोरेज ब्लॉक के समान सेट को साझा करते हैं, और प्रत्येक बैकअप अपने पॉइंट-इन-टाइम कॉपी को ट्रैक करता है। सिस्टम एक ही सामग्री को कई स्थानों पर स्टोर नहीं करता है।

बैकअप और रिस्टोरेशन प्रक्रिया प्रवाह

बैकअप और रिस्टोरेशन प्रवाह में निम्नलिखित चरण होते हैं:

  1. स्नैपशॉट प्रकार चुनें, जैसे पूर्ण, इन्क्रीमेंटल, या ऑब्जेक्ट-लेवल बैकअप।
  2. Vertica बैकअप और रिकवरी टूल का उपयोग करके कॉन्फ़िगरेशन फाइल बनाएं।
  3. बैकअप फाइलों को स्टोर करने के लिए बैकअप स्थान आरंभ करें।
  4. कॉन्फ़िगरेशन फाइल का उपयोग करके बैकअप लें।
  5. बैकअप स्थान में बैकअप सत्यापित करें।
  6. समान या अलग Vertica क्लस्टर्स पर पूर्ण डेटाबेस या डेटाबेस ऑब्जेक्ट्स रिस्टोर करें।
अपने Vertica डेटाबेस को सुरक्षित रूप से बैकअप और रिस्टोर कैसे करें

चित्र स्रोत: https://www.vertica.com/kb/Copy-and-Restore-Data-from-a-Vertica-Cluster-to-a-Backup/Content/BestPractices/Copy-and-Restore-Data-from-a-Vertica-Cluster-to-a-Backup.htm

कॉन्फ़िगरेशन फाइल जनरेट करें

vbr.py उपयोगिता Vertica को पूर्ण, इन्क्रीमेंटल, या ऑब्जेक्ट-लेवल स्नैपशॉट का बैकअप और रिस्टोर करने के लिए आवश्यक जानकारी के साथ एक कॉन्फ़िगरेशन फाइल बनाती है। आप कॉन्फ़िगरेशन फाइल के बिना डेटाबेस या ऑब्जेक्ट्स का बैकअप या रिस्टोर नहीं कर सकते, और कोई डिफ़ॉल्ट फाइल मौजूद नहीं है।

आप जितनी आवश्यकता हो उतनी बैकअप कॉन्फ़िगरेशन फाइल बना सकते हैं (जैसे पूर्ण या इन्क्रीमेंटल, ऑब्जेक्ट या स्कीमा-विशिष्ट, या स्थान-विशिष्ट फाइलें)।

पूर्ण बैकअप कॉन्फ़िगरेशन फाइल

निम्न चरण पूर्ण डेटाबेस बैकअप लेने के लिए कॉन्फ़िगरेशन फाइल बनाने में मदद करते हैं।

$ vbr.py --setupconfig
Snapshot name (backup_snapshot): full_bkp_snap
Backup vertica configurations? (n) [y/n]: y
Number of restore points (1):
Specify objects (no default):
Vertica user name (dbadmin): dbadmin
Save password to avoid runtime prompt? (n) [y/n]: n
Node v_testdb_node0001
Backup host name (no default): v_testdb_node0001
Backup directory (no default): /vert_backup/backup
Node v_testdb_node0002
Backup host name (no default): v_testdb_node0002
Backup directory (no default): /vert_backup/backup
Node v_testdb_node0003
Backup host name (no default): v_testdb_node0003
Backup directory (no default): /vert_backup/backup
Config file name (full_bkp_snap.ini): /vert_backup/backup_conf/full_bkp_snap.ini
Change advanced settings? (n) [y/n]: n
Saved vbr configuration to /vert_backup/backup_conf/full_bkp_snap.ini. 

ऑब्जेक्ट-विशिष्ट बैकअप कॉन्फ़िगरेशन फाइल

ऑब्जेक्ट-विशिष्ट कॉन्फ़िगरेशन फाइल बनाने के लिए निम्न चरण करें:

  1. डेटाबेस में ऑब्जेक्ट्स सूचीबद्ध करें और चुनें कि किनका उपयोग करना है। हमारे Vertica डेटाबेस में निम्न ऑब्जेक्ट्स मौजूद हैं:

    List of tables
    Schema | Name | Kind | Owner | Comment
    --------+-------+-------+---------+---------
    public | tab1 | table | dbadmin |
    public | tab2 | table | dbadmin |
    public | tab3 | table | dbadmin |
    (3 rows) 
  2. public.tab1 टेबल का बैकअप लेने के लिए कॉन्फ़िगरेशन फाइल बनाने के लिए निम्न कमांड चलाएं:

    $ vbr.py --setupconfig
    Snapshot name (backup_snapshot): tab1_bkp_snap
    Backup vertica configurations? (n) [y/n]: n
    Number of restore points (1):
    Specify objects (no default): public.tab1
    Vertica user name (dbadmin): dbadmin
    Save password to avoid runtime prompt? (n) [y/n]: n
    Node v_testdb_node0001
    Backup host name (no default): v_testdb_node0001
    Backup directory (no default): /vert_backup/backup
    Node v_testdb_node0002
    Backup host name (no default): v_testdb_node0002
    Backup directory (no default): /vert_backup/backup
    Node v_testdb_node0003
    Backup host name (no default): v_testdb_node0003
    Backup directory (no default): /vert_backup/backup
    Config file name (tab1_bkp_snap.ini): /vert_backup/backup_conf/tab1_bkp_snap.ini
    Change advanced settings? (n) [y/n]: n
    Saved vbr configuration to /vert_backup/backup_conf/tab1_bkp_snap.ini. 
  3. बनाई गई बैकअप कॉन्फ़िगरेशन फाइलों को सूचीबद्ध करने के लिए निम्न कमांड चलाएं:

    $ cd /vert_backup/backup_conf/
    $ ls -la
    total 20
    drwxr-xr-x. 2 dbadmin dbadmin 4096 Jan 20 14:21 .
    -rw-rw-r--. 1 dbadmin dbadmin 488 Jan 20 14:21 tab1_bkp_snap.ini
    -rw-rw-r--. 1 dbadmin dbadmin 475 Jan 20 14:04 full_bkp_snap.ini 

बैकअप स्थान आरंभ करें

सोर्स क्लस्टर पर पूर्ण और ऑब्जेक्ट-लेवल बैकअप के लिए बैकअप स्थानों को आरंभ करने के लिए निम्न init स्टेटमेंट चलाएं:

$ /opt/vertica/bin/vbr.py -t init --config-file full_bkp_snap.ini
$ /opt/vertica/bin/vbr.py -t init --config-file tab1_bkp_snap.ini 

बैकअप लें

पूर्ण डेटाबेस या ऑब्जेक्ट-लेवल बैकअप लें।

पूर्ण डेटाबेस बैकअप

पहले बनाई गई कॉन्फ़िगरेशन फाइल, full_bkp_snap.ini का उपयोग करके पूर्ण डेटाबेस बैकअप लें:

$ vbr.py --task backup --config-file full_bkp_snap.ini
Please input vertica password:
pparing... Found Database port: 5433
Copying... 348900 out of 348900, 100%
All child processes terminated successfully.
Committing changes on all backup sites...
backup done! 

एकल ऑब्जेक्ट बैकअप

कॉन्फ़िगरेशन फाइल, tab1_bkp_snap.ini का उपयोग करके ऑब्जेक्ट-लेवल बैकअप लें:

$ vbr.py --task backup --config-file tab1_bkp_snap.ini
Please input vertica password:
pparing... Found Database port: 5433
Copying... 78920 out of 78920, 100%
All child processes terminated successfully.
Committing changes on all backup sites...
backup done! 

बैकअप स्थान सत्यापित करें

बैकअप स्थान सत्यापित करने के लिए निम्न कमांड चलाएं:

$ cd vert_backup/
$ ls -la
total 16
drwxr-xr-x. 4 dbadmin dbadmin 4096 Jan 20 13:40 .
dr-xr-xr-x. 28 root root 4096 Jan 20 13:53 ..
drwxr-xr-x. 5 dbadmin dbadmin 4096 Jan 20 15:22 backup
drwxr-xr-x. 2 dbadmin dbadmin 4096 Jan 20 15:29 backup_conf
$ cd backup/
$ ll
total 12
drwxrwxr-x. 8 dbadmin dbadmin 4096 Jan 20 15:29 v_testdb_node0001
drwxrwxr-x. 8 dbadmin dbadmin 4096 Jan 20 15:29 v_testdb_node0002
drwxrwxr-x. 8 dbadmin dbadmin 4096 Jan 20 15:29 v_testdb_node0003
$ cd v_testdb_node0001/
$ ll
total 12
drwx------. 3 dbadmin dbadmin 4096 Jan 20 15:29 tab1_bkp_snap
drwx------. 3 dbadmin dbadmin 4096 Jan 20 15:22 full_bkp_snap 

बैकअप रिस्टोर करें

पूर्ण या ऑब्जेक्ट-लेवल बैकअप रिस्टोर करें।

पूर्ण-डेटाबेस बैकअप से रिस्टोर करें

नोट: पूर्ण बैकअप रिस्टोर करने के लिए डेटाबेस डाउन होना चाहिए।

पूर्ण-डेटाबेस रिस्टोर करने के लिए निम्न चरणों का उपयोग करें:

  1. अपने डेटाबेस में सभी ऑब्जेक्ट्स ड्रॉप करें और हाल ही में बनाए गए बैकअप के साथ उन्हें रिस्टोर करें:

    cluster=> dt
    List of tables
    Schema | Name | Kind | Owner | Comment
    --------+-------+-------+---------+---------
    public | tab1 | table | dbadmin |
    public | tab2 | table | dbadmin |
    public | tab3 | table | dbadmin |
    (3 rows)
    cluster=> drop table tab1,tab2,tab3;
    DROP TABLE
    cluster=> dt
    No relations found. 
  2. डेटाबेस डाउन होने पर, पूर्ण बैकअप का उपयोग करके डेटाबेस रिस्टोर करें:

    $ vbr.py --task restore --config-file full_bkp_snap.ini
    Please input vertica password:
    Preparing... Found Database port: 5433
    Copying... 248556 out of 248556, 100%
    All child processes terminated successfully.
    restore done! 
  3. डेटाबेस शुरू करें और जांचें कि ऑब्जेक्ट रिस्टोरेशन सफल हुआ। निम्न उदाहरण दिखाता है कि रिस्टोर सफल हुआ:

    cluster=> dt
    List of tables
    Schema | Name | Kind | Owner | Comment
    --------+-------+-------+---------+---------
    public | tab1 | table | dbadmin |
    public | tab2 | table | dbadmin |
    public | tab3 | table | dbadmin |
    (3 rows) 

ऑब्जेक्ट-लेवल बैकअप रिस्टोर करें

नोट: ऑब्जेक्ट-लेवल रिस्टोर के लिए डेटाबेस चालू और चल रहा होना चाहिए।

एक ऑब्जेक्ट रिस्टोर करने के लिए, आपको मौजूदा ऑब्जेक्ट-लेवल बैकअप का उपयोग करने की आवश्यकता है। निम्न कोड रिस्टोरेशन की तैयारी में tab1 को ड्रॉप करता है:

cluster=> drop table tab1;
DROP TABLE
cluster=> dt
List of tables
Schema | Name | Kind | Owner | Comment
-------+-------+-------+---------+---------
public | tab2 | table | dbadmin |
public | tab3 | table | dbadmin |
(2 rows) 

ऑब्जेक्ट-लेवल बैकअप से ऑब्जेक्ट रिस्टोर करने के लिए निम्न चरण करें:

  1. ऑब्जेक्ट रिस्टोर करें:

    $ vbr.py --task restore --config-file tab1_bkp_snap.ini
    Please input vertica password:xxxxxxxx
    Preparing... Found Database port: 5433
    Copying... out of , 100%
    All child processes terminated successfully.
    Copying... 2970 out of 2970, 100%
    All child processes terminated successfully.
    restore done! 
  2. जांचें कि ऑब्जेक्ट रिस्टोरेशन सफल हुआ। निम्न उदाहरण public.tab1 के ऑब्जेक्ट-लेवल बैकअप से सफल रिस्टोरेशन दिखाता है:

    $ vsql
    Password:xxxxxxx
    dbadmin=> dt
    List of tables
    Schema | Name | Kind | Owner | Comment
    --------+-------+-------+---------+---------
    public | tab1 | table | dbadmin |
    public | tab2 | table | dbadmin |
    public | tab3 | table | dbadmin |
    (3 rows)
    dbadmin=> d tab1 ;
    List of Fields by Tables
    Schema | Table | Column | Type | Size | Default | Not Null | Primary Key | Foreign Key
    --------+-------+--------+--------------+------+---------+----------+-------------+-------------
    public | tab1 | col1 | numeric(3,) | 8 | | f | f | 

निष्कर्ष

यह पोस्ट Vertica डेटाबेस बैकअप और रिकवरी प्रक्रिया के पीछे के तर्क पर प्रकाश डालती है। यह पूर्ण, इन्क्रीमेंटल, और ऑब्जेक्ट-लेवल जैसे विभिन्न स्तरों पर Vertica डेटाबेस का बैकअप और रिस्टोर करने के चरण भी प्रदान करती है।

  1. विंडोज 10 ड्राइवर्स का बैकअप और रिस्टोर करें: चरण-दर-चरण गाइड विंडोज 10 ड्राइवर्स का बैकअप और रिस्टोर करें: चरण-दर-चरण गाइड

    यदि आप अपना विंडोज पुनः इंस्टॉल करते हैं, तो आपको ड्राइवर्स को फिर से डाउनलोड और पुनः इंस्टॉल करना होगा। समस्या यह है कि आपने CD/DVD खो दिया हो सकता है या डिवाइस ड्राइवर का बैकअप गायब हो सकता है। इनमें से कुछ डिवाइस ड्राइवर अब आपके सिस्टम के साथ संगत नहीं हो सकते हैं; इसलिए आपको अपने सभी नवीनतम ड्रा

  1. मिनटों में अपने विंडोज रजिस्ट्री को सुरक्षित रूप से बैक अप और रिस्टोर करें मिनटों में अपने विंडोज रजिस्ट्री को सुरक्षित रूप से बैक अप और रिस्टोर करें

    यदि आप विंडोज रजिस्ट्री को ट्वीक करने की सोच रहे हैं, तो यह महत्वपूर्ण है कि आपके पास पहले उचित बैकअप हों। विंडोज कंप्यूटर के कामकाज के लिए एक महत्वपूर्ण हिस्सा होने के नाते, विंडोज रजिस्ट्री को नुकसान आपके वर्कफ्लोज़ के लिए महत्वपूर्ण बाधाएं पैदा कर सकता है। रजिस्ट्री बैकअप, इस प्रकार, इन समस्याओं

  1. अपने सिस्टम को सुरक्षित करें: विंडोज रजिस्ट्री का सुरक्षित बैकअप और रिस्टोर करें अपने सिस्टम को सुरक्षित करें: विंडोज रजिस्ट्री का सुरक्षित बैकअप और रिस्टोर करें

    रजिस्ट्री आपके कंप्यूटर के मस्तिष्क की तरह कार्य करती है। इसमें उन सभी कॉन्फ़िगरेशन और सेटिंग्स को शामिल किया जाता है जिनका उपयोग घटकों, सेवाओं, अनुप्रयोगों और विंडोज में लगभग हर चीज द्वारा किया जाता है। रजिस्ट्री की दो बुनियादी अवधारणाएं हैं जिनके बारे में पता होना चाहिए: Keys और Values। रजिस्ट्री