当前位置:首页 » 编程软件 » mysql备份shell脚本

mysql备份shell脚本

发布时间: 2025-08-26 19:23:05

⑴ Mysql 8自动备份脚本密码安全警告

MySQL 8自动备份脚本密码安全警告的解决方法如下

  1. 问题原因

    • 在Shell脚本中直接使用mysqlmp命令并附带p选项来指定密码,这触发了MySQL 8的安全保护机制。MySQL 8不建议在命令行中直接显示密码,因为这可能导致密码泄露。
  2. 解决方法

    • 修改MySQL配置文件:在MySQL的配置文件/etc/my.cnf中,添加或更新与密码相关的配置。通常,可以添加[client]部分,并在其中设置user和password选项。
    • 示例配置:ini[client]user=your_mysql_usernamepassword=your_mysql_password # 注意:这里只是示例,不建议在生产环境中明文存储密码 更新脚本:在Shell脚本中,去掉mysqlmp命令后的p选项和密码值。由于已经在配置文件中设置了用户名和密码,mysqlmp将自动读取这些配置。3. 重新执行脚本: 保存对脚本和配置文件的修改后,重新执行备份脚本。此时,MySQL将不再显示密码安全警告,因为脚本不再在命令行中直接指定密码。4. 额外安全措施权限控制:确保只有授权用户才能访问包含数据库密码的配置文件和Shell脚本。 日志审计:启用并定期检查数据库和操作系统的日志,以检测任何潜在的安全事件。 定期更换密码:定期更换数据库密码,以减少密码泄露的风险。通过以上步骤,可以有效解决MySQL 8自动备份脚本中的密码安全警告问题,并确保备份过程的安全性和可靠性。

linux shell脚本执行mysql mysql数据库在远程服务器上

方法一、适合所有格式的mysql数据库,通过对数据库导出导进写个脚本定时执行:
1.导出整个数据库 mysqlmp -u 用户名 -p 数据库名 > 导出的文件名 mysqlmp -u wcnc -p smgp_apps_wcnc > /存放路径/wcnc.sql
2.导出一个表 mysqlmp -u 用户名 -p 数据库名 表名> 导出的文件名 mysqlmp -u wcnc -p smgp_apps_wcnc users> /存放路径/wcnc_users.sql
3.导出一个数据库结构 mysqlmp -u wcnc -p -d --add-drop-table smgp_apps_wcnc >/存放路径/wcnc_db.sql
定义:
-d 没有数据
--add-drop-table 在每个create语句之前增加一个drop table
4.导入数据库 常用source 命令 进入mysql数据库控制台:
如mysql -u root -p mysql>use 数据库

方法二、针对mysql数据表格式为MyISAM的
假如数据文件在/var/lib/mysql
那么直接写个脚本
cp -r /var/lib/mysql /备份到的文件夹路径

隔机备份用rsync增量,或定时完整备份。

⑶ 如何使用crontab每天自动备份Mysql数据库

本经验讲解如何在linux服务器环境下使用crontab来定时执行shell脚本,主要采用的是数据库自带的命令mysqlmp;本文使用的是root权限,仅供参考,真实情况可以自行控制权限,下面请看具体步骤:
http://jingyan..com/article/11c17a2c796354f446e39ded.html

⑷ linux自动备份,打包/var/www/html到/bak 并只保留7天

首先我在/root/backup 目录下建立一个文件夹,
#mkdir /root/backup/mysqlbackup
以后在每天五点钟,就会有一个文件保存在这里慎顷.
接着新建文件
#vim /root/mysqlautobak
输入:
filename=` date +%Y%m%d `
mysqlmp --all-databases -uroot -p(mysql密码)> /root/backup/mysqlbackup/mysql$file.sql

保存退出!
让它可以执行
#chomd +X /root/mysqlautobak
接着开始完crontab了
#vi /etc/宽弊陆crontab

添加一行

01 5 * * * root /root/mysqlautobak
保存退出.
重新启动你的crond服务进程
# /etc/rc.d/init.d/crond restart

===============================================================================
hp unix 自动全备份脚本(shell)

说明:每天夜里10点自动备份并且压缩,保留2天备份,在备份完当天后删除前天的备份。在一切执行之后,发邮件通知,邮件内容有删除文件和备份文件名称及备份开始时间,结束时间。
使用方法:nohup backup.sh &
filename:backup.sh
reportlist=""
while [ 1 ]
do
hou=`date +%H`
backdate=`date +%Y%m%d`
if [ $hou -eq 22 ]
then
begintime=`date +%Y-%m-%d:%H-%M`
cd /data_log2/for_test
log_txt=`ls -al -crt log.txt | awk '{print $9}' | wc -l`
if [ $log_txt -gt 0 ]
then
mv log.txt log.txt.bak
fi
exp owner=user file=/data_log2/for_test/tmp_now.dmp
compress /data_log2/for_test/tmp_now.dmp
mv tmp_now.dmp.Z report_$backdate.dmp.Z
echo "---------report database backuped----------- ">> log.txt
echo "filename="report_$backdate.dmp.Z >>log.txt
delfile=`ls -al -crt *.Z | awk '{print $9}' | head -1`
count=`ls -al -crt *.Z | awk '{print $9}' | wc -l`
if [ $count -gt 2 ]
then
rm `ls -al -crt *.Z | awk '{print $9}' | head -1`
echo "----------- old backup deleted ---------" >> log.txt
echo "the deleted backup filename="$delfile >> log.txt
fi
echo "-----------------beigin time----------------" >卜宴> log.txt
echo $begintime >> log.txt
echo "-----------------end time----------------" >> log.txt
echo `date +%Y-%m-%d:%H-%M` >> log.txt
rm log.txt.bak
mailx -s "10.203.116.23 daily database backup" -r ")" $reportlist < log.txt
fi
sleep 3600
done
======================================================================================
1 给我自己的服务器写的一段自动备份的shell
#!/bin/bash
#指定要备份的系统目录
SYSTEM_DIR=/home
#指定要备份的目录MAIL_DIR=mailbox #邮件目录
WEBSITE_DIR=www/html #WEB目录
DATABASE_DIR=databases #数据库目录
#指定备份文件的前缀
MAIL_PREFIX=mail
WEBSITE_PREFIX=web
DATABASE_PREFIX=database
#有朋友的一台WIN2K服务器,我在上面开了ftp,把备份文件传到他的服务器上,相当于我实现了个双机备份
#ftp服务器的IP
FTP_SERV=211.144.155.111
#ftp用户名
FTP_USER=username
#ftp密码
FTP_PASS=12345678
#备份文件存放目录
BACKUP_DIR=/home/backup
#格式化一下日期,备份文件时用日期来做文件名的
DATE=`date +%Y%m%d`
#开始备份邮件
if [ -f ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ]; then #如果当天的邮件已经备份,那没跳过
echo `date +%Y-%m-%d`'s mail backup file is existing
else #如果没有备份,那么用tar命令来打包邮件目录
tar -czvf ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${MAIL_DIR}
fi
#开始备份网站目录,备份过程同上
if [ -f ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ]; then
echo `date +%Y-%m-%d`'s webebsite backup file is existing
else
tar -czvf ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${WEBSITE_DIR}
fi
#开始备份数据库目录,备份过程同上
if [ -f ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ]; then
echo `date +%Y-%m-%d`'s database backup file is existing
else
tar -czvf ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${DATABASE_DIR}
fi
#开始把备份文件传输到另一台服务器上
ftp -i -n $FTP_SERV <<AUTO_FTP
user $FTP_USER $FTP_PASS
passive
binary
put ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ${MAIL_PREFIX}${DATE}.tar.gz
put ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ${WEBSITE_PREFIX}${DATE}.tar.gz
put ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ${DATABASE_PREFIX}${DATE}.tar.gz
AUTO_FTP
别忘了,还有最后一步,就是在crontab里加上个任务,这样你就不用每次备份都一步步地敲那些琐碎的命令了。

我的网站,希望大家多多交流

===================================
linux下:
MySQL :: Linux 下自动备份数据库的 shell 脚本
Linux 服务器上的程序每天都在更新 MySQL 数据库,于是就想起写一个 shell 脚本,结合 crontab,定时备份数据库。其实非常简单,主要就是使用 MySQL 自带的 mysqlmp 命令。
脚本内容如下:
#!/bin/sh
# File: /home/mysql/backup.sh
# Database info
DB_NAME="test"
DB_USER="username"
DB_PASS="password"
# Others vars
BIN_DIR="/usr/local/mysql/bin"
BCK_DIR="/home/mysql/backup"
DATE=`date +%F`
# TODO
$BIN_DIR/mysqlmp --opt -u$DB_USER -p$DB_PASS $DB_NAME | gzip > $BCK_DIR/db_$DATE.gz

然后使用将此脚本加到 /etc/crontab 定时任务中:
01 5 * * 0 mysql /home/mysql/backup.sh
好了,每周日凌晨 5:01 系统就会自动运行 backup.sh 文件备份 MySQL 数据库了。
/home/www/inc/back
有点长,不过我是用心写的,希望可以帮到你:www.linuxdby.com

⑸ 如何使用shell脚本每天自动备份mysql数据库

mysql备份用自带的备份工具mysqlmp
每天自动执行用cron工具,把mysql的备份命令放在.sh文件里面
.sh文件放在/etc/cron.daily目录,就会每天自动执行了。

热点内容
普通电脑能做局域网服务器吗 发布:2025-08-26 21:42:57 浏览:426
我的世界服务器名字满了怎么办 发布:2025-08-26 21:36:32 浏览:306
如何在服务器查看html传来的表单 发布:2025-08-26 21:35:27 浏览:136
安卓为什么腾浪浏览器用不了 发布:2025-08-26 21:34:38 浏览:527
微信号加密码在哪里打开 发布:2025-08-26 21:14:04 浏览:571
公共解析服务器台湾云主机 发布:2025-08-26 21:13:06 浏览:42
linux文件合并命令 发布:2025-08-26 20:33:34 浏览:53
手机缓存视频哪个好 发布:2025-08-26 19:25:43 浏览:985
mysql备份shell脚本 发布:2025-08-26 19:23:05 浏览:312
卡盟外包源码 发布:2025-08-26 19:17:47 浏览:32