{"id":123,"date":"2024-01-04T12:59:42","date_gmt":"2024-01-04T05:59:42","guid":{"rendered":"https:\/\/nguyenhieu.name.vn\/?p=123"},"modified":"2025-09-10T12:53:04","modified_gmt":"2025-09-10T05:53:04","slug":"cach-sao-luu-co-so-du-lieu-mysql-bang-automysqlbackup","status":"publish","type":"post","link":"https:\/\/nguyenhieu.name.vn\/?p=123","title":{"rendered":"C\u00e1ch sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u MySQL b\u1eb1ng AutoMySQLBackup"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Gi\u1edbi thi\u1ec7u<\/h2>\n\n\n\n<p>V\u1edbi b\u1ea3n ch\u1ea5t c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u MySQL , ch\u00fang c\u00f3 xu h\u01b0\u1edbng l\u01b0u tr\u1eef th\u00f4ng tin qu\u00fd gi\u00e1. \u0110\u00f3 l\u00e0 l\u00fd do t\u1ea1i sao b\u1ea1n ph\u1ea3i c\u00f3 ch\u00ednh s\u00e1ch sao l\u01b0u \u0111\u1ec3 gi\u1eef th\u00f4ng tin n\u00e0y an to\u00e0n. B\u1ea1n c\u00f3 m\u1ed9t s\u1ed1 t\u00f9y ch\u1ecdn \u0111\u1ec3 sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u MySQL tr\u00ean m\u00e1y ch\u1ee7 Linux . B\u1ea1n c\u00f3 th\u1ec3 vi\u1ebft m\u1ed9t t\u1eadp l\u1ec7nh bash nhanh \u0111\u1ec3 \u0111\u1ed5 c\u01a1 s\u1edf d\u1eef li\u1ec7u v\u00e0o m\u00e1y ch\u1ee7 l\u01b0u tr\u1eef an to\u00e0n. Ho\u1eb7c b\u1ea1n c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng ch\u01b0\u01a1ng tr\u00ecnh Sao l\u01b0u MySQL mi\u1ec5n ph\u00ed c\u00f3 t\u00ean l\u00e0 AutoMySQLBackup. N\u1ebfu b\u1ea1n \u0111ang s\u1eed d\u1ee5ng ch\u01b0\u01a1ng tr\u00ecnh n\u00e0y, b\u1ea1n c\u00f3 th\u1ec3 mu\u1ed1n l\u01b0u tr\u1eef b\u1ea5t k\u1ef3 b\u1ea3n sao l\u01b0u n\u00e0o \u0111\u01b0\u1ee3c t\u1ea1o ra ngo\u00e0i m\u00e1y ch\u1ee7. Xem b\u00e0i vi\u1ebft c\u1ee7a ch\u00fang t\u00f4i v\u1ec1 c\u00e1ch \u0111\u1ed3ng b\u1ed9 h\u00f3a t\u1ec7p v\u00e0 th\u01b0 m\u1ee5c t\u1eeb m\u00e1y ch\u1ee7 Linux v\u1edbi OneDrive . H\u00e3y c\u00f9ng c\u00e0i \u0111\u1eb7t AutoMySQLBackup v\u00e0 \u0111\u1ecbnh c\u1ea5u h\u00ecnh sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/first2host.co.uk\/blog\/storage\/2024\/02\/Install-AutoMySQLBackup-backup-mysql-databases.svg\" alt=\"Install AutoMySQLBackup Linux backup mysql databases\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00e0i \u0111\u1eb7t AutoMySQLBackup<\/h2>\n\n\n\n<p>B\u1ea1n c\u00f3 th\u1ec3 c\u00e0i \u0111\u1eb7t AutoMySQLBackup t\u1eeb kho Ubuntu b\u1eb1ng c\u00e1ch ch\u1ea1y l\u1ec7nh sau v\u1edbi quy\u1ec1n&nbsp;root:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install automysqlbackup<\/code><\/pre>\n\n\n\n<p>Sau khi c\u00e0i \u0111\u1eb7t, t\u1eadp l\u1ec7nh s\u1ebd t\u1ef1 \u0111\u1ed9ng ch\u1ea1y m\u1ed7i ng\u00e0y m\u1ed9t l\u1ea7n.&nbsp;B\u1ea3n sao l\u01b0u s\u1ebd \u0111\u01b0\u1ee3c l\u01b0u tr\u1eef trong th\u01b0 m\u1ee5c:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/var\/lib\/automysqlbackup<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">X\u00e1c minh AutoMySQLBackup<\/h2>\n\n\n\n<p>\u0110\u1ec3 x\u00e1c minh AutoMySQLBackup \u0111\u00e3 \u0111\u01b0\u1ee3c \u0111\u1ecbnh c\u1ea5u h\u00ecnh \u0111\u00fang c\u00e1ch, b\u1ea1n c\u00f3 th\u1ec3 ch\u1ea1y n\u00f3 theo c\u00e1ch th\u1ee7 c\u00f4ng thay v\u00ec \u0111\u1ee3i n\u00f3 ch\u1ea1y l\u1ea7n \u0111\u1ea7u ti\u00ean.<\/p>\n\n\n\n<p>\u0110\u1ec3 ch\u1ea1y AutoMySQLBackup theo c\u00e1ch th\u1ee7 c\u00f4ng, h\u00e3y th\u1ef1c hi\u1ec7n l\u1ec7nh sau v\u1edbi&nbsp;quy\u1ec1n root:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo automysqlbackup<\/code><\/pre>\n\n\n\n<p>B\u00e2y gi\u1edd h\u00e3y li\u1ec7t k\u00ea t\u1ea5t c\u1ea3 c\u00e1c t\u1ec7p trong&nbsp;\/var\/lib\/automysqlbackup:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ ls -R \/var\/lib\/automysqlbackup\/ \n\/var\/lib\/automysqlbackup\/: \ndaily monthly weekly\n\/var\/lib\/automysqlbackup\/: \ninformation_schema performance_schema sys\n\/var\/lib\/automysqlbackup\/daily\/sys: \nsys_2023-12-03_06h48m.Sunday.sql.gz ...<\/code><\/pre>\n\n\n\n<p>N\u1ebfu m\u1ecdi th\u1ee9 ho\u1ea1t \u0111\u1ed9ng ch\u00ednh x\u00e1c, b\u1ea1n s\u1ebd th\u1ea5y c\u00e1c t\u1ec7p&nbsp;.sql.gz&nbsp;trong danh s\u00e1ch nh\u01b0 hi\u1ec3n th\u1ecb \u1edf tr\u00ean.<\/p>\n\n\n\n<p>B\u1ea1n c\u0169ng n\u00ean th\u01b0\u1eddng xuy\u00ean x\u00e1c minh c\u00e1c t\u1eadp tin sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u1ee7a m\u00ecnh.&nbsp;B\u1ea1n c\u0169ng c\u00f3 th\u1ec3 c\u00e2n nh\u1eafc vi\u1ec7c th\u01b0\u1eddng xuy\u00ean sao ch\u00e9p c\u00e1c b\u1ea3n sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u1ee7a m\u00ecnh sang m\u1ed9t m\u00e1y ch\u1ee7 kh\u00e1c.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">C\u1ea5u h\u00ecnh AutoMySQLBackup<\/h2>\n\n\n\n<p>N\u1ebfu b\u1ea1n mu\u1ed1n thay \u0111\u1ed5i t\u00f9y ch\u1ecdn c\u1ea5u h\u00ecnh, b\u1ea1n c\u00f3 th\u1ec3 ch\u1ec9nh s\u1eeda t\u1ec7p n\u00e0y:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/default\/automysqlbackup<\/code><\/pre>\n\n\n\n<p>T\u1ea1i \u0111\u00e2y, b\u1ea1n c\u00f3 th\u1ec3 \u0111\u1ecbnh c\u1ea5u h\u00ecnh c\u01a1 s\u1edf d\u1eef li\u1ec7u m\u00e0 b\u1ea1n mu\u1ed1n sao l\u01b0u ho\u1eb7c lo\u1ea1i tr\u1eeb kh\u1ecfi qu\u00e1 tr\u00ecnh sao l\u01b0u, v.v.<\/p>\n\n\n\n<p>\u0110\u1ec3 thay \u0111\u1ed5i t\u1ea7n su\u1ea5t ch\u1ea1y <code>automysqlbackup<\/code>, b\u1ea1n c\u00f3 th\u1ec3 \u0111i\u1ec1u ch\u1ec9nh&nbsp;cron job&nbsp;c\u1ee7a n\u00f3.<\/p>\n\n\n\n<p>Th\u00f4ng tin b\u1ed5 sung v\u1ec1 c\u1ea5u h\u00ecnh automysqlbackup c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c t\u00ecm th\u1ea5y \u1edf \u0111\u00e2y:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># T\u00ean ng\u01b0\u1eddi d\u00f9ng \u0111\u1ec3 truy c\u1eadp m\u00e1y ch\u1ee7 MySQL, v\u00ed d\u1ee5: dbuser\n#CONFIG_mysql_dump_username='root'\n\n# M\u1eadt kh\u1ea9u \u0111\u1ec3 truy c\u1eadp m\u00e1y ch\u1ee7 MySQL, v\u00ed d\u1ee5: password\n#CONFIG_mysql_dump_password=''\n\n# T\u00ean m\u00e1y ch\u1ee7 (ho\u1eb7c \u0111\u1ecba ch\u1ec9 IP) c\u1ee7a m\u00e1y ch\u1ee7 MySQL, v\u00ed d\u1ee5: localhost\n#CONFIG_mysql_dump_host='localhost'\n\n# V\u1ecb tr\u00ed th\u01b0 m\u1ee5c sao l\u01b0u, v\u00ed d\u1ee5: \/backups\n#CONFIG_backup_dir='\/var\/backup\/db'\n\n# Danh s\u00e1ch c\u01a1 s\u1edf d\u1eef li\u1ec7u \u0111\u1ec3 sao l\u01b0u h\u00e0ng ng\u00e0y\/h\u00e0ng tu\u1ea7n, v\u00ed d\u1ee5: ( 'DB1' 'DB2' 'DB3' ... )\n# \u0111\u1eb7t th\u00e0nh (), t\u1ee9c l\u00e0 tr\u1ed1ng, n\u1ebfu b\u1ea1n mu\u1ed1n sao l\u01b0u t\u1ea5t c\u1ea3 c\u01a1 s\u1edf d\u1eef li\u1ec7u\n#CONFIG_db_names=()\n\n# Danh s\u00e1ch c\u01a1 s\u1edf d\u1eef li\u1ec7u \u0111\u1ec3 sao l\u01b0u h\u00e0ng th\u00e1ng.\n# \u0111\u1eb7t th\u00e0nh (), t\u1ee9c l\u00e0 tr\u1ed1ng, n\u1ebfu b\u1ea1n mu\u1ed1n sao l\u01b0u t\u1ea5t c\u1ea3 c\u01a1 s\u1edf d\u1eef li\u1ec7u\n#CONFIG_db_month_names=()\n\n# Danh s\u00e1ch T\u00caN DB c\u1ea7n LO\u1ea0I TR\u1eea n\u1ebfu DBNAMES tr\u1ed1ng, t\u1ee9c l\u00e0 ().\n#CONFIG_db_exclude=( 'information_schema' )\n\n# B\u1ea1n mu\u1ed1n sao l\u01b0u h\u00e0ng th\u00e1ng v\u00e0o ng\u00e0y n\u00e0o? (01 \u0111\u1ebfn 31)\n# N\u1ebfu ng\u00e0y \u0111\u01b0\u1ee3c ch\u1ecdn l\u1edbn h\u01a1n ng\u00e0y cu\u1ed1i c\u00f9ng c\u1ee7a th\u00e1ng\n# th\u00ec s\u1ebd th\u1ef1c hi\u1ec7n v\u00e0o ng\u00e0y cu\u1ed1i c\u00f9ng c\u1ee7a th\u00e1ng.\n# \u0110\u1eb7t th\u00e0nh 0 \u0111\u1ec3 t\u1eaft sao l\u01b0u h\u00e0ng th\u00e1ng.\n#CONFIG_do_monthly=\"01\"\n\n# B\u1ea1n mu\u1ed1n sao l\u01b0u h\u00e0ng tu\u1ea7n v\u00e0o ng\u00e0y n\u00e0o? (1 \u0111\u1ebfn 7 trong \u0111\u00f3 1 l\u00e0 th\u1ee9 Hai)\n# \u0110\u1eb7t th\u00e0nh 0 \u0111\u1ec3 t\u1eaft sao l\u01b0u h\u00e0ng tu\u1ea7n.\n#CONFIG_do_weekly=\"5\"\n\n# \u0110\u1eb7t v\u00f2ng quay sao l\u01b0u h\u00e0ng ng\u00e0y. GI\u00c1 TR\u1eca*24 gi\u1edd\n# N\u1ebfu b\u1ea1n ch\u1ec9 mu\u1ed1n gi\u1eef l\u1ea1i c\u00e1c b\u1ea3n sao l\u01b0u c\u1ee7a ng\u00e0y h\u00f4m nay, b\u1ea1n c\u00f3 th\u1ec3 ch\u1ecdn 1, \n# t\u1ee9c l\u00e0 m\u1ecdi th\u1ee9 c\u0169 h\u01a1n 24 gi\u1edd s\u1ebd b\u1ecb x\u00f3a.\n#CONFIG_rotation_daily=6\n\n# \u0110\u1eb7t v\u00f2ng quay \u0111\u1ec3 sao l\u01b0u h\u00e0ng tu\u1ea7n. GI\u00c1 TR\u1eca*24 gi\u1edd\n#CONFIG_rotation_weekly=35\n\n# \u0110\u1eb7t v\u00f2ng quay \u0111\u1ec3 sao l\u01b0u h\u00e0ng th\u00e1ng. GI\u00c1 TR\u1eca*24 gi\u1edd\n#CONFIG_rotation_monthly=150\n\n# \u0110\u1eb7t c\u1ed5ng cho k\u1ebft n\u1ed1i mysql\n#CONFIG_mysql_dump_port=3306\n\n# Bao g\u1ed3m CREATE DATABASE trong b\u1ea3n sao l\u01b0u?\n#CONFIG_mysql_dump_create_database='no'\n\n# Th\u01b0 m\u1ee5c v\u00e0 t\u1eadp tin sao l\u01b0u ri\u00eang bi\u1ec7t cho t\u1eebng DB? (c\u00f3 hay kh\u00f4ng)\n#CONFIG_mysql_dump_use_separate_dirs='yes'\n\n# Ch\u1ecdn ki\u1ec3u n\u00e9n. (gzip ho\u1eb7c bzip2)\n#CONFIG_mysql_dump_compression='gzip'\n\n# B\u1ecf ghi ch\u00fa \u0111\u1ec3 k\u00edch ho\u1ea1t! \u0110i\u1ec1u n\u00e0y s\u1ebd cung c\u1ea5p cho c\u00e1c th\u01b0 m\u1ee5c quy\u1ec1n rwx------\n# v\u00e0 c\u00e1c t\u1eadp tin quy\u1ec1n rw-------\n#umask 0077\n\n# dry-run, t\u1ee9c l\u00e0 th\u1ec3 hi\u1ec7n nh\u1eefng g\u00ec b\u1ea1n s\u1ebd l\u00e0m m\u00e0 kh\u00f4ng th\u1ef1c s\u1ef1 l\u00e0m vi\u1ec7c \u0111\u00f3\n# kh\u00f4ng ho\u1ea1t \u0111\u1ed9ng: =0 ho\u1eb7c \u0111\u00e3 nh\u1eadn x\u00e9t\n# ho\u1ea1t \u0111\u1ed9ng: kh\u00f4ng c\u00f3 ch\u00fa th\u00edch V\u00c0 = 1\n#CONFIG_dryrun=1\n<\/code><\/pre>\n\n\n\n<p>V\u00ec v\u1eady, c\u00e1c m\u1eb7c \u0111\u1ecbnh trong t\u1ec7p n\u00e0y s\u1ebd \u1ed5n \u0111\u1ed1i v\u1edbi h\u1ea7u h\u1ebft m\u1ecdi ng\u01b0\u1eddi v\u00e0 h\u1ea7u h\u1ebft c\u00e1c tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng. AutoMySQLBackup s\u1ebd dump c\u00e1c c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u1ea7n thi\u1ebft h\u00e0ng ng\u00e0y v\u00e0o th\u1eddi \u0111i\u1ec3m \u0111\u00e3 ch\u1ec9 \u0111\u1ecbnh. Trong t\u1ec7p, b\u1ea1n s\u1ebd mu\u1ed1n thay \u0111\u1ed5i c\u00e1c ph\u1ea7n sau. Nh\u01b0ng \u0111\u1eebng l\u01b0u b\u1ea3n sao l\u01b0u c\u1ee7a b\u1ea1n v\u00e0o c\u00f9ng m\u1ed9t m\u00e1y ch\u1ee7. M\u1ee5c \u0111\u00edch l\u00e0 g\u00ec? S\u1eed d\u1ee5ng m\u1ed9t v\u1ecb tr\u00ed t\u1eeb xa nh\u01b0 M\u00e1y ch\u1ee7 NFS . B\u1ea1n c\u00f3 th\u1ec3 t\u1ea1o m\u1ed9t v\u1ecb tr\u00ed nh\u01b0 v\u1eady v\u1edbi gi\u00e1 v\u00e0i pound t\u1eeb VPS NVMe .<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gi\u1edbi thi\u1ec7u V\u1edbi b\u1ea3n ch\u1ea5t c\u1ee7a c\u01a1 s\u1edf d\u1eef li\u1ec7u MySQL , ch\u00fang c\u00f3 xu h\u01b0\u1edbng l\u01b0u tr\u1eef th\u00f4ng tin qu\u00fd gi\u00e1. \u0110\u00f3 l\u00e0 l\u00fd do t\u1ea1i sao b\u1ea1n ph\u1ea3i c\u00f3 ch\u00ednh s\u00e1ch sao l\u01b0u \u0111\u1ec3 gi\u1eef th\u00f4ng tin n\u00e0y an to\u00e0n. B\u1ea1n c\u00f3 m\u1ed9t s\u1ed1 t\u00f9y ch\u1ecdn \u0111\u1ec3 sao l\u01b0u c\u01a1 s\u1edf d\u1eef li\u1ec7u [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":125,"comment_status":"closed","ping_status":"open","sticky":false,"template":"custom","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-123","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mysql"],"_links":{"self":[{"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/posts\/123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=123"}],"version-history":[{"count":3,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions"}],"predecessor-version":[{"id":463,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions\/463"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=\/wp\/v2\/media\/125"}],"wp:attachment":[{"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nguyenhieu.name.vn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}