我的技术记录 - 备份
type: channel
link: https://www.arcsiny.com/index.php/tag/%E5%A4%87%E4%BB%BD/
items: Shell 脚本自动备份数据库

Shell 脚本自动备份数据库
type: item
date: 2022-01-01T14:54:00+08:00
description: 准备工作 群晖套件中心的 MariaDB 兼容大多数 MySQL 命令，可以使用mysqldump命令将数据库导出为.sql格式 但是如果直接在 ssh 命令行中输入，会返回command not found 因此需要建立一条软链接，将命令路径： /volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysqldump 指向： /usr/bin/mysqldump 建立软链接 以root身份登录 ssh ，输入 ln -s /volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysqldump /usr/bin/mysqldump mysqldump命令导出 备份所有数据库: mysqldump -u${USER} -p${PASSWORD} --all-databases > ${outputfile} 备份指定数据库: mysqldump -u${USER} -p${PASSWORD} ${databasename} > ${outputfile} Shell脚本 #！/bin/bash #要备份的数据库 dbname=typecho #数据库用户名 username=username #数据库密码 password=password #日期(eg.20220101) today=`date +%Y%m%d` #导出到数据库名称文件夹，文件名为 `数据库名-日期.sql` mysqldump -u${username} -p${password} ${dbname} > /${dbname}/${dbname}-${today}.sql 设置自动执行 在群晖后台设置中添加每天凌晨4:30运行