آموزش ایمپورت دیتابیس در ssh
یکی از مشکلات بزرگی که هنگام ریستور بکاپ برای وبمستران رخ میدهد مشکل import دیتابیسهای بزرگ میباشد در این مقاله به آموزش ایمپورت دیتابیس در ssh و رفع این مشکل خواهیم پرداخت.
در مقاله افزایش حجم آپلود در phpmyadmin مشکل آن دسته از کسانی که حین ایمپیورت دیتابیس از طریق phpmyadmin به ارور محدودیت php برخورد میکردند را حل کردیم ولی اگر حجم پایگاه داده شما چیزی در حدود ۱۰ تا ۲۰ گیگ باشد چطور؟
قطعاً در اینگونه موارد عملیات ایمپورت به درستی انجام نمیشود و به دلیل حجم زیاد دیتابیس روش فوق عاقلانه نخواهد بود. در مواردی هم اگر بخواهید به طور مثال یک وبسایت را از یک هاست با پنل دایرکت ادمین به هاست جدید مجهز به سی پنل انتقال دهید مجبور هستید عملیات انتقال را به صورت دستی انجام دهید و باید از روش ایمپورت دیتابیس در ssh استفاده کنید.
نحوه ایمپورت دیتابیس در ssh
قدم اول: ابتدا با دسترسی روت از طریق putty به ssh سرور خودتان لاگین کنید.
قدم دوم: سپس فایل دیتابیس سایت موردنظر را بر روی سرور دانلود کنید، میتوانید از دستور wget و یا curl بدین منظور استفاده کنید.
قدم سوم: سپس باید پارامتر max_allowed_packet را در فایل my.cnf افزایش دهید، این پارامتر مقدار حداکثر پکتهای دریافتی مشخص میکند و در سرعت ایمپورت دیتابیس در ssh بسیار تأثیرگذار است. توصیه میکنیم قبل از اعمال هرگونه تغییری در فایل مربوطه از آن یک بکاپ تهیه کنید. مسیر پیشفرض این فایل در شاخه etc/ قرار دارد.
دو راه برای ایمپورت دیتابیس در ssh وجود دارد نخست به پنل کاربری لاگین کنید و توسط آموزش ساخت دیتابیس در mysql اقدام به ساخت یک دیتابیس و یک یوزر اختصاصی جدید کنید؛ و سپس توسط دستور زیر اقدام به ایمپورت دیتابیس از طریق ssh کنید.
۱
|
mysql –u dbuser –p dbname < database.sql
|
کاملاً مشخص هستش دیگه، به جای dbuser نام یوزری که از طریق پنل ساختید را وارد میکنید و به جای dbname نام دیتابیس ساخته شده و به جای database.sql نیز مسیر فایل دیتابیس خودتان را وارد میکنید.
توجه: این دستور را در شاخهای که فایل دیتابیس شما قرار دارد وارد کنید.
در حالتی هم اگر میخواهید فایل دیتابیس با دسترسی root بر روی mysql ایمپورت شود میتوانید از دستور زیر جهت ایمپورت دیتابیس در ssh استفاده کنید.
۱
|
mysql –u root –p dbname < database.sql
|
بعد از زدن دکمه Enter از شما پسورد root دیتابیس پرسیده خواهد شد که با واردکردن آن مرحله ایمپورت دیتابیس در ssh آغاز شده و بسته به سختافزار سرور، حجم دیتابیس، پارامتر max_allowed_packet و سرعت اینترنت شما میتواند متفاوت باشد.
استفاده از روش ذکر شده جهت ایمپورت دیتابیس در ssh به جهت نوع دسترسی و قابلیت اطمینان کمترین خطا و مشکل را حین ایمپورت بر روی ایجاد خواهد کرد.
نکته: چنانچه بر روی سرور شما سایتهای زیادی در حال میزبانی هستند، توصیه میکنیم اقدام ایمپورت دیتابیس را به ساعاتی از روز موکول کنید که کمترین حجم ترافیکی بر روی سرور وجود داشته باشد تا این عمل باعث کندی و در مواردی باعث از down شدن سرور شما نشود.