ນີ້ແມ່ນຄໍາສັ່ງ filter_mysqlbinlogp ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
filter_mysqlbinlog - ການຕັດຂໍ້ຄວາມ ROLLBACK ແລະເຫດການ BINLOG ທຽບເທົ່າເພີ່ມໂດຍ
mysqlbinlog. ສະຄຣິບນີ້ຖືກລ້າສະໄໝແລ້ວ.
ສະຫຼຸບສັງລວມ
mysqlbinlog binary_or_relay_log_file | filter_mysqlbinlog
ຈື່ໄວ້ວ່າສະຄຣິບນີ້ຖືກລ້າສະໄໝແລ້ວ ແລະບໍ່ໄດ້ໃຊ້ໂດຍ MHA ຕາມຄ່າເລີ່ມຕົ້ນ.
ລາຍລະອຽດ
ຄໍາສັ່ງ mysqlbinlog ສະຫນອງໃຫ້ໂດຍ Oracle implicitly ເພີ່ມຄໍາຖະແຫຼງທີ່ ROLLBACK ແລະທຽບເທົ່າ.
ເຫດການ BINLOG. ແຕ່ນີ້ເຮັດໃຫ້ເກີດບັນຫາໃນເວລາທີ່ຟື້ນຕົວເຄື່ອງແມ່ຂ່າຍສໍາລອງ. ເພື່ອຟື້ນຕົວຂ້າໃຊ້,
MHA ອາດຈະຕ້ອງນຳໃຊ້ເຫດການ binlog ຕໍ່ໄປນີ້.
1) ເຫດການບັນທຶກ Relay ຈາກ Relay_Log_Pos ໄປຫາຈຸດສິ້ນສຸດຂອງໄຟລ໌ບັນທຶກ Relay
2) ເຫດການບັນທຶກ relay ທີ່ແຕກຕ່າງກັນຈາກສໍາລອງຫລ້າສຸດ
3) ເຫດການບັນທຶກ binary ທີ່ແຕກຕ່າງກັນຈາກຄໍາສັ່ງ mysqlbinlog ຕົ້ນສະບັບທີ່ຕາຍແລ້ວຕ້ອງເປັນ
ປະຕິບັດໃນໄຟລ໌ເຫຼົ່ານີ້ແຍກຕ່າງຫາກ. ຖ້າທຸລະກໍາບໍ່ສິ້ນສຸດໂດຍ 1) ຫຼື 2), implicit
ເຫດການ ROLLBACK ກັບຄືນການເຮັດທຸລະກໍາ, ເຊິ່ງຈະເຮັດໃຫ້ຄວາມບໍ່ສອດຄ່ອງກັນ.
filter_mysqlbinlog ເປັນເຄື່ອງມືເພື່ອແກ້ໄຂບັນຫານີ້. ໃຫ້ສັງເກດວ່າຄໍາຖະແຫຼງທີ່ ROLLBACK ດ້ວຍຕົນເອງ
ຖືກເພີ່ມເຂົ້າໃນສະຖານະການປົກກະຕິ. ຕົວຢ່າງ, ເມື່ອທ່ານປະຕິບັດ 1. BEGIN; 2. ການປັບປຸງ
ຕາຕະລາງການເຮັດທຸລະກໍາ 3. ການປັບປຸງຕາຕະລາງທີ່ບໍ່ແມ່ນການເຮັດທຸລະກໍາ 4. ROLLBACK, ROLLBACK
ຖະແຫຼງການຖືກຂຽນໃສ່ບັນທຶກຖານສອງເພື່ອ rollback ຄໍາຖາມການເຮັດທຸລະກໍາ. ນີ້ແມ່ນເລື່ອງປົກກະຕິ
ສະຖານະການດັ່ງນັ້ນ filter_mysqlbinlog ຈະຕ້ອງບໍ່ເອົາເຫດການ ROLLBACK ທັງໝົດອອກ.
ຈື່ໄວ້ວ່າສະຄຣິບນີ້ຖືກລ້າສະໄໝແລ້ວ ແລະບໍ່ໄດ້ໃຊ້ໂດຍ MHA ຕາມຄ່າເລີ່ມຕົ້ນ.
ໃຊ້ filter_mysqlbinlogp ອອນລາຍໂດຍໃຊ້ບໍລິການ onworks.net