البحث في الموقع
المحتوى عن 'تصدير'.
-
إحدى المهارات الأساسية والمهمة التي عليك أن تتقنها هي القدرة على استيراد وتصدير قواعد البيانات، إذ تستطيع أخذ نسخ احتياطية لقواعد بياناتك وتستعيدها عند الحاجة، أو يمكنك الاستفادة منها لنقل البيانات إلى خادوم جديد أو بيئة تطوير مختلفة. إجراء عملية تصدير من قواعد بيانات MySQL و MariaDB هو أمرٌ بسيطٌ، وسنشرحه في هذا الدرس إضافةً إلى شرح طريقة استيراد النسخة الاحتياطية. المتطلبات المسبقة لتصدير أو استيراد قواعد بيانات MySQL ستحتاج إلى: وصول إلى خادوم لينكس يستعمل قواعد بيانات MySQL أو MariaDB. قاعدة بيانات مع معلومات المستخدم القادر على إجراء عمليات عليها. تصدير قاعدة البيانات تُستعمَل الأداة mysqldump لتصدير قواعد البيانات إلى ملفات SQL نصية، ويمكن بسهولة نقل تلك الملفات كيفما تشاء. ستحتاج إلى معرفة اسم قاعدة البيانات نفسها وإلى اسم المستخدم وكلمة المرور لحسابٍ يملك امتيازاتٍ تسمح –على الأقل– بأذونات القراءة الكاملة على قاعدة البيانات. استعمل الأمر الآتي لتصدير قاعدة البيانات: mysqldump -u username -p database_name > data-dump.sql username هو اسم المستخدم الذي يستطيع الوصول إلى قاعدة البيانات database_name هو اسم قاعدة البيانات التي نريد تصديرها data-dump.sql هو مسار الملف الذي نريد حفظ مخرجات عملية التصدير إليه لن يعرض الأمر السابق أيّة مخرجات مرئية، لكن يمكنك النظر في محتويات الملف data-dump.sql لتتأكد من وجود ملف SQL سليم فيه باستعمال الأمر: head -n 5 data-dump.sql يجب أن تبدو المخرجات (التي تظهر أوّل خمسة أسطر من الملف) كما يلي، يجدر بالذكر أنَّ الملف الآتي هو ناتج عملية تصدير قاعدة بيانات باسم database_name: -- MySQL dump 10.13 Distrib 5.7.16, for Linux (x86_64) -- -- Host: localhost Database: database_name -- ------------------------------------------------------ -- Server version 5.7.16-0ubuntu0.16.04.1 إذا حدثت أيّة أخطاء أثناء عملية التصدير، فسيعرضها mysqldump على الشاشة مباشرةً. استيراد قاعدة البيانات لاستيراد ملف SQL مُصدَّر إلى قاعدة بيانات MySQL أو MariaDB، فعليك أولًا إنشاء قاعدة بيانات جديدة التي ستستضيف البيانات المستوردة. سجِّل دخولك إلى عميل قواعد البيانات بحساب المستخدم root أو أي حساب آخر له امتيازات كافية لإنشاء قواعد بيانات جديدة: mysql -u root -p ستنتقل الآن إلى سطر الأوامر الخاص بقواعد MySQL، أنشِئ الآن قاعدة بيانات جديدة وليكن اسمها new_database: CREATE DATABASE new_database; يجب أن تشاهد الناتج الآتي الذي يدل على نجاح إنشائها: Query OK, 1 row affected (0.00 sec) اخرج الآن من عميل MySQL بكتابة الأمر exit أو بالضغط على الزرين Ctrl+D، وبعد عودتك إلى سطر الأوامر ستستطيع استيراد الملف باستخدام الأمر الآتي: mysql -u username -p new_database < data-dump.sql username هو اسم المستخدم الذي يستطيع الوصول إلى قاعدة البيانات new_database هو اسم قاعدة البيانات التي نريد استيراد البيانات إليها data-dump.sql هو مسار الملف الذي نريد استيراد محتوياته لن تظهر أية مخرجات إذا نجح تنفيذ الأمر السابق، لكن إن حدثت أخطاء خلال العملية فسيظهرها الأمر mysql على الشاشة. يمكنك التأكد من استيراد قاعدة البيانات بتسجيل الدخول إلى عميل MySQL مجددًا وتفحص البيانات، يمكن فعل ذلك بتحديد قاعدة البيانات الجديدة عبر USE new_database ثم كتابة الأمر SHOW TABLES; أو ما شابهه. الخلاصة أصبحت تعلم كيف تصدِّر قواعد بيانات MySQL إلى ملفات وكيف تستوردها مجددًا. هنالك خياراتٌ أخرى متاحةٌ للأمر mysqldump التي تُعدِّل سلوك هذا الأمر عند تصدير قواعد البيانات، والتي يمكنك التعرف عليها في صفحة التوثيق الرسمي. ترجمة –وبتصرّف– للمقال How To Import and Export Databases in MySQL or MariaDB لصاحبه Mateusz Papiernik
- 3 تعليقات
-
- نسخ احتياطي
- تصدير
-
(و 2 أكثر)
موسوم في:
-
قد تكون عملية نقل المحتوى من موقع ووردبريس إلى آخر عمليةً تُضيّع الوقت وتُسبِّب الصداع، إذ لا تستطيع ببساطة نقل الملفات وقاعدة البيانات؛ لا تعمل ووردبريس هكذا! لحسن الحظ، هنالك أداة "استيراد" (Import) و"تصدير" (Export) في ووردبريس، لكن تلك الأدوات -لسوء الحظ- بسيطة جدًا ويلزم تطويرها لكي تلبي احتياجاتك الأخرى. سأشرح في هذا المقال خطوةً بخطوة كيفية نقل ووردبريس من مكانٍ إلى آخر. قبل أن نبدأ: خذ نسخة احتياطية من موقعك قد تكون هنالك خصوصيات لبعض حالات تثبيت ووردبريس ستؤدي إلى عرقلة عملية نقل المحتوى؛ وعلى الرغم من أنَّ هذه المقالة ستتعامل مع بعض الحالات الخاصة (عملية نقل جزء من محتوى ووردبريس تحديدًا)، لكن لا توجد ضمانة أنَّ الخطوات الموضحة هنا ستعمل بسلاسة لكل حالات التثبيت. ومن الغني عن الذكر أنَّك مسؤولٌ وحدك عن موقعك، حتى لو اتبعت هذا الدليل حتى النهاية؛ هنالك أيضًا بعض العمليات التي عليك إجراؤها على قاعدة البيانات اعتمادًا على ما الذي تريد فعله؛ وإذا أخطأتَ وحذفتَ كمية كبيرةً من البيانات فلا تلومن إلا نفسك! أنصحك بتوخي الحذر كثيرًا في هذا الصدد. أنشأتُ نسختين منفصلتين من ووردبريس مثبتتين على الخادوم المحلي لكي أوفر لك صورًا لكل خطوة من الخطوات. ربما قد ترغب في نقل محتواك إلى موقع تجريبي كبداية لتتحقّق من أن العملية ستتم كما هو مخطّط له. في النهاية، أنصحك أن تأخذ نسخةً احتياطيةً لكل الموقع في هذه المرحلة؛ لكنك بالطبع تفعل ذلك بشكلٍ دوري، صحيح؟ (إن لم تكن تأخذ نسخًا احتياطية، فأنصحك بفعل ذلك فورًا). إذا أردت القيام بعملية النقل يدويًا، فتذكر أن تُضمِّن قاعدة البيانات الخاصة بك بالإضافة إلى ملفات الموقع (وذلك لأنها تتضمن الملفات التي رفعتها على موقعك). نسخ الملفات احتياطيا يمكنك إنشاء وتنزيل نسخة ZIP من موقعك عبر FTP؛ وهذا يختلف باختلاف عميل FTP الذي تستخدمه، لكن العملية بسيطة وسهلة التطبيق. تأكد أنَّك تنزل وتحفظ ملف النسخة الاحتياطية المضغوط بشكل آمن، مثَلهُ كَمَثَلِ أيّ نسخةٍ احتياطيةٍ أخذتها سابقًا. نسخ قاعدة البيانات احتياطيا سجل دخولك إلى حسابك في phpMyAdmin واختر قاعدة البيانات التي ثبتت فيها ووردبريس. اضغط على Export في القائمة العلوية، ثم اختر Quick الذي يكون ملائمًا لأغلبية الحالات، لكن إن كان عندك جداول لأكثر من نسخة من ووردبريس في نفس قاعدة البيانات، فاضغط على Custom واختر الجداول التي تريد أخذ نسخة احتياطية منها؛ اترك جميع الخيارات البقية على حالها، وفي النهاية اضغط على Go لتنزيل ملف النسخ الاحتياطي لقاعدة بياناتك (بصيغة sql). إذا جرت الأمور كما هو متوقع، فلن نحتاج إلى النسخة الاحتياطية، لكن من المُستحسن دائمًا أخذ نسخة احتياطية قبل الإقدام على إجراء عملية كالتي سنفعلها. وإن كان في الموقع الذي ستنقل المحتوى إليه بعض المقالات، فيجب أخذ نسخة احتياطية له كذلك. لنبدأ العمل بعد أخذ الاحتياطات اللازمة. تغيير عنوان URL موقع ووردبريس: نقل موقع كامل إذا كنت تفكر في تغيير رابط URL لموقعك أو تريد نقل كل شيء من نسخة إلى أخرى، فاعلم أنَّك قد انتقيت أسهل خيار؛ فأدوات ووردبريس للتصدير (Export) والاستيراد (Import) ستفي تمامًا بالغرض، وليس عليك القيام بأي عمليات معقدة. إليك طريقة نقل جميع محتويات موقع ووردبريس من صفحات وصور وملفات ومنشورات …إلخ. إلى موقع جديد. من الأسهل أن تُنشِئ نسخة ووردبريس جديدة على خادومك الجديد (أو في مكانٍ آخر في نفس الخادوم) ثم تستخدم التصدير/الاستيراد بدلًا من نقل ملفات الضبط. يجب أن تكون نسخة ووردبريس عندك محدثةً إلى آخر إصدار، وإن لم تكن محدَّثةً فعليك ترقيتها أولًا؛ وإن لم تستطع الترقية لسببٍ من الأسباب -مثل الحاجة إلى استخدام إضافة معينة لا تعمل على الإصدارات الحديثة- فيمكن أن تُثبِّت إصدارًا قديمًا، لكن ذلك ليس مستحسنًا لاحتمال وجود مشكلات أمنية في الإصدارات القديمة من ووردبريس. أولا: التصدير من الموقع القديم افتح لوحة التحكم في ووردبريس واضغط على Export (تصدير) من قائمة Tools (أدوات). أبقِ على خيار All content (كل المحتوى) مُفعَّلًا لأنك تريد تصدير كل شيء، ثم اضغط على Download Export File (تحميل ملف التصدير). سيتم إنشاء ملف XML. أبقه في مكانٍ آمن ريثما تنقله إلى الموقع الجديد. ثانيا: تثبيت إضافة الاستيراد تثبيت إضافة WordPress Importer: الآن في موقع ووردبريس الجديد الذي تريد الانتقال إليه، اذهب مرةً أخرى إلى Tools (الأدوات) لكن هذه المرة اختر Import (استيراد). ستظهر لك قائمة بآليات الاستيراد المتوفرة، التي عليك أن تختار WordPress من بينها. اضغط على Install Now ثم انتظر تنزيل وتثبيت الإضافة. عليك بعدها -إن جرت الأمور على ما يرام- أن تضغط على Activate Plugin & Run Importer في الصفحة التي ستظهر لك. يجب أن تكون قادرًا في هذه المرحلة على استيراد ملف XML الذي أنشأتَه في الخطوة السابقة. ثالثا: رفع المحتوى اضغط على Choose File (اختر ملف) واختر ملف XML الذي أنشأتَه في موقعك القديم. اضغط بعدها على زر Upload file and import (رفع الملف واستيراده). رابعا: اختيار المحتوى ستُعطى خيارًا لإسناد المحتوى الذي سيتم استيراده إلى مستخدمين موجودين في موقعك الجديد (إذا كان لديك حساب مستخدم في الموقع القديم والجديد، فيمكنك إسناد مقالاته في الموقع القديم إلى حسابه في الموقع الجديد)، أو يمكنك إنشاء المستخدمين إما بأن تكون لهم نفس أسمائهم القديمة أو أن تُنشِئ واحدًا جديدًا تختاره أنت، وهذا يضمن أنَّ كل المحتوى الذي سيتم استيراده سيُسنَد إلى حساب مستخدمٍ ما موجود في الموقع الجديد. إذا كانت لديك أيّة صور أو ملفات تريد نقلها إلى الموقع الجديد، فعليك بكل تأكيد أن تختار الخيار Download and import file attachments (تنزيل واستيراد المرفقات)، لاحظ أنَّه ليس مفعلًا افتراضيًا. اضغط على زر Submit لإكمال عملية الاستيراد. قد يكون تحميل الصفحة أطول من المعتاد بسبب إنشاء سجلات جديدة في قاعدة البيانات، لكن سينتهي تحميلها حكمًا. انتظر بصبر إلى أن تكتمل العملية وبعدها ستجد أنَّ جميع محتوى موقعك السابق قد تم استيراده إلى موقعك الجديد الذي دبَّت فيه الحياة! نقل جزئي للمحتوى حسنًا، ما سبق كان سهلًا للغاية، لكن إن كنت تتطلع نحو تصدير بعض محتويات موقعك، فللأسف لن تكون أدوات ووردبريس وحدها كافيةً بالنسبة إليك. اختيار All content (كل المحتوى) هو الطريقة الوحيدة لتصدير المرفقات (أي الملفات التي تظهر في قسم Media أو الوسائط)؛ أي لو أردت نقل أجزاء مُحدَّدة من المحتوى بالإضافة إلى الصور المرتبطة بتلك الأجزاء، فأنت هنا أمام خيارين: إما أن تنقل كل المحتوى ثم تحذف الأجزاء التي لا تريدها (وهذه مضيعةٌ للوقت، خصوصًا في المواقع الكبيرة)، أو أن تحاول نقل الملفات وقاعدة البيانات يدويًا، وهذا ما سأريك إياه الآن. سأشرح عملية تصدير وتعديل SQL التي سأريك إياها لغرض ألا وهو نقل المرفقات؛ لكن يمكنك استخدام طريقة مماثلة لها بنقل قاعدة البيانات كلها، وهذا مفيدٌ إذا أردت نقل كل المحتوى لكن ملف XML الناتج كبيرٌ للغاية ولا يمكن رفعه عبر أداة الاستيراد. أولا: اختيار المحتوى الذي تريد تصديره اذهب مرةً أخرى إلى Tools (الأدوات) ثم Export (تصدير). بعد اختيارك للمحتوى الذي تريد تصديره، اضغط على Download Export File. إذا كنت تريد اختيار أكثر من مستخدم على سبيل المثال، أو أكثر من مجال زمني، أو جميع الصفحات (pages) وجميع المنشورات من مستخدم معيّن، فيمكنك العودة إلى هذه الصفحة وإنشاء عدِّة ملفات تصدير. ثانيا: استيراد الملفات المصدرة بعد أن تصبح لديك جميع ملفات WXR XML التي تريد استيرادها، فانتقل إلى الموقع الجديد وثبِّت إضافة WordPress Importer كما رأيت سابقًا. يمكنك رفع ملفات (ملف في كل مرة) كما في الفقرة السابقة وستتم إضافة المحتوى الموجود فيها إلى الموقع الجديد. لكن هذه ليس النهاية، لأنك ستلاحظ عدم وجود أيّة مرفقات (الصور المرفقة على سبيل المثال) في موقعك الجديد. نسخ ملفات الوسائط انتقل إلى مجلد /wp-content/uploads/ في موقعك القديم عبر عميل FTP. سأستخدم هنا مستكشف ملفات ويندوز 10 عميلًا لبروتوكول FTP، لكن أغلبية تطبيقات FTP قادرة على ضغط وتنزيل الملفات. نزِّل ملف ZIP الذي ولَّدته ثم ارفعه إلى موقعك الجديد عبر FTP (أو انسخ الملف والصقه في عميل FTP إن استطعت الوصول إلى كلا الموقعين منه [أي العميل]). يمكنك الآن استخراج جميع الملفات من المجلد المضغوط في مجلد Uploads. لسوء الحظ، هذه ليست آخر خطوة؛ فعلى الرغم من أنَّ الملفات في مكانها الصحيح، لكن ووردبريس لا تعلم عنها شيئًا لأنَّ بيانات تلك المرفقات لم تُنسَخ من قاعدة البيانات. رابعا: تصدير بيانات المرفقات من قاعدة البيانات اذهب إلى phpMyAdmin في موقعك القديم وابحث عن جدول wp_posts (ضع البادئة المناسبة بدلًا من wp_). عليك الآن العثور على بيانات المرفقات (أي بيانات الوسائط)، ولهذا استخدم تعليمة SQL الآتية (لا تنسَ تغيير بادئة الجدول إن لزم الأمر) ثم اضغط على Go. SELECT * FROM wp_posts WHERE post_type = “attachment” مرِّر إلى أسفل نتائج الطلبية ثم اضغط على Show all لكي تظهر جميع السجلات ثم اضغط على Check All لاختيارها جميعًا ثم Export لتصديرها. ستتعقد بعض الأمور عند هذه النقطة، لكن لن تواجهك مشكلاتٌ إن تابعت الخطوات بحذافيرها. اختر Custom لإظهار كل الخيارات الممكنة. مرِّر إلى الأسفل إلى قسم Format-specific Options. اختر data. اترك كل شيءٍ على حاله ثم اضغط على Go. خامسا: تعديل ملف SQL هذه الخطوة ضرورية إن كان لقاعدة بيانات موقعك الجديد بادئة مختلفة عن قاعدة بيانات الموقع القديم الذي صدَّرتَ ملف SQL منه. عدِّل ملف .sql الناتج باستخدام محرر نصي مثل Notepad++ وابحث عن البادئة القديمة وضع البادئة الحديثة بدلًا عنها. يمكنك تجاهل هذه الخطوة إن كانت بادئة قاعدتَي البيانات متماثلة (أي أنَّ كلا الجدولين هما wp_posts). سادسا: استيراد بيانات المرفقات اذهب إلى قاعدة البيانات للموقع الجديد واعثر على جدول wp_posts (أو ما يكافؤه) ثم اضغط على Import. اضغط على Choose File -اضغط ولا تسحب وتُفلِت، لعدم توفر هذه الميزة في phpMyAdmin- ثم اختر ملف SQL الذي صدَّرتَه. اترك بقية الخيارات على حالها ثم اضغط على Go لتنفيذ الطلبية، ثم سترى رسالة تخبرك أنَّ الطلبية قد نُفِّذَت بنجاح، وسترى حينها المرفقات ظاهرةً في صفحة الوسائط، لكن هنالك خطوة إضافية عليك اتباعها حتى تظهر الصور بشكلٍ صحيح. سابعا: تصدير البيانات الوصفية للمنشورات بشكلٍ مشابه لما فعلناه سابقًا في قاعدة البيانات: اعثر على جدول wp_postmeta في قاعدة بيانات الموقع القديم ثم اضغط على Export. اختر Custom ثم اختر data بدلًا من structure and data كما سبق معنا. عليك هذه المرة العثور على قسم Data Creation Options واختيار REPLACE لخيار function to use when dumping data. اضغط الآن على GO لإنشاء وتنزيل ملف SQL. ثامنا: تعديل ملف SQL أكرر مرةً أخرى أنَّ عليك تعديل البادئة في ملف SQL إن اختلفت بادئة جداول قاعدة البيانات الجديدة عن القديمة. عليك أيضًا البحث عن روابط URL القديمة واستبدال الجديدة بها. تاسعا: استيراد البيانات الوصفية للمنشورات اذهب إلى جدول wp_postmeta (أو أيًّا كانت بادئة الجدول) في قاعدة بيانات الموقع الجديد، ثم استورد ملف SQL المُعدَّل كما سبق. يجب أن تكون مكتبة الوسائط جاهزةً عندك تمامًا، وقادرةً على الاندماج مع المحتوى الذي نقلته سابقًا. خاتمة تهانينا إذا نجحتَ بالمرور عبر كل تلك الخطوات، هذه طريقة التفافية لنقل بعض الصور الخاصة بمنشورات معيّنة. لكن ما تزال هنالك بعض المشكلات الصغيرة مع هذه الطريقة: لو أردت نقل بعض الصور، فعليك اختيار المجلدات يدويًا عند رفعها (أرجو أن تكون الصور التي تريدها مصنفةً حسب التاريخ، وإلا فستأخذ منك هذه المهمة وقتًا طويلًا جدًا!)؛ وقد تواجه بعض المشاكل بتكرار المفاتيح الرئيسية (primary keys) عند نقل جدول wp_posts إن كانت عندك منشوراتٌ في الموقع الجديد. من الجلي أنَّه يجب تطوير عملية التصدير/الاستيراد في الإصدارات المستقبلية من ووردبريس بدلًا من هذه الجلبة بتعديل قاعدة البيانات يدويًا. لكن استعن بالخطوات السابقة إلى أن يحين ذاك الوقت. إن كانت لديك أيّة أفكار أو طرق حول نقل أجزاء من موقع ووردبريس إلى آخر، فأرجو أن تشاركنا إياها بالتعليقات. ولا تتردد بالسؤال عن أيّة مشكلة تواجهك عند تنفيذ الخطوات السابقة، نحن موجودون دائمًا للمساعدة. هل ترغب في امتلاك موقع ووردبريس سريع وآمن؟ احصل على موقع ووردبريس احترافي بالاستعانة بأفضل خدمات الووردبريس على خمسات أنشئ موقع ووردبريس الآن ترجمة -وبتصرّف- للمقال A Step By Step Guide to Moving Content From One WordPress Site to Another لصاحبه Tom Ewer.
-
على غرار ملفات برامج أوفيس الأخرى، ملاحظات OneNote قابلة للتصدير كملفات بعدّة صيغ، المشاركة مع الآخرين لعرضها أو تحريرها، أو الطباعة على أوراق بأحجام مختلفة. سنستعرض في هذا الدرس تصدير الملاحظات، مشاركتها مع الآخرين أو إرسالها إليهم، بالإضافة إلى تعديل إعدادات الطباعة لغرض طباعتها. تصدير الملاحظات يمكن تصدير صفحات، مقاطع، أو دفاتر ملاحظات OneNote وحفظها على جهازك بعدة صيغ، مثل ملفات OneNote (.one أو .onepkg)، مستندات وورد (.docx أو .doc) ملفات PDF، وغيرها. ويتم ذلك بالذهاب إلى تبويب File> Export: من قسم Export Current حدّد الجزء الحالي الذي تريد تصديره (الصفحة الحالية، المقطع الحالي، أو دفتر الملاحظات الحالي). من قسم Select Format حدّد بأي صيغة تريد تصدير الملف. الخيارات المتوفرة للصفحات هي نفسها للمقاطع. أمّا لدفاتر الملاحظات فلا تتوفّر سوى ثلاثة خيارات. بعد أن تحدّد الصيغة انقر على زر Export. سيظهر مربّع الحوار Save As، ومنه يمكنك إدخال اسم الملف وتحديد مجلّد الحفظ ثم النقر على زر Save: مشاركة الملاحظات لكي تتمكّن من مشاركة الملاحظات مع الآخرين، يجب أن تحفظ دفتر الملاحظات على مكان يمكنهم الوصول إليه لعرضه أو تحريره مثل OneDrive أو SharePoint. ويمكنك القيام بذلك مسبقًا عند إنشاء دفتر الملاحظات، أو قبل أن تقوم بعملية المشاركة. لمشاركة الملاحظات اذهب إلى File> Share. إذا لم تحفظ دفتر الملاحظات على OneDrive قم بحفظه في هذه الخطوة بإدخال الاسم والنقر على Move Notebook: الخطوة التالية هي اختيار طريقة المشاركة: Invite People يمكنك استخدام هذا الخيار إذا كانت عناوين البريد الإلكتروني للأشخاص الذين تريد مشاركة الملاحظات معهم متوفّرة لديك. في الحقل الأول أدخل أسماء جهات الاتصال أو عناوين بريدهم الإلكتروني، ثم حدّد صلاحية استخدام الملف: Can View لعرض الملف فقط، أو Can Edit لعرضه وتحريره. في الحقل الثاني قم بإدخال رسالتك إن كنت ترغب في توضيح شيء للمستلمين، ثم قم بتأشير الخيار Require user to sign in before accessing document ليُطلب من المستلم تسجيل الدخول قبل عرض أو تحرير الملف. بعد ذلك انقر على زر Share. بعد أن يستلم المستلم الملف، سيكون بإمكانك فتحه باستخدام نسخة الويب من OneNote وعرضه وتحريره حسب الصلاحية المعطاة له. Get a Sharing Link يمكنك الاستفادة من هذا الخيار لتوليد روابط وإرسالها للآخرين إذا لم تكن لديك عناوين بريدهم الإلكتروني أو إذا كنت ترغب في إدراج الرابط في رسالة وإرسالها من تطبيق آخر لشخص أو مجموعة. هناك نوعان من الروابط: View Link: يمكن لأي شخص يملك الرابط أن يعرض محتوى الملف فقط. Edit Link: يمكن لأي شخص يملك الرابط أن يعرض محتوى الملف ويحرّره أيضًا. انقر على زر Create Link أمام الرابط المرغوب ثم انسخه وارسله: Share with Meeting إذا كان هناك اجتماع قائم حاليًا على الإنترنت وترغب في مشاركة ملاحظاتك مع الحضور انقر على زر Share with Meeting، بشرط أن يدعم الاجتماع مشاركة ملاحظات OneNote: سيظهر الاجتماع الجاري الذي يدعم مشاركة الملاحظات في مربّع حوار، قم بتحديده ثم انقر على OK.عندها سيتم إرسال رابط لكل الحاضرين في الاجتماع يمكنهم من خلاله الوصول إلى الملاحظات. Move Notebook نقل دفتر الملاحظات يمكن أن يسبب مشاكل في عملية المزامنة أو مشاكل في عرضه وتحريره للأشخاص الذين شاركته معهم. مع ذلك بإمكانك نقله باتباع الارشادات على الرابط الموضّح: إرسال الملاحظات بالإضافة إلى المشاركة، يتيح لك OneNote إمكانية إرسال صفحات الملاحظات إلى جهات اتصال معيّنة أو إرسالها إلى برامج محدّدة، مثل ميكروسوفت وورد. لإرسال صفحة الملاحظات عبر البريد الإلكتروني، انقر على Send> Email Page: سيُفتح تطبيق البريد الافتراضي على جهازك، ومن هناك يمكنك إدخال عنوان البريد الإلكتروني للمستلم وإرسالها. في هذه الحالة سيتم إرسال صفحة الملاحظات كعنصر في متن الرسالة، ويكون غير قابل للتحرير، بالإضافة إلى إدراج الملفات المرفقة في الصفحة (كالصور، ملفات PDF...إلخ) كملفات مرفقة في الرسالة. أمّا إذا رغبت في إرسال صفحة الملاحظات كملف مرفق، فانقر على Send as Attachment: في هذه الحالة سيتم إرفاق صفحة الملاحظات بصيغتين؛ ملف .mht قابل للفتح على متصفحات الويب وملف .one قابل للفتح على OneNote. بالإضافة إلى إدراج الملفات المرفقة على الصفحة كمرفقات في الرسالة. طباعة الملاحظات لطباعة صفحة الملاحظات الحالية اذهب إلى File> Print: بإمكانك طباعة الصفحة مباشرة بالنقر على Print أو معاينة الصفحة وتخصيص إعداداتها قبل الطباعة بالنقر على Print Preview. عند النقر على Print Preview سيُفتح مربّع حوار يحتوي على صورة مصغّرة لشكل الصفحة عند طباعتها، بالإضافة إلى مجموعة خيارات: من قائمة Print Range حدّد الجزء الذي تريد طباعته: Page Group لطباعة جميع الصفحات التابعة لنفس المجموعة سواء كانت رئيسية أو فرعية، Current Page لطباعة الصفحة الحالية فقط، أو Current Section لطباعة المقطع الحالي بصفحاته. من قائمة Page Size حدّد حجم ورقة الطباعة. وبإمكانك تأشير الخيار Scale content to paper width لحصر المحتوى ضمن عرض الورقة. من قسم Orientation اختر اتجاه الورقة؛ أفقي Landscape أو عمودي Portrait. من قائمة Footer حدّد نوع تذييل الصفحة: تذييل يتضمّن عنوان الصفحة ورقمها، رقم الصفحة فقط، عنوان الصفحة فقط، أو بدون تذييل. ثم قم بتأشير الخيار start page numbering at 1 إذا رغبت في أن يبدأ الترقيم من الرقم 1 للتذييل الذي يتضمّن ترقيم. بعد تعديل كل الخيارات، انقر على زر Print لطباعة الملاحظات. وبذلك يكون درسنا قد انتهى في الدرس القادم سنتعرّف على كيفية استخدام الوسوم tags لتنظيم الملاحظات على OneNote.
-
يُعدّ MongoDB أحد أشهر محركات قواعد البيانات من نوع NoSQL، فهو شهير بمرونته، فعاليّته، موثوقيته وسهولة استخدامه، وسنستعرض في المقال كيفية استيراد وتصدير قواعد بيانات MongoDB. تجدر الإشارة إلى أنّه عند حديثنا عن الاستيراد والتصدير فالمقصود التعامل مع البيانات بصيغة مقروءة من قبل البشر، ومتوافقة مع باقي المنتجات البرمجية. بالمقابل، فإن عمليات النسخ الاحتياطي واستعادة النسخ الاحتياطية تُنشئ أو تَستخدم نمط بيانات ثنائية binary خاصّة بـ MongoDB، وتحافظ بالتالي على تناسق وسلامة البيانات إضافة إلى سمات MongoDB الخاصة. بناء على ما سبق، فإنّه من المفضّل استخدام النسخ الاحتياطي عند الحاجة لنقل/تهجير migration قاعدة البيانات طالما أن هناك توافقية ما بين النظام المصدر والنظام الهدف، وهذا الموضوع خارج إطار حديثنا. المتطلبات الأولية قبل أن نتابع، يرجى التأكّد من توفر المتطلبات التالية بشكل كامل: نظام تشغيل Ubuntu 14.04، مستخدم عادي بدون صلاحيات مدير نظام، لكنّه يملك صلاحية تنفيذ أمر sudo. يمكن مراجعة الإعداد الابتدائي لخادوم أوبنتو 14.04 لمزيد من المعلومات، تثبيت وإعداد MongoDB. وعدا عمّا قد يستثنى بوضوح، فإنّ جميع الأوامر التي تحتاج لصلاحيات مدير نظام root في المقال، يجب أن يتم تنفيذها من قبل مستخدم عادي يملك صلاحيات sudo. فهم الأساسيات سنحتاج لفهم بعض الأمور قبل أن نتابع المقال، وإن كنت تملك بعض الخبرة مع قواعد البيانات العلائقية relational المشهورة مثل MySQL، فربّما تجد بعض التشابه عند العمل مع MongoDB. إنّ أول ما تحتاج معرفته حول MongoDB هو أنها تستخدم صيغتي json و bson (الصيغة الثنائية binary من json) بغرض تخزين المعلومات. إنّ Json هي صيغة مقروءة من قبل البشر وبالتالي مناسبة جدًا لتصدير واستيراد البيانات في نهاية الأمر، ومن الممكن أيضًا التعديل على البيانات المصدّرة باستخدام أيّ أداة تدعم json، بما في ذلك أي محرر نصوص بسيط. يبدو أحد الأمثلة عن مستند json على الشكل التالي: {"address":[ {"building":"1007", "street":"Park Ave"}, {"building":"1008", "street":"New Ave"}, ]} إنّ Json مناسبة جدًا للعمل معها، لكنها لا تدعم جميع أنماط البيانات المتاحة في bson، وهذا يعني بأنّه سيكون لدينا "فقدان في الدقّة" في البيانات عند استخدام json، ولهذا السبب فإنّه من الأفضل استخدام الصيغة الثنائية bson في حالة النسخ الاحتياطي والاستعادة لأنّها ستساعد في استعادة قاعدة بيانات MongoDB بشكل أدق. ثانيًا، ليس هناك داعٍ للقلق حول إنشاء قاعدة البيانات إن لم تكن موجودة أصلًا عند القيام باستعادة نسخة احتياطية، حيث سيتم إنشاؤها بشكل تلقائي. إضافة لذلك، فإنّ هيكل المجموعات collections (التي تُقابل الجداول) في القاعدة -بخلاف محركات قواعد البيانات الأخرى- سيتم إنشاؤها أيضًا بشكل تلقائي عند إدراج insert أول سطر. ثالثًا، إن قراءة وإدراج كمّية كبيرة من البيانات في MongoDB، قد يستهلك مصادر النظام كقدرة المعالج، الذاكرة ومساحة التخزين بشكل كبير جدًا وهذه نقطة حساسة على اعتبار أن MongoDB تُستخدم عادة مع قواعد البيانات الكبيرة والبيانات الضخمة، والحل الأسهل لهذه المشكلة هو تنفيذ عمليات التصدير والنسخ الاحتياطي ليلًا. رابعًا، فقد يكون هناك مشكلة في تناسق البيانات consistency إن كنت تملك خادوم MongoDB معرّض لضغط العمل باستمرار وبالتالي قد تتغير البيانات أثناء عملية التصدير، حيث لا يوجد حل بسيط لهذه المشكلة ولكن في نهاية المقال سنتحدث حول استنساخ البيانات replication. استيراد المعلومات إلى قاعدة بيانات MongoDB لنتعلّم كيفية استيراد المعلومات إلى قاعدة بيانات MongoDB، سنقوم باستخدام عيّنة قاعدة بيانات معروفة حول المطاعم. إنّ القاعدة بصيغة json ويمكن تحميلها باستخدام الأمر wget بالشكل التالي: $ wget https://raw.githubusercontent.com/mongodb/docs-assets/primer-dataset/primer-dataset.json وحالما ينتهي التحميل ستحصل على ملف حجمه 12 ميغابايت يُدعى primer-dataset.json في المجلّد الذي قمت بتنفيذ الأمر فيه. سنقوم باستيراد البيانات من هذا الملف إلى قاعدة بيانات جديدة سنسمّيها newdb وضمن جدول سنسمّيه restaurants. للقيام بعملية الاستيراد سنستخدم الأمر mongoimport على الشكل التالي: $ sudo mongoimport --db newdb --collection restaurants --file primer-dataset.json ويُفترض أن تكون نتيجة تنفيذ الأمر السابق على الشكل التالي: 2016-01-17T14:27:04.806-0500 connected to: localhost 2016-01-17T14:27:07.315-0500 imported 25359 documents وكما يظهر في الناتج السابق، فقد تم استيراد 25359 مستند، ولأننا لم نكن نملك قاعدة بيانات باسم newdb، فقد قام محرّك MongoDB بإنشائها بشكل تلقائي، وللتأكّد من نجاح عملية الاستيراد سنقوم بالاتصال بقاعدة البيانات newdb على الشكل التالي: $ sudo mongo newdb سنلاحظ عند تنفيذ الأمر بأن شكل مِحرف سطر الأوامر قد تغيّر، مما يشير إلى نجاح الاتصال بقاعدة البيانات، وللتحقق الآن من عدد المستندات التي تم استيرادها، سنقوم بتنفيذ الأمر التالي: > db.restaurants.count() ويفترض أن تكون النتيجة 25359، وهو مطابق تمامًا لعدد المستندات المستوردة. وللتحقق بشكل أفضل من نجاح الاستيراد، سنقوم باختيار المستند الأول من مجموعة المطاعم بتنفيذ الأمر التالي: > db.restaurants.findOne() وينبغي أن تكون النتيجة على الشكل التالي: { "_id" : ObjectId("569beb098106480d3ed99926"), "address" : { "building" : "1007", "coord" : [ -73.856077, 40.848447 ], "street" : "Morris Park Ave", "zipcode" : "10462" }, "borough" : "Bronx", "cuisine" : "Bakery", "grades" : [ { "date" : ISODate("2014-03-03T00:00:00Z"), "grade" : "A", "score" : 2 }, ... ], "name" : "Morris Park Bake Shop", "restaurant_id" : "30075445" } إنّ مثل هذا التحقق قد يظهر أيّ مشاكل في محتوى المستندات أو ترميزها أو ما شابه ذلك، فصيغة json تستخدم ترميز UTF-8 ويجب أن تكون البيانات المصدّرة والمستوردة بهذا الترميز. تذكّر هذا الأمر دومًا عند القيام بتحرير ملفات json بشكل يدوي، وفيما عدا ذلك فإنّ محرك MongoDB سيتولّى الأمر عنك بشكل تلقائي. أخيرًا، للخروج من سطر أوامر MongoDB نقوم بتنفيذ الأمر exit على الشكل: > exit وسيتم الخروج والعودة إلى سطر أوامر النظام كمستخدم عادي. تصدير المعلومات من قاعدة بيانات MongoDB كما ذكرنا سابقًا، فإنّه من الممكن الحصول على بيانات مقروءة ومفهومة عند القيام بتصدير المعلومات من قاعدة MongoDB، وتكون صيغة الملف المصدّر بشكل افتراضي هي json، ولكن من الممكن أيضًا الحصول على البيانات في ملف بصيغة (csv (comma separated value. نستخدم الأمر mongoexport لتصدير البيانات من قاعدة MongoDB، ويسمح أمر التصدير باختيار قاعدة بيانات، مجموعة من المجموعات collection، حقل من الحقول، وحتّى استخدام استعلام من أجل التصدير. وكمثال بسيط على أمر التصدير mongoexport، سنقوم بتصدير مجموعة المطاعم من قاعدة newdb التي قمنا باستيرادها سابقًا، ويبدو الأمر على النحو التالي: $ sudo mongoexport --db newdb -c restaurants --out newdbexport.json حيث قمنا في الأمر السابق باستخدام المُعامل db-- لتحديد القاعدة، والمُعامل c- لتحديد المجموعة، والمُعامل --out لتحديد اسم الملف الذي سيتم تصدير البيانات إليه، وستكون نتيجة تنفيذ الأمر السابق بشكل ناجح على النحو التالي: 2016-01-20T03:39:00.143-0500 connected to: localhost 2016-01-20T03:39:03.145-0500 exported 25359 records ويظهر الأمر السابق أنه قد تم تصدير 25359 مستند، وهو مماثل تمامًا لعدد المستندات التي قمنا باستيرادها سابقًا. قد نحتاج في بعض الأحيان إلى تصدير جزء من مجموعة، وبالأخذ بعين الاعتبار هيكل ومحتوى مستند المطاعم بصيغة json، سنقوم بتصدير معلومات جميع المطاعم التي تحقق الشرط الذي يقول بأنها موجودة في المنطقة الإدارية المسمّاة Bronx والتي تقدّم الطعام الصيني. للحصول على هذه المعلومات بشكل مباشر في حال كنّا متصلين بقاعدة MongoDB من خلال سطر أوامر MongoDB، فسنقوم بالاتصال بقاعدة البيانات مجددًا: $ sudo mongo newdb ومن ثم سنستخدم الاستعلام: > db.restaurants.find( { borough: "Bronx", cuisine: "Chinese" } ) وسيتم عرض النتيجة مباشرة، وللخروج من سطر أوامر MongoDB سننفّذ الأمر exit كما ذكرنا سابقًا. أمّا لتصدير البيانات من سطر أوامر النظام دون أن نكون متصلين بقاعدة البيانات مسبقًا، فسنقوم بتمرير الاستعلام السابق كمُعامل لأمر mongoexport باستخدام المُعامل q- على الشكل التالي: $ sudo mongoexport --db newdb -c restaurants -q "{ borough: 'Bronx', cuisine: 'Chinese' }" --out Bronx_Chinese_retaurants.json لاحظ في الأمر السابق بأنّا قمنا باستخدام علامات الاقتباس الفرديّة ' داخل علامات الاقتباس الزوجيّة " لأنّ هذا شرط من شروط كتابة الاستعلام في سطر الأوامر، ولو احتجنا لاستخدام علامات اقتباس زوجيّة أو إشارة $ فسنحتاج لتخطي المحارف الخاصة باستخدام \ بإدراجها قبل المحرف الخاص في الاستعلام. إن تمت عملية التصدير بنجاح فينبغي أن تكون النتيجة على الشكل التالي: 2016-01-20T04:16:28.381-0500 connected to: localhost 2016-01-20T04:16:28.461-0500 exported 323 records تُظهر النتيجة السابقة بأنّ هناك 323 سجل قد تم تصديره، ويمكن إيجادها ضمن ملف Bronx_Chinese_retaurants.json الذي قمنا بتحديده. الخلاصة تعرفّنا في المقال على أساسيات استيراد وتصدير المعلومات من وإلى قاعدة بيانات MongoDB. إنّ عملية الاستنساخ replication مفيدة في حالة التوسعة، ولكنّها مهمة أيضًا للنواحي التي تحدثنا عنها، حيث تسمح باستمرارية تشغيل خدمات MongoDB دون انقطاع عبر خادوم MongoDB ثانوي بينما نقوم باستعادة نسخة احتياطية إلى الخادوم الرئيسي عند حدوث فشل. إن جزءًا من عملية الاستنساخ هو سجل العمليات (oplog)، الذي يقوم بتسجيل جميع العمليات التي تقوم بتغيير البيانات، ويمكن استخدام هذا السجل كما في MySQL، لاستعادة البيانات بعد أن تكون آخر عملية نسخ احتياطي قد بدأت. تذكّر بأن عمليات النسخ الاحتياطي تحصل في الليل عندما يكون نشاط قاعدة البيانات في حدّه الأدنى، وإن قررت استعادة نسخة احتياطية لقاعدة البيانات في الفترة المسائية (أي قبل أن تبدأ عملية النسخ الاحتياطي الليلية) فإنّك ستفقد بذلك جميع التعديلات التي تمت على القاعدة منذ آخر عملية نسخ احتياطي. ترجمة -وبتصرّف- للمقال How To Import and Export a MongoDB Database on Ubuntu 14.04 لصاحبه Anatoliy Dimitrov.