Backup MySQL ແລະ Restore ຄຳ ສັ່ງ ສຳ ລັບການບໍລິຫານຖານຂໍ້ມູນ
ບົດຂຽນນີ້ສະແດງຕົວຢ່າງທີ່ສາມາດປະຕິບັດໄດ້ຫຼາຍຢ່າງກ່ຽວກັບວິທີການປະຕິບັດການ ສຳ ຮອງຂໍ້ມູນຕ່າງໆຂອງຖານຂໍ້ມູນ MySQL ໂດຍໃຊ້ ຄຳ ສັ່ງ mysqldump ແລະພວກເຮົາຍັງຈະໄດ້ເຫັນວິທີການຟື້ນຟູພວກມັນໂດຍການຊ່ວຍເຫຼືອຂອງ mysql ແລະ mysqlimport ໃນ Linux.
mysqldump ແມ່ນໂປແກຼມ ສຳ ລັບລູກຄ້າທີ່ໃຊ້ເສັ້ນ ຄຳ ສັ່ງ, ມັນຖືກ ນຳ ໃຊ້ເພື່ອຖິ້ມຖານຂໍ້ມູນ MySQL ໃນທ້ອງຖິ່ນຫຼືຫ່າງໄກສອກຫຼີກຫລືເກັບ ກຳ ຖານຂໍ້ມູນເພື່ອ ສຳ ຮອງໃນເອກະສານແປນດຽວ.
ພວກເຮົາສົມມຸດວ່າທ່ານໄດ້ຕິດຕັ້ງ MySQL ຢູ່ໃນລະບົບ Linux ໂດຍມີສິດທິພິເສດທາງດ້ານການບໍລິຫານແລະພວກເຮົາສົມມຸດວ່າທ່ານມີຄວາມຮູ້ ໜ້ອຍ ໜຶ່ງ ກ່ຽວກັບ MySQL. ຖ້າທ່ານບໍ່ໄດ້ຕິດຕັ້ງ MySQL ຫຼືບໍ່ມີການຕິດຕໍ່ກັບ MySQL, ກະລຸນາອ່ານບົດຄວາມຂອງພວກເຮົາຂ້າງລຸ່ມນີ້.
<
ວິທີການ Backup ຖານຂໍ້ມູນ MySQL?
ເພື່ອ ສຳ ຮອງຂໍ້ມູນຂອງຖານຂໍ້ມູນ MySQL ຫຼືຖານຂໍ້ມູນ, ຖານຂໍ້ມູນຕ້ອງມີຢູ່ໃນ server server ແລະທ່ານຕ້ອງມີຂໍ້ມູນເຂົ້າໃຊ້. ຮູບແບບຂອງ ຄຳ ສັ່ງຈະເປັນ.
# mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]
ຕົວກໍານົດການຂອງຄໍາສັ່ງກ່າວດັ່ງຕໍ່ໄປນີ້.
<
ເພື່ອເຮັດ ສຳ ຮອງຂໍ້ມູນຂອງຖານຂໍ້ມູນດຽວ, ໃຊ້ ຄຳ ສັ່ງດັ່ງຕໍ່ໄປນີ້. ຄຳ ສັ່ງດັ່ງກ່າວຈະຖີ້ມໂຄງສ້າງຖານຂໍ້ມູນ [rsyslog] ທີ່ມີຂໍ້ມູນກ່ຽວກັບເອກະສານບ່ອນດຽວທີ່ເອີ້ນວ່າ rsyslog.sql.
# mysqldump -u root -ptecmint rsyslog > rsyslog.sql
ຖ້າທ່ານຕ້ອງການ ສຳ ຮອງຖານຂໍ້ມູນທີ່ຫຼາກຫຼາຍ, ໃຫ້ເຮັດຕາມ ຄຳ ສັ່ງຕໍ່ໄປນີ້. ຄຳ ສັ່ງຍົກຕົວຢ່າງຕໍ່ໄປນີ້ໃຊ້ເວລາ ສຳ ຮອງຂອງຖານຂໍ້ມູນ [rsyslog, syslog] ແລະຂໍ້ມູນເຂົ້າໃນເອກະສານດຽວທີ່ເອີ້ນວ່າ rsyslog_syslog.sql.
# mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql
ຖ້າທ່ານຕ້ອງການ ສຳ ຮອງຖານຂໍ້ມູນທັງ ໝົດ, ຫຼັງຈາກນັ້ນໃຫ້ໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ດ້ວຍຕົວເລືອກ –all-database. ຄຳ ສັ່ງຕໍ່ໄປນີ້ໃຊ້ເວລາ ສຳ ຮອງຂໍ້ມູນຂອງຖານຂໍ້ມູນທັງ ໝົດ ທີ່ມີໂຄງສ້າງແລະຂໍ້ມູນຂອງພວກເຂົາເຂົ້າໃນແຟ້ມທີ່ເອີ້ນວ່າ all-databases.sql.
# mysqldump -u root -ptecmint --all-databases > all-databases.sql
ຖ້າທ່ານຕ້ອງການພຽງແຕ່ການ ສຳ ຮອງໂຄງສ້າງຖານຂໍ້ມູນໂດຍບໍ່ຕ້ອງມີຂໍ້ມູນ, ຫຼັງຈາກນັ້ນໃຫ້ໃຊ້ຕົວເລືອກ optionno-data ໃນ ຄຳ ສັ່ງ. ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້ສົ່ງອອກຖານຂໍ້ມູນ [rsyslog] ໂຄງສ້າງເຂົ້າໃນເອກະສານ rsyslog_structure.sql.
# mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql
ເພື່ອ ສຳ ຮອງຂໍ້ມູນຂໍ້ມູນພຽງແຕ່ບໍ່ມີໂຄງສ້າງ, ຫຼັງຈາກນັ້ນໃຫ້ໃຊ້ຕົວເລືອກ –no-create-info ກັບ ຄຳ ສັ່ງ. ຄຳ ສັ່ງນີ້ ນຳ ເອົາຖານຂໍ້ມູນ [rsyslog] ຂໍ້ມູນເຂົ້າໃນເອກະສານ rsyslog_data.sql.
# mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql
ດ້ວຍ ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້ທ່ານສາມາດ ສຳ ຮອງໂຕະໂຕະດຽວຫຼືຕາຕະລາງທີ່ແນ່ນອນຂອງຖານຂໍ້ມູນຂອງທ່ານ. ຍົກຕົວຢ່າງ, ຄຳ ສັ່ງຕໍ່ໄປນີ້ພຽງແຕ່ເອົາຕາຕະລາງ ສຳ ລັບ wp_posts ຈາກຖານຂໍ້ມູນ wordpress.
# mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql
ຖ້າທ່ານຕ້ອງການທີ່ຈະ ສຳ ຮອງໂຕະຫຼາຍອັນຫຼືບາງອັນຈາກຖານຂໍ້ມູນ, ໃຫ້ແບ່ງຕາຕະລາງແຕ່ລະອັນທີ່ມີຊ່ອງຫວ່າງ.
# mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql
ຄຳ ສັ່ງດ້ານລຸ່ມເອົາການ ສຳ ຮອງຂໍ້ມູນຂອງ server ຫ່າງໄກສອກຫຼີກ [172.16.25.126] ຖານຂໍ້ມູນ [ວາງສະແດງຮູບ] ລົງໃນ server ທ້ອງຖິ່ນ.
# mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql
ວິທີການຟື້ນຟູຖານຂໍ້ມູນ MySQL?
ໃນ ຄຳ ແນະ ນຳ ຂ້າງເທິງນີ້ພວກເຮົາໄດ້ເຫັນວິທີການ ສຳ ຮອງຖານຂໍ້ມູນ, ຕາຕະລາງ, ໂຄງສ້າງແລະຂໍ້ມູນເທົ່ານັ້ນ, ຕອນນີ້ພວກເຮົາຈະເຫັນວິທີການຟື້ນຟູພວກມັນໂດຍໃຊ້ຮູບແບບຕໍ່ໄປນີ້.
# # mysql -u [username] –p[password] [database_name] < [dump_file.sql]
ເພື່ອຟື້ນຟູຖານຂໍ້ມູນ, ທ່ານຕ້ອງສ້າງຖານຂໍ້ມູນທີ່ຫວ່າງຢູ່ໃນເຄື່ອງເປົ້າ ໝາຍ ແລະຟື້ນຟູຖານຂໍ້ມູນໂດຍໃຊ້ ຄຳ ສັ່ງ msyql. ຕົວຢ່າງ ຄຳ ສັ່ງຕໍ່ໄປນີ້ຈະເຮັດໃຫ້ໄຟລ໌ rsyslog.sql ກັບຄືນສູ່ຖານຂໍ້ມູນ rsyslog.
# mysql -u root -ptecmint rsyslog < rsyslog.sql
ຖ້າທ່ານຕ້ອງການຟື້ນຟູຖານຂໍ້ມູນທີ່ມີຢູ່ໃນເຄື່ອງທີ່ຖືກເປົ້າ ໝາຍ ແລ້ວ, ທ່ານຈະຕ້ອງໃຊ້ ຄຳ ສັ່ງ mysqlimport.
# mysqlimport -u root -ptecmint rsyslog < rsyslog.sql
ໃນລັກສະນະດຽວກັນທ່ານກໍ່ສາມາດຟື້ນຟູຕາຕະລາງຖານຂໍ້ມູນ, ໂຄງສ້າງແລະຂໍ້ມູນ. ຖ້າທ່ານມັກບົດຄວາມນີ້, ກໍ່ຈົ່ງແບ່ງປັນໃຫ້ ໝູ່ ຂອງທ່ານຟັງ.