第一種備份方法:mysql
使用tar打包文件夾備份sql
對數據庫文件目錄data進行壓縮備份,使用壓縮率較大的xz格式壓縮數據庫
[root@localhost opt]# yum install -y xz
ide
[root@localhost opt]# tar jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data/ #壓縮備份工具
[root@localhost opt]# ls
mysql-2018-08-30.tar.xz rh
spa
設置定時任務自動執行orm
[root@localhost opt]# crontab -e no crontab for root - using an empty one crontab: installing new crontab [root@localhost opt]# crontab -l 30 1 * * * tar jcvf /opt/mysql-$(date +%F) /usr/local/mysql/data/ #設置定時任務自動執行
數據恢復,解壓壓縮備份文件便可crontab
[root@localhost opt]# tar jxvf mysql-2018-08-30.tar.xz -C /usr/local/mysql/data/ it
第二種備份方法io
使用mysqldump工具壓縮
備份數據庫
[root@localhost data]# mysql -uroot -p -e 'show databases;' Enter password: +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | school | | sys | | usr |
[root@localhost ~]# mysqldump -uroot -p --databases school > /opt/school.sqlEnter password:
[root@localhost ~]# ls /opt
mysql-2018-08-30.tar.xz rh school.sql
刪除數據庫school
[root@localhost data]# mysql -uroot -p -e 'drop database school;show databases;' Enter password: +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | usr | +--------------------+
數據庫還原
第一種方案:
[root@localhost ~]# mysql -uroot -p < /opt/school.sql Enter password: [root@localhost ~]# mysql -uroot -pabc123 -e 'show databases;' mysql: [Warning] Using a password on the command line interface can be insecure. +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | school | | sys | | usr | +--------------------+
第二種方案:
[root@localhost ~]# mysql -uroot -pabc123mysql> source /opt/school.sql
附:
mysqldump 對單個庫徹底備份
mysqldump -u root -p --databases school >/opt/school.sql
對多個數據徹底備份
mysqldump -u root -p --databases mysql school >/opt/school-mysql.sql
對全部庫進行備份
mysqldump -u root -p --all-databases > /opt/all.sql
對錶進行備份
mysqldump -u root -p school info >/opt/info.sql
對錶結構進行備份
mysqldump -u root -p -d school info >/opt/info.sql