گاهی لازم است تمام پیامهای یک سرور مترموست Mattermost پاک شوند؛ مثلاً زمانی که میخواهید اطلاعات محیطها را ریست کنید، فضای ذخیرهسازی شما پر شده است و قصد دارید آنرا آزاد کنید، یا سرور را برای استفاده تیمهای جدید آماده کنید. در حال حاضر نرمافزار مترموست Mattermost در نسخههای عادی خود گزینهای در پنل مدیریت خود برای حذف کامل تاریخچه پیامها ارائه نمیدهد، بنابراین این کار باید مستقیم از طریق دیتابیس یا بانک اطلاعاتی انجام شود.
در این نوشتهی آموزشی یاد میگیرید چگونه تمام پیامهای مترموست Mattermost را به صورت امن از طریق دیتابیس PostgreSQL حذف کنید بدون اینکه کاربران، تیمها یا تنظیمات سرور حذف یا تغییری کنند.
پاک کردن همه پیامها در Mattermost با داکر و در دیتابیس PostgreSQL
در این آموزش نیاز است تا دسترسی SSH داشته باشید و Mattermost شما در داکر نصب شده باشد ضمنا باید به کانتینرها دسترسی داشته باشید. توصیه میشود قبل از استفاد از محتوای این آموزش از اطلاعات سرور خود بکاپ تهیه کنید.
برای پاک کردن تمام پیامهای سرور مترموست خود در داکر مراحل زیر را دنبال کنید:
- به مسیر نصب مترموست بروید اگر با تنظیمات پیشفرض در مستندات مترموست پیش رفته باشید مسیر مورد نظر شما مسیر زیر است:
cd /home/mattermost/docker
- حالا برای پیدا کردن اطلاعات دیتابیس مترموست خود دستور زیر را اجرا کنید:
cat .env | grep POSTGRES
- خروجی دستور بالا چیزی به شکل زیر است:
POSTGRES_USER=mmuser
POSTGRES_PASSWORD=xxxxxxxx
POSTGRES_DB=mattermost
- حالا وارد کانتینر docker مترموست خود شوید:
docker exec -it docker_postgres psql -U mmuser -d mattermost
- بعد از ورود به کانتینر مورد نظر دستورات زیر را به ترتیب اجرا کنید:
DELETE FROM posts;
DELETE FROM fileinfo;
UPDATE channels SET lastpostat = 0;
\q
- بعد از اجرای دستورات بالا حالا میتوانید کانتینر مترموست خود را ریاستارت کنید تا تغییرات به طور کامل اعمال شود:
docker restart docker_mattermost
- پایان.!
اگر نیاز به آموزشهای بیشتری در ارتباط با مترموست دارید در بخش نظرات همین نوشته برای ما بنویسید.


















کاربردی بود
تشکر از کامنت شما
قبل از اجرا بکاپ گرفتن واقعا واجبه، چون اینجور دستورات اگه اشتباه بره دردسر درست می کنه.
بکاپ گرفتن قبل از هر تغییر دیتابیسی خیلی مهمه.
برای کسایی که با دیتابیس کار کردن خیلی مفیده
تشکر از کامنت شما
با این روش فقط پیام ها پاک میشن و تیم ها و یوزرها باقی می مونن دیگه؟
بله، طبق همین روش فقط پیام ها و بعضی داده های مرتبط پاک میشن و ساختار اصلی سرور دست نخورده می مونه.
خیلی به درد بخور بود
موفق باشین