يمكنك استخدام الأمرين BACKUP وRESTORE لتصدير النسخ الاحتياطية إلى حاويات التخزين الخاصة بك،
بالإضافة إلى إنشاء نسخة احتياطية أو استعادتها عبر واجهة المستخدم.
ويعرض هذا الدليل أوامر موفري الخدمات السحابية الثلاثة جميعًا.
المتطلبات
ستحتاج إلى التفاصيل التالية لتصدير النسخ الاحتياطية أو استعادتها إلى حاوية التخزين السحابية (CSP) الخاصة بك:
- نقطة نهاية AWS S3، بالتنسيق:
s3://<bucket_name>.s3.amazonaws.com/<optional_directory>على سبيل المثال:s3://testchbackups.s3.amazonaws.com/حيث:testchbackupsهو اسم حاوية التخزين S3 التي ستُصدَّر إليها النسخ الاحتياطية.backupsهو دليل فرعي اختياري.
- مفتاح الوصول والسر الخاصان بـ AWS. كما أن المصادقة المستندة إلى دور AWS مدعومة أيضًا، ويمكن استخدامها بدلًا من مفتاح الوصول والسر الخاصين بـ AWS كما هو موضح في القسم أعلاه.
- نقطة نهاية GCS، بالتنسيق:
https://storage.googleapis.com/<bucket_name>/ - مفتاح HMAC للوصول وسر HMAC.
- سلسلة اتصال Azure Storage.
- اسم حاوية Azure في حساب التخزين.
- كائن Blob في الحاوية.
النسخ الاحتياطي / استعادة قاعدة بيانات محددة
نعرض هنا كيفية إجراء النسخ الاحتياطي والاستعادة لقاعدة بيانات واحدة. راجع ملخص أوامر النسخ الاحتياطي للاطلاع على أوامر النسخ الاحتياطي الكامل والاستعادة.
AWS S3
BACKUP DATABASE test_backups
TO S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)حيث إن uuid معرّف فريد يُستخدم للتمييز بين مجموعة من النسخ الاحتياطية.
RESTORE DATABASE test_backups
FROM S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)Google Cloud Storage (GCS)
BACKUP DATABASE test_backups
TO S3(
'https://storage.googleapis.com/<bucket>/<uuid>',
'<hmac-key>',
'<hmac-secret>'
)حيث إن uuid معرّف فريد يُستخدم لتحديد النسخة الاحتياطية.
RESTORE DATABASE test_backups
FROM S3(
'https://storage.googleapis.com/<bucket>/<uuid>',
'<hmac-key>',
'<hmac-secret>'
)Azure Blob Storage
BACKUP DATABASE test_backups
TO AzureBlobStorage(
'<AzureBlobStorage endpoint connection string>',
'<container>',
'<blob>/<>'
)حيث إن uuid معرّف فريد يُستخدم لتحديد النسخة الاحتياطية.
RESTORE DATABASE test_backups
FROM AzureBlobStorage(
'<AzureBlobStorage endpoint connection string>',
'<container>',
'<blob>/<uuid>'
)النسخ الاحتياطي / استعادة الخدمة بالكامل
لأخذ نسخة احتياطية من الخدمة بالكامل، استخدم الأوامر أدناه. ستتضمن هذه النسخة الاحتياطية جميع بيانات المستخدم وبيانات النظام الخاصة بالكيانات المُنشأة وملفات تعريف الإعدادات وسياسات الأدوار والحصص والدوال. نوردها هنا باستخدام AWS S3. يمكنك استخدام هذه الأوامر مع الصياغة الموضحة أعلاه لأخذ نسخ احتياطية على GCS وAzure Blob storage.
BACKUP
TABLE system.users,
TABLE system.roles,
TABLE system.settings_profiles,
TABLE system.row_policies,
TABLE system.quotas,
TABLE system.functions,
ALL EXCEPT DATABASES INFORMATION_SCHEMA, information_schema, system
TO S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)حيث إن uuid معرّف فريد يُستخدم لتحديد النسخة الاحتياطية.
RESTORE ALL
FROM S3(
'https://testchbackups.s3.amazonaws.com/<uuid>',
'<key id>',
'<key secret>'
)
SETTINGS restore_access_entities_with_current_grants = 1تتوفر إعدادات restore_access_entities_with_current_grants بدءًا من إصدار ClickHouse Cloud 26.4 (البنية 26.4.1.1942 أو إصدار أحدث).
يمكنك التحقق من الإصدار الذي تعمل به خدمتك باستخدام:
SELECT version()عند تمكين restore_access_entities_with_current_grants، تُقيَّد منح المستخدمين والأدوار المستعادة بما يُسمح للمستخدم الذي يجري الاستعادة بمنحه
(بنفس دلالات GRANT CURRENT GRANTS)، بدلًا من فشل RESTORE
بـ ACCESS_DENIED عندما تحتوي النسخة الاحتياطية على أذونات أكثر مما يمكن للمستخدم الذي يجري الاستعادة منحه.
في الإصدارات الأقدم من 26.4، احذف هذا الإعداد.
FAQ
ماذا يحدث للنسخ الاحتياطية في تخزين الكائنات السحابي الخاص بي؟ هل ينظّفها ClickHouse في مرحلة ما؟
نوفر لك إمكانية تصدير النسخ الاحتياطية إلى حاوية التخزين الخاصة بك، ولكننا لا ننظف أيًا من النسخ الاحتياطية ولا نحذفها بعد كتابتها. وتقع على عاتقك مسؤولية إدارة دورة حياة النسخ الاحتياطية في حاوية التخزين الخاصة بك، بما في ذلك حذفها أو أرشفتها حسب الحاجة، أو نقلها إلى تخزين أقل تكلفة لتحسين التكلفة الإجمالية.
ماذا يحدث لعملية الاستعادة إذا نقلت بعض النسخ الاحتياطية الحالية إلى موقع آخر؟
إذا نُقلت أي نسخ احتياطية إلى موقع آخر، فسيتعين تحديث أمر الاستعادة ليشير إلى الموقع الجديد الذي تُخزَّن فيه النسخ الاحتياطية.
ماذا لو غيّرت بيانات الاعتماد المطلوبة للوصول إلى تخزين الكائنات؟
ستحتاج إلى تحديث بيانات الاعتماد الجديدة في واجهة المستخدم حتى تبدأ النسخ الاحتياطية بالنجاح مرة أخرى.
ماذا لو غيّرت الموقع الذي أُصدِّر إليه النسخ الاحتياطية الخارجية؟
ستحتاج إلى تحديث الموقع الجديد في واجهة المستخدم، وستبدأ النسخ الاحتياطية في التصدير إلى الموقع الجديد. وستظل النسخ الاحتياطية القديمة في الموقع الأصلي.
كيف يمكنني تعطيل النسخ الاحتياطية الخارجية على خدمة سبق أن فعّلتها لها؟
لتعطيل النسخ الاحتياطية الخارجية لخدمة ما، انتقل إلى شاشة إعدادات الخدمة، ثم انقر على Change external backup. وفي الشاشة التالية، انقر على Remove setup لتعطيل النسخ الاحتياطية الخارجية للخدمة.