文章时间:2019年1月31日 08:49:46 作者:余伟同学 说明:利用crotab定时器,实现定时自动备份mysql数据库 更新人 更新时间 更新内容 余伟同学 2019年10月10日...12:30:57 增加复杂版本sh,7天自动删除 安装crotab 安装教程地址:https://wiki.nooss.cn/archives/84.html 编写备份mysql的shell脚本 #简单版本...###################数据库配置信息####################### user=root passwd=root dbname=databases mysql_back_path...-p$passwd $dbname > $mysql_back_path/$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name..."*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份sql echo '检查删除过期备份数据库成功' 说明 -u 后面跟的是用户名 -p 后面跟的是密码 datebaes
笔记内容: 13.4 mysql用户管理 13.5 常用sql语句 13.6 mysql数据库备份恢复 笔记日期:2017-10-31 13.4 mysql用户管理 ?...13.6 mysql数据库备份恢复 ?...恢复库,将备份文件里的内容重定向到一个空的数据库中,语法如下: mysql -uroot -p123456 mysql2 mysql.sql ?...备份表,除了备份整个数据库之外,还能针对数据库中的某个表进行备份,指定库名和表名即可,语法如下: mysqldump -uroot -p123456 mysql user > /tmp/user.sql...备份所有的库,如果mysql中有很多数据库,一个个去备份太麻烦,所以需要能够备份所有数据库的语句,语法如下: mysqldump -uroot -p -A >/tmp/123.sql -A是all,所有的意思
/bin/bash host="目标ip" id="用户名" pwd="密码" dbs=$(echo "show databases;" | mysql -u$id -p$pwd -h$host) nodeldb...="Database information_schema performance_schema test mysql" backuppath="/root/mysqlbackup" day=15 localIp...-d $backuppath ] &&mkdir -p $backuppath cd $backuppath backupname=mysql_$(date +%Y-%m-%d) for db in $...echo $(date +%Y-%m-%d)" $localIp $host $db mysql dump failed">>mysql.log echo $(date +%...localIp backup $host $db is Failure" exit 0 fi done tar -czf $backupname.tar.gz *.sql 上一句执行的返回值linux
13.5 常用sql语句 [root@adailinux ~]# mysql -uroot -p'123456'; Welcome to the MySQL monitor. mysql> use db1...查看库的所有内容 mysql> select db,user from mysql.db; #查看库指定内容 mysql> select * from mysql.db where host like...='127.0.0.1'; Query OK, 1 row affected (0.06 sec) #删除用户,在删除用户前需要先指定表 13.6 MySQL数据库备份恢复 备份库 备份指定库: [root...@adailinux ~]# mysqldump -uroot -p123456 mysql > /tmp/mysqlbak.sql 备份所有库: [root@adailinux ~]# mysqldump...备份表 备份指定表: [root@adailinux ~]# mysql -uroot -p123456 mysql user > /tmp/user.sql 只备份表结构: [root@adailinux
查看指定用户授予的权限:show grants for (用户名)@('用户来源IP,可以是%号') 常用sql语句: show tables; =查看当前数据库里面有哪些表 select count...MySQL数据库的备份与恢复: mysqldump -uroot -p123456 mysql > /tmp/mysql.sql 备份数据库 mysql -uroot -p123456 mysql mysql.sql 恢复备份的数据库,同样可以把备份的数据库恢复到新创建了的数据库里面 mysqldump -uroot -p123456 mysql user > /tmp/user.sql...备份表,在需要备份的库后面加上一个表的名字,就可以备份表 mysql -uroot -p123456 mysql 备份的表,可以修改库 可以把备份的表恢复到其他的库里面...只备份表的结构 -d = 只备份数据库表的结构
一个项目的基础便是数据库,但是可能因为某些原因会导致数据丢失,或数据库结构变化,严重一点的或造成数据库删除。...为了以防万一,这时候就需要我们定时进行数据库备份,但是如果人来操作的话会是一个比较麻烦的工程,这时我们可以使用mysqldump写个脚本,由Linux的crontab来定时执行。...1.在linux系统中自定义一个文件夹,在我的服务器上我放在了/zhb/backup 2.在/zhb/backup下面建一个bkemp.sh的脚本文件 3.使用vi命令 vi ....等几分钟我们来看看是否每分钟进行一次备份。 [在这里插入图片描述]大功告成,当然我们实际应用中不需要每分钟进行数据库的备份,具体的crontab表达式可根据实际进行编写。...我们将sql拿出来执行一下,看看是否备份成功,我们发现数据库结构和数据以及视图都进行备份了,但是函数和存储过程并没有进行备份。 欢迎大家留言交流如何进行函数及存储过程的备份~
=mysql #不需要备份的数据库,多个写多行 3、打开从机B的my.cnf,输入 server-id = 2 log_bin = /var/...#不复制某个库 4、同步数据库 有多种方法,我说最笨的一种,先mysqldump导出主机A的数据test为 test.sql 然后在,从机B上建立数据库test,mysql导入 test.sql到test...inmysqlmysql5.0.51bdata_binglog.000001 > D:hhy.sql 主从 server-id = 1 log-bin = shenghua_binglog #需要 备份的数据库...binlog-do-db = hhy #不需 要备份的数据库 #binlog-ignore-db = ** 从服务器上设置 server-id=2 #(配置多个从服务器时依次设置id号) master-host...,如果备份多个数据库,重复设 置这个选项即可 重启主从 slave start; show slave status; Slave_IO_Running 和 Slave_SQL_Running 两列的值都为
以下演示mysql数据库的备份操作流程: 查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!...存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质,比如腾讯云的oss,不仅安全可靠,更价格低廉,比较适合数据备份存储使用。...1、在执行mysql数据备份前,可先执行命令查看磁盘容量: # df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup-lv_root...换为实际的数据库名称; 当然,你也可以使用其实的命名规则!...DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 注意: 把 username 替换为实际的用户名; 把 password 替换为实际的密码; 把 DatabaseName 替换为实际的数据库名
准备: 创建几个目录 mkdir -vp mysql_backup/data mysql_backup/logs mysql_backup/scripts data:用来存放备份数据 logs:存放脚本运行日志...scripts:存放备份脚本 1、指定数据库备份: [root@iZwz90hf9uqjtrspga3v5bZ kuliya]# cd mysql_backup/scripts/ [root@iZwz90hf9uqjtrspga3v5bZ...scripts]# vim db_backup.sh 备份脚本: BACKUP_ROOT=/data/xvdb/mysql_backup BACKUP_FILEDIR=$BACKUP_ROOT.../data DATE=$(date +%Y%m%d%H%M) ######备份###### db=数据库名称 echo ----------backup begin----------...的ip地址 -P端口:配置要备份的MySQL端口 ----以上两项是为了防止单机MySQL配置了多个端口或者多个版本,以免出错 2、批量备份脚本: BACKUP_ROOT=/data/xvdb/mysql_backup
1),数据库的备份 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 例:mysqldump -u dbadmin -p myblog > /home/zhangy...myblog > /home/zhangy/blog/database_bak/blog_struc.sql 说明:-d 没有数据 –每个create语句之前增加一个drop table 4.导出数据库一个表结构...drop table 2),数据库的导入 1,用 mysqldump 备份出来的文件是一个可以直接倒入的 SQL 脚本,有两种方法可以将数据导入。...2,用 source 语句 例如: mysql -u dbadmin -p use myblog; set names utf8; #这里的字符集根你的将要导入的数据库的字符集一至。...source /home/zhangy/blog/database_bak/myblog.sql; 本文由职坐标整理并发布,了解更多内容,请关注职坐标数据库MySQL频道!
/bin/bash #数据库登录信息 #如果在windows编辑器下编辑 了 ,请把格式转为unix下的格式 # :set ff=unix #mysqldump目录 BIN_DIR="/...usr/local/mysql/bin" #登录名 DB_USER="root" #登录密码 DB_PWD="123456" #主机 DB_HOST="localhost" #备份地址 BK_PATH=..."/data/dbbk" #当前日期 NOW_DATE=`date +%Y-%m-%d` #-------------------------------- # 数据库 : affiliate #--...$DB_USER -p$DB_PWD -h$DB_HOST --databases $TAB_NAME > $BK_PATH/$TAB_NAME"_"$NOW_DATE.sql #删除超过60天的备份数据...,保留3个月里的 10号 20号 30号的备份数据; find $BK_PATH -mtime +60 -name '*[1-9].sql' -exec rm -rf {} \; #find $BK_PATH
Linux实现MySQL数据库凌晨自动备份 备份多数据库,每天凌晨两点执行,使用当前年月日作为文件夹,不存在该文件夹就创建,删除七天前备份过的文件。...-d $backup_dir ];then 12 mkdir -p $backup_dir 13 fi 14 15 # 将需要备份的数据放入...16 db_array=("dbName1" "dbName1" "dbName1") #配置要备份的数据库 17 18 19 for db_name in ${db_array...root -p$login_passwd $db_name > $backup_dir$db_name.sql 23 24 done 25 26 # 删除7天前备份的文件...27 find backup_dir -atime +7 -name "*.sql" -exec rm -rf {} \ 28 29 echo "备份结束" 没有安装
而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的! 备份是什么?...基本的备份脚本,其它存储介质只是介质的访问方式可能不大一样。...1、查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!...换为实际的数据库名称;当然,你也可以使用其实的命名规则!...DatabaseName_$(date +%Y%m%d_%H%M%S).sql.gz 注意: 把 username 替换为实际的用户名;把 password 替换为实际的密码;把 DatabaseName 替换为实际的数据库名
而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的! 备份是什么? ? 为什么要备份 ? 容灾方案建设 ?...1、查看磁盘空间情况: 既然是定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!.../home下空间比较充足,所以可以考虑在/home保存备份文件; cd /home mkdir backupcd backup 3、创建备份Shell脚本: 注意把以下命令中的DatabaseName...换为实际的数据库名称; 当然,你也可以使用其实的命名规则!..._$(date +%Y%m%d_%H%M%S).sql.gz 注意: 把 username 替换为实际的用户名; 把 password 替换为实际的密码; 把 DatabaseName 替换为实际的数据库名
Linux下MySQL数据库备份和恢复 Linux下MySQL数据库有逻辑备份和物理备份,也可以分为完全备份、部分备份。...-all-databases > BackupName.sql MySQL 完全备份和恢复 备份某—个数据库: mysqldump -uUsername -pPassword 数据库名 > /root.../XXX.bak 会将指定的数据库备份至roo家目录下,文件名为XXX.bak 恢复: mysql -uUsername -pPassword 数据库名 < /root/XXX.bak MySQL 增量备份...执行以下命令: mysql -uUsername -pPassword 数据库名 备份文件名.sql 导入增量备份,执行以下命令: mysqlbinlog /var/lib/mysql.../sql_backup.000002 | mysql -uUsername -pPassword 数据库名 Linux自动备份 开启Linux crond 服务:service crond start
: drop database db1; MySQL数据库备份恢复 备份库,这里指定的是mysql库,也可以指定别的库: mysqldump -uroot -p123456 mysql > /tmp.../mysql.sql 恢复库,把备份的数据恢复到指定的mysql库中: mysql -uroot -p123456 mysql mysql.sql 备份mysql库里的user表:...备份所有库: mysqldump -uroot -p -A >/tmp/123.sql 只备份表结构: mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql...扩展 SQL语句教程 http://www.runoob.com/sql/sql-tutorial.html 什么是事务?...引擎的数据库 innobackupex 备份 Xtrabackup 增量备份 http://zhangguangzhi.top/2017/08/23/innobackex%E5%B7%A5%E5%85%
step-one:在服务器上创建备份目录: mkdir /home/alic/workspace/mysql/backup 进入backup目录 cd /home/alic/workspace/mysql.../backup step-two:编写备份脚本代码: sudo vi dbbackup.sh 添加下面几行shell脚本代码 #!...%Y-%m-%d_%H%M%S.sql.gz cd /home/alic/workspace/mysql/backup rm -rffind ....-name '*.sql.gz' -mtime 7#删除一个星期(7天)前的备份文件 #end step-three:更改备份脚本权限 sudo chmod 777 dbbackup.sh step-four...:用crontab定时执行备份脚本代码: crontab -e 若每天晚上23点00备份,添加如下代码 00 23 * * * /home/alic/workspace/mysql/backup/dbbackup.sh
Linux服务器自动备份Mysql数据库 shell脚本自动备份数据库,以防止数据出错时回滚数据 shell备份脚本代码 #!.../bin/bash sqlurl=数据库地址 sqlname=数据库账号 sqlpwd=密码 sqltab=数据库库名 sqlpath=/sql-back mkdir /data; cd /data;...; files2=${data2%\ *}; mysqldump -h$sqlurl -u$sqlname -p$sqlpwd $sqltab >"$datam"/"$files1"; echo '备份数据库执行完毕...'; rm -rf $files2; 添加Linux定时任务命令 crontab -e #进去添加下边代码 */15 * * * * /data/shell/sql-back.sh #定时时间格式...脚本路径/脚本 #:wq保存退出即可 每隔15分钟备份一次,只备份最近2天的数据库。
1、环境变量配置这里使用MYSQL自带的备份命令mysqldump,所以首先保证你的服务器正确安装了MySQL数据库,然后配置了如下MySQL环境变量。...vim /etc/profile追加一行,一般MySQL数据库默认安装路径都是/usr/local/mysql这个export PATH=$PATH:/usr/local/mysql/bin保存退出,...然后刷新环境变量 source /etc/profile2、创建定时备份脚本创建 /data/db_bak 目录mkdir datacd /datamkdir db_bak 新建bak_mysql.sh...定时备份脚本(默认指定3天删除)vim bak_mysql.sh脚本内容如下:#!.../bak_mysql.sh 3、定时任务设置yum install crontabs编辑定时任务文件,增加MySQL定时备份脚本文件的执行vim /etc/crontab内容如下:这里先默认5分钟执行一次
领取专属 10元无门槛券
手把手带您无忧上云