linux下如何備份還原mysql資料庫

2022-03-20 10:51:08 字數 1487 閱讀 9033

本文介紹了linux下如何備份與恢復mysql資料庫。

資料庫備份是非常重要的。如果定期做好備份,這樣就可以在發生系統崩潰時恢復資料到最後一次正常的狀態,把損失減小到最少。

一、 用命令實現備份

mysqll提供了乙個mysqldump命令,我們可以用它進行資料備份。

按提示輸入密碼,這就把tm資料庫所有的表結構和# mysqldump -u root -p tm > tm_050519.sql資料備份到tm_050519.sql了,因為要總進行備份工作,如果資料量大會占用很大空間,這時可以利用gzip壓縮資料,命令如下:

# mysqldump -u root -p tm | gzip > tm_050519.sql.gz
系統崩潰,重建系統時,可以這樣恢復資料:

# mysql -u root -p tm < tm_050519.sql
從壓縮檔案直接恢復:

#gzip < tm_050519.sql.gz | mysqldump -u root -p tm
當然,有很多mysql工具提供更直觀的備份恢復功能,比如用phpmyadmin就很方便。但我認為,mysqldump是最基本、最通用的。

二、利用crontab,系統每天定時備份mysql資料庫

利用系統crontab來定時執行備份檔案,按日期對備份結果進行儲存,達到備份的目的。

1、建立儲存備份檔案的路徑/var/backup/mysqlbak

# mkdir -p /var/backup/mysqlbak
2、建立/usr/sbin/bakmysql檔案

#vi /usr/sbin/bakmysql.sh

#!/bin/bash

# mysql備份指令碼

cd /var/backup/mysqlbak/

datedir=`date +"%y-%m-%d"`

mkdir -p $datedir/data

for i in `/usr/local/www/mysql/bin/mysql -uroot -plin31415926 -e "show databases" |

grep -v "database" | grep -v "information_schema"`

do /usr/local/www/mysql/bin/mysqldump -uroot -plin31415926 $i |

gzip > /var/backup/mysqlbak/$datedir/$_$.gz

done

3、修改檔案屬性,使其可執行

# chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab

# crontab -e

在下面新增

01 3 * * * root /usr/sbin/bakmysql

#表示每天3點鐘執行備份

這樣每天就可以在/var/backup/mysqlbak下看到備份的sql檔案 了!

Linux下如何實現備份和還原

最近在配置centos的伺服器,我們都知道配置過程可能很複雜,有時還可能出錯,總不能配置出錯了無法恢復就重灌系統吧,所以說做好系統備份是很重要的。linux的備份其實就是把檔案統一打個包存起來,等到要恢復時,再用這些檔案覆蓋掉原來的檔案就好啦。切換到root使用者的根目錄下 必須是根目錄,要不然有的...

linux 下利用 crontab 備份mysql

vi mysql bak dbbackup.sh 目錄自定義 在指令碼中編輯 mysqldump uusername ppassword default character set utf8 dbname gzip mysql bak bak date y m d h m s sql.gz 將其中的...

Linux備份還原

無論是 windows 還是 linux 備份都是乙個非常好的習慣。linux下,備份是一件非常簡單的事情,乙個命令備份,乙個命令還原,so easy 備份命令 sudo tar cvpzf backup.tgz exclude proc exclude lost found exclude mnt...