جملة كنا بنقولها زمان ..
طبعاً للوهلة الأولى للشخص اللي ميعرفهاش ..
هيفكر إزاي أصلاً حاجة بحجم الفيل هتدخل الثلاجة !! ودا سؤال منطقي بالمناسبة ..
ولكن الإجابة اللي بتخليه يحس بذهول ..
إن ال 3 خطوات بكل بساطة ..
1- افتح التلاجة …
2- دخل الفيل ..
3- اقفل التلاجة ..
——–
ويحس إن فيه حاجة غبية ..
يا إما تفكيره .. يا إما الاجابة .. يا إما حاجة تالتة ..
——–
أثناء تعاملي مع قواعد البيانات Databases ..
أحياناً بيقابلني عملية أخذ Backup .. لداتابيزس حجمها بيكون بال جيجات ..
طبعاً علشان تحتفظ ببعض قواعد عمليات ال Backups ..
انت محتاج مساحات شاسعة ..
ودي حاجة بايخة جداً ..
وحرفياً الداتابيز في الوضع دا بتمثل الفيل …
وال Storage هنا بيمثل الثلاجة ..
——–
ولكن بصيغة اسمها sql.gz ودا بكل بساطة extension لملف عبارة عن ملف ال Sql ولكن في شكله المضغوط ..
لما تقوم بضغط ملفات بإجمالي 3 جيجا مثلاً تلاقيها 3 جيجا إلا نص ميجا .. 2 ميجا .. يا سيدي لما الحظ بكون سعيد بيكون 3 جيجا إلا 20 ميجا ..
——–
لكن المفاجئة الكبرى بقى ..
إنك لما بتضغط ملف ال sql ل sql.gz .. انت بتقلل تقريباً 10 أضعاف مساحته الأصلية …
يعني لو عندك ملف 3000 ميجا .. ف الملف الناتج لا يتعدى ال 250 ميجا ..
طبعاً فرق كبير ..
وفعلياً قللت حجم الفيل جداً ..
ولكن هنا فيه مشكلة هل لما تحب تطلع الفيل من الثلاجة بقى .. ( استرجع الملف وأعمله import )
– هل هتقعد تطلع الفيل من الضغطة اللي هو فيها ؟؟
= في الحقيقة يا عزيزي للوهلة الأولى بردو قد يبدو الأمر كذلك ..
ولكن على عكس ذلك تماماً ..
أنت تقدر بكل سهولة تفك الضغط على ال import مباشرةً كدا ..
zcat /path/to/file.sql.gz | mysql -uUSER -pPASSWORD your_database
ودا الكود اللي تقدر من خلاله تعمل dump ولكن داخل ملف ال sql.gz مباشرةً …
mysqldump -u username -p database_name | gzip > dump.sql.gz