مهاجرت با ووجود mongo IBSng migration with mongo
سطر ۷: | سطر ۷: | ||
− | * نصب و راه اندازی سرور دوم | + | * گام ۱: نصب و راه اندازی سرور دوم |
روند نصب را همانند نصب جدید انجام دهید. از نصب بودن postgresql و mongo اطمینان حاصل نمایید. | روند نصب را همانند نصب جدید انجام دهید. از نصب بودن postgresql و mongo اطمینان حاصل نمایید. | ||
− | * پشتیبان گیری از دیتابیس postgresql | + | |
+ | * گام ۲: پشتیبان گیری از دیتابیس postgresql | ||
بر روی سرور اصلی (مبدا( رفته و سرور را stop نمایید. توجه نمایید که stop کردن سرور مورد نظر باید با هماهنگی مشتری انجام شود. | بر روی سرور اصلی (مبدا( رفته و سرور را stop نمایید. توجه نمایید که stop کردن سرور مورد نظر باید با هماهنگی مشتری انجام شود. | ||
سطر ۱۶: | سطر ۱۷: | ||
<div dir=ltr lang=en> | <div dir=ltr lang=en> | ||
− | pg_dump -Fc --exclude-table=*tmp* --exclude-table=connection_log* --exclude-table=*snapshot* --exclude-table=ip_map --exclude-table=pg_temp* --exclude-table=pg_toast_temp* -U ibs IBSng -f | + | pg_dump -Fc --exclude-table=*tmp* --exclude-table=connection_log* --exclude-table=*snapshot* --exclude-table=ip_map --exclude-table=pg_temp* --exclude-table=pg_toast_temp* -U ibs IBSng -f /tmp/IBSng.psql.gz |
</div> | </div> | ||
− | * بازیابی postgresql در سرور دوم | + | * گام ۳: بازیابی postgresql در سرور دوم |
+ | |||
+ | در این مرحله فایل را با استفاده از scpبه سرور مقصد منتقل نمایید. برای مثال فایل را در دایرکتوری زیر ذخیره میکنیم. | ||
+ | |||
+ | <div dir=ltr lang=en> | ||
+ | /tmp/IBSng.psql.gz | ||
+ | </div> | ||
پس از اتمام کار, بر روی سرور دوم (مقصد) رفته و دستور زیر را برای بازیابی پشتیبان وارد نمایید. | پس از اتمام کار, بر روی سرور دوم (مقصد) رفته و دستور زیر را برای بازیابی پشتیبان وارد نمایید. | ||
سطر ۳۵: | سطر ۴۲: | ||
</div> | </div> | ||
− | شما وارد محیط psql شده اید. | + | شما وارد محیط psql شده اید. دستور زیر را وارد نمایید. |
<div dir=ltr lang=en> | <div dir=ltr lang=en> | ||
سطر ۴۸: | سطر ۵۵: | ||
مثلا اگر دستور اول عدد 1500000را برگرداند, دستور را با رقم 1501000 وارد میکنیم. | مثلا اگر دستور اول عدد 1500000را برگرداند, دستور را با رقم 1501000 وارد میکنیم. | ||
− | سپس IBS | + | سپس IBS مقصد را با دستور زیر restart مینماییم. |
<div dir=ltr lang=en> | <div dir=ltr lang=en> | ||
سطر ۵۴: | سطر ۶۱: | ||
</div> | </div> | ||
+ | حال میتوان سرور مقصد را بر روی بار آورد. | ||
− | * پشتیبانگیری mongoدر سرور اول | + | * گام ۴: پشتیبانگیری mongoدر سرور اول |
+ | دستور زیر را برای گرفتن backup در سرور اصلی وارد نمایید. | ||
+ | |||
+ | <div dir=ltr lang=en> | ||
+ | mongodump -j 32 --archive=/tmp/IBSng.mongo.gz --gzip --db IBSng | ||
+ | </div> | ||
+ | دستور در دایرکتوری tmp فایل پشتیبان را ذخیره میکند.در این مرحله فایل را با استفاده از scpبه سرور مقصد منتقل نمایید. برای مثال فایل را در دایرکتوری زیر ذخیره میکنیم. | ||
<div dir=ltr lang=en> | <div dir=ltr lang=en> | ||
− | + | /tmp/IBSng.mongo.gz | |
</div> | </div> | ||
+ | * گام ۵: بازیابی mongoدر سرور دوم | ||
− | + | در این مرحله با استفاده از دستور زیر پشتیبان را بر روی سرور زیر بار بازیابی مینماییم. | |
<div dir=ltr lang=en> | <div dir=ltr lang=en> |
نسخهٔ ۲۹ آوریل ۲۰۱۷، ساعت ۱۵:۳۳
جابجایی سرور با mongo
- گام ۱: نصب و راه اندازی سرور دوم
روند نصب را همانند نصب جدید انجام دهید. از نصب بودن postgresql و mongo اطمینان حاصل نمایید.
- گام ۲: پشتیبان گیری از دیتابیس postgresql
بر روی سرور اصلی (مبدا( رفته و سرور را stop نمایید. توجه نمایید که stop کردن سرور مورد نظر باید با هماهنگی مشتری انجام شود. پس از stop کردن IBSng اقدام به پشتیبان گیری کردن از پایگاه داده postgresql نمایید. برای این کار دستور زیر را وارد نمایید.
pg_dump -Fc --exclude-table=*tmp* --exclude-table=connection_log* --exclude-table=*snapshot* --exclude-table=ip_map --exclude-table=pg_temp* --exclude-table=pg_toast_temp* -U ibs IBSng -f /tmp/IBSng.psql.gz
- گام ۳: بازیابی postgresql در سرور دوم
در این مرحله فایل را با استفاده از scpبه سرور مقصد منتقل نمایید. برای مثال فایل را در دایرکتوری زیر ذخیره میکنیم.
/tmp/IBSng.psql.gz
پس از اتمام کار, بر روی سرور دوم (مقصد) رفته و دستور زیر را برای بازیابی پشتیبان وارد نمایید.
pg_restore -Fc -j32 -U ibs -d IBSng /tmp/IBSng_pg_dump
پس از بازیابی اطلاعات لازم است حداکثر connection log id را به دست اوریم. دستور زیر را در سروری که زیر بار بوده است (قدیمی) وارد نمیایید.
psql -U ibs -d IBSng
شما وارد محیط psql شده اید. دستور زیر را وارد نمایید.
SELECT max(connection_log_id) from connection_log;
دستور, یک خروجی بر روی نمایشگر نشان میدهد که حداکثر مقدار next val است. عدد به دست آمده را ذخیره میکنیم. سپس عدد به دست آمه را به علاوه یک عدد bias به دستور زیر در سیستم مقصد میکنیم.
SELECT setval('connection_log_id', 1501000);
مثلا اگر دستور اول عدد 1500000را برگرداند, دستور را با رقم 1501000 وارد میکنیم. سپس IBS مقصد را با دستور زیر restart مینماییم.
/etc/init.d/IBSng restart
حال میتوان سرور مقصد را بر روی بار آورد.
- گام ۴: پشتیبانگیری mongoدر سرور اول
دستور زیر را برای گرفتن backup در سرور اصلی وارد نمایید.
mongodump -j 32 --archive=/tmp/IBSng.mongo.gz --gzip --db IBSng
دستور در دایرکتوری tmp فایل پشتیبان را ذخیره میکند.در این مرحله فایل را با استفاده از scpبه سرور مقصد منتقل نمایید. برای مثال فایل را در دایرکتوری زیر ذخیره میکنیم.
/tmp/IBSng.mongo.gz
- گام ۵: بازیابی mongoدر سرور دوم
در این مرحله با استفاده از دستور زیر پشتیبان را بر روی سرور زیر بار بازیابی مینماییم.
mongorestore -j 32 --gzip --archive=/tmp/IBSng.mongo.gz