mmtaee / ocserv-users-management

ocserv installation and user web-panel management.
90 stars 42 forks source link

بکاپ و برگرداندن بکاپ به سرور جدید #34

Closed hrasoul2 closed 7 months ago

hrasoul2 commented 10 months ago

سلام استاد و خسته نباشید بابت این پنلی که برای Oscerv طراحی کردید میخاستم بگم چطور میتونیم دیتابیس یا اون فایل db.sqlite3 رو سرور جدید ران کنیم که دقیقا یوزرها همه چی برگرده با دستوراتی که نوشتید اصن اشنا نبودم فقط تونستم فایل db.sqlite3 و ocpasswd رو یه سرور جدید بعد نصب پنل و کپی کردن این فایل ها و این چهار تا دستور service nginx restart service backend restart service user_stats restart service ocserv restart پنل با یوزر ها رو بیارم بالا اما مشکلی هست هیچ کاری نمیتونم تو پنل انجام بدم نه میشه یوزری پاک کرد نه ساخت هیچ کاری ولی یوزر ها متصل میشن اگه تاریخ داشته باشن مشکل اینه هیچ کاری تو پنل نمیشه کرد اگه لطف کنید یه کمکی بکنید ممنون میشم

hrasoul2 commented 10 months ago

استاد با کلی گشتن یکم متوجه شدم باید اسکریپت رو چطور اجرا کرد من فایل db.sqlite3 رو از سرور قبلی برداشتم و اسمشو تغییر دادم به db-old.sqlite3 تو سرور جدید پنل رو نصب کردم و بجای فایل db.sqlite3 تو محل نصب /var/www/site/back-end/db/ فایل db-old.sqlite3 سرور قبلی رو قرار دادم و این دستور رو اجرا کردم /var/www/site/back-end/venv/bin/python3 manage.py migrate_to_new --old-path /OLD_PATH/db-old.sqlite3 اما اخطار فایل manage.py موجود نمیباشید داد /var/www/site/back-end/venv/bin/python3: can't open file 'manage.py': [Errno 2] No such file or directory واسه همین گفتم باید باید ادرس manage.py رو بدم و اینو اجرا کردم /var/www/site/back-end/venv/bin/python3 /var/www/site/back-end/manage.py migrate_to_new --old-path /OLD_PATH/db-old.sqlite3 اما با اجرای این دستور هم همچین اخطاری بهم داد django.db.utils.OperationalError: no such table: app_ocservgroup البته خیلی طولانی بود این خط اخرش بود و خلاصه اینکه درست نشد دیگه نه با راه قبلی که گفتم و نه با این راه اگه بشه اشکال منو بگید خیلی ممنون میشم ازتون

mmtaee commented 10 months ago

سلام . ابتدا کامند pwd را در مسیر فایل قدیم دیتابیس بزنید جاییکه این فایل (db-old.sqlite3) موجود هست . بعد مسیر را کپی کنید جای مقدار OLD_PATH بزارید مشکل حل میشه .

hrasoul2 commented 10 months ago

خیلی ممنونم بابت اینکه جوابمو دادید

من الان فایل db-old.sqlite3 رو تو مسیر روت گذاشتم /root/db-old.sqlite3 و دستور pwd -L /root/ رو اجرا کردم و اینو بهم نشون داد /root و بعد این دستور رو اجرا کردم /var/www/site/back-end/venv/bin/python3 /var/www/site/back-end/manage.py migrate_to_new --old-path /root/db-old.sqlite3 اما الان همچین اخطار نشونم میده CommandError: Error executing SQL query: no such column: app_ocservuser.oc_username

ببخشید واقعا انقد سوالای زیاد میپرسم من خیلی مبتدی هستم در حدی که کامند pwd رو سرچ کردم چطور اجرا کنم فقط اگه من چیو دارم غلط میزنم یا از قلم انداختم ممنونتون میشم

در واقع نمیدونم باید تو کدوم دایرکتوری باشم بنظرم مشکل همینه وقتی تو root هستم var/www/site/back-end/venv/bin/python3 manage.py این دستور میزنم میگه اصن manage.py رو ندارم وقتی /var/www/site/back-end/venv/bin/python3 /var/www/site/back-end/manage.py migrate_to_new --old-path /root/db-old.sqlite3 اینو میزنم CommandError: Error executing SQL query: no such column: app_ocservuser.oc_username اینو اخطار میده

مشکلم کجاس؟

الان شما فرض کن فایل db-old.sqlite3 رو تو پوشه /root/ گذاشتم

بعدش چه دستوراتی باید اجرا کنم ؟

hrasoul2 commented 10 months ago

واقعا الان چند روزه درگیر اینم چندتا نکته فهمیدم ولی نمیتونم این مسئله روحل کنم اشتباه من کجاس که جواب نمیده؟ببخشید که انقد مصرانه پیام میزارم

mmtaee commented 10 months ago

CommandError: Error executing SQL query: no such column: app_ocservuser.oc_username این خطا نشون میده که دیتابیس رو لود کرده اما دیتابیس ستون یوزر رو نداره . اگر میتونی دیتابیس رو با ابزار های آنلاین یا نرم افزار باز کنید و ببینید که جدول app_ocservuser وجود دارد یا نه . اگر موجود بود اطلاع بدهید دوباره تست کنم . من چندجا تا حالا ریستور کردم و مشکلی نبوده .

hrasoul2 commented 10 months ago

همین الان چک کردم فایل رو این ستون بود و یوزر هارو داره تو ستون app_ocservuser حالا بازم براتون ضمیمه میکنم فایل رو خودتون مشاهده بکنید ببینید ایرادی داره دیتا بیس یا دستوری که میزنم ایراد داره چیزی که فهمیدم اینه که manage.py که باید اجرا شه همونی هست که تو مسیر /var/www/site/ هستش و حتی db-old.sqlite3 رو هم تو همین مسیر میزارم و تستش میکنم فایل رو ضمیمه کردم تو زیپ

hrasoul2 commented 10 months ago

db-old.zip

ohum123 commented 7 months ago

Same issue