一、備份還原數據庫
登錄查看現有數據庫
mysql -u root -p
show databases;
創建新的數據庫
create database test;
show databases;
\q#退出
使用mysqldump工具備份(完全備份)
mysqldump -u 用戶名 -p 數據庫名 > /home/test.sql#(備份數據庫存儲路徑)
備份單個數據表
mysqldump -u 用戶名 -p 數據庫名 數據表名 > /home/數據表名.sql
重新登錄查看數據庫
mysql -u root -p
show databases;
查看數據庫中表名
select table_name from information_schema.tables where table_schema='數據庫名'
然後可以數據庫刪掉
drop database 數據庫名;
重新創建數據庫,並執行還原操作
ctrate databate test;
\q
mysql -u 用戶名 -p -f 數據庫名 < /home/數據庫名
重新登錄查看錶明即可,當然也可以添加些數據進去,我只是簡單演示
還原之前的圖:
成功之後的圖:
二、自動備份
1、創建腳本
腳本路徑(目錄可以自定義後面會用到,路徑一致就好)
mkdir /dev/backup
備份文件路徑
mkdir /home/backup
編輯腳本
vim mysqlback.sh
腳本內容
#home/backup
#!/bin/bash
mysqldump -u用戶名 -p密碼 數據庫 > /home/backup/mysql_$(date+%Y%m%d_%H%M%S).sql
2、加腳本權限
chmod u+x mysqlback.sh
3、添加定時任務
安裝crontab,若已安裝可省略
yum install vixie-cron
yum install crontabs
編輯定時任務
crontab -e
#*/10 * * * *表示每10分鐘執行一次
*/10 * * * * /dev/backup/mysqlback.sh
詳細的定時任務可以看這裏
4、定時任務啓動
crontab -u//設定某個用戶的cron服務
crontab -l//查看定時任務
crontab -r//刪除定時任務(所有)
crontab -e//編輯定時任務
service crond start //啓動服務
service crond stop //關閉服務
service crond restart //重啓服務
service crond reload //重新載入配置