🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## **一、备份** ``` #!/bin/bash mysqldump -uroot -p123456 -P3306 crm | gzip > /data/backup/crm_$(date +%Y%m%d_%H%M%S).sql.gz ``` 在mysqldump 写入账号密码 ``` [mysqldump] user = root password = 123456 port = 666333006 ``` ``` #!/bin/bash mysqldump crm | gzip > /data/backup/crm_$(date +%Y%m%d_%H%M%S).sql.gz ``` 授权 ``` chmod u+x mysql_backup.sh ``` 加定时脚本(每天凌晨一点执行) ``` 0 1 * * * /data/shell/mysql_backup.sh ``` ## **二、还原** 1.解压 `-k`参数的作用是在解压.gz文件后保留原始的.gz压缩文件 ``` gunzip -k XXX.sql.gz ``` 2.恢复数据库 ~~~ mysql -uroot –p123456 数据库名 < 备份文件.sql mysql -uusername -ppassword crm < /home/bak.sql ~~~ 方法二、语法:**source** 备份数据库文件位置; **例子:** **1)第一步:use bak; #新建数据库bak** **2)第二步:source /test.sql; #在新建数据库bak中执行还原source命令** **3)第三步:检查是否成功还原test.sql** **show tables;** 方法三 ``` gunzip -c [dump_file.sql.gz] | mysql -u [username] -p [database_name] ```