اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

مشکل در import کردن رکوردهای داخلی یک table به تیبل دیگر با استفاده از phpmyadmin

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    مشکل در import کردن رکوردهای داخلی یک table به تیبل دیگر با استفاده از phpmyadmin

    من یک سرور لینوکسی centos دارم که اطلاعات مربوط به web server داخلی مون میره توی دیتابیس اونجا میشینه. مشکلی که هستش امروز سرورمون دچار مشکل شدش و مجبور شدیم بک آپ رو که به تازگی کانفیگ کرده بودیم بالا بیاریم و ترافیک web server مون روی این بک آپ بیادش. مشکلی که هستش امروز میخواستم گزارش بگیرم از کارکرد یکسری یوزرها و متوجه شدم که record های database سرور اصلی import نشده روی این دیتابیس سرور بک آپ.
    database سرور اصلی رو که چک میکنم میبینم که حدود 500.000 رکورد توی تیبل report ثبت شده که اینا باید به همین تیبل report در server بک آپ انتقال داده میشد که رکورهایی که امروز ثبت میشه توی دیتابیس ادامه رکوردهای قبلی بیوفته. الان که داشتم بررسی میکردم، توی تیبل report در server بک آپ مشاهده کردم که امروز حدود 2000 رکورد توی table ریپورت (report) ثبت شده. من اگر رکوردهای داخل table های دیتابیس server اصلی رو export بگیرم و در تیبل report در سرور بک آپ import کنم، اینا روی همدیگه overwrite میشند. من چطور میتونم اون 500.000 رکورد داخل تیبل سرور اصلی رو به تیبل سرور بک آپ انتقال بدم بدو اینکه overwrite بشوند و دوم و مهمتر از همه اینکه record های داخل table سرور بک آپ ادامه رکوردهای تیبل سرور اصلی بیوفته. یعنی این 2000 رکوردی که امروز ثبت شده در ادامه اون 500.000 رکورد که برای روزهای قبل بوده بیوفته.:Rose-Large:
    اینستاگرام انجمن لینوکس ایران : https://www.instagram.com/iranlinuxforum

    #2
    قبل از هر کاری اول از دیتابیس هاتون backup بگیرید. سپس table که 500 هزار رکورد داره رو طبق این آموزش به سرور شماره دو انتقال بدید.

    در phpmyadmin سرور دوم به دیتابیس مورد نظر برید و تیبل تون رو انتخاب کنید و از منوی Operations قسمت Table options اسم تیبل تون رو که 2 هزار تا رکورد داره عوض کنید و مثلا بذارید table2000. سپس از قسمت import از بخش File to import گزینه Select from the web server upload directory /var/lib/phpMyAdmin/upload انتخاب کنید و از لیست کشویی جلوش تیبلی که از سرور اول انتقال داده بودید رو انتخاب کنید و روی Go بزنید. (دقیقا مثل آموزشی که در پست قبلی که در بالا هم لینک دادم عمل کنید)

    بعد از اینکه عملیات Import با موفقیت انجام شد شما توی دیتابیس تون دوتا تیبل دارید یکی اون تیبل 500 هزارتایی هستش که اسمش table500 هستش و یکی هم تیبل 2000 تایی تون که اسم اونم گذاشتیم table2000 . روی یکی از table ها کلیک کرده و از منو های بالا SQL را انتخاب کنید و در قسمت ادیتور کوئری های زیر را وارد کنید، که بره اون 2000 تا رکورد رو ادامه table500 بریزه. با توجه به نمونه ای که برای من ارسال کرده بودید برای حل مشکل overwrite نشدن هم فیلد id تون در هر دو تیبل ها که AUTO_INCREMENT بود رو از توی این کدها برداشتم که وقتی میخواد اون 2000 تا رو ادامه اون 500 هزارتایی بریزه روی همدیگه overwrite نکنه و بره ادامهش بریزه.
    کد PHP:
    INSERT INTO `table500`(`calldate`, `clid`, `src`, `dst`, `dcontext`, `lastapp`, `lastdata`, `duration`, `billsec`, `disposition`, `channel`, `dstchannel`, `amaflags`, `accountcode`, `uniqueid`, `userfield`, `answer`, `end`)

    SELECT `calldate`, `clid`, `src`, `dst`, `dcontext`, `lastapp`, `lastdata`, `duration`, `billsec`, `disposition`, `channel`, `dstchannel`, `amaflags`, `accountcode`, `uniqueid`, `userfield`, `answer`, `endFROM `table2000
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-09-2021, 03:15 PM.

    کامنت

    درباره انجمن منطقه لینوکسی ها

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

    شبکه های اجتماعی
    در حال انجام ...
    X