/bin/bash # 以下配置信息请自己修改 mysql_user="root" #MySQL备份用户 mysql_password="summer123" #MySQL备份用户的密码 mysql_host...="192.168.0.1" mysql_port="3306" mysql_charset="utf8" #MySQL编码 backup_db_arr=("testapp") #要备份的数据库名称,多个用空格分开隔开...#欢迎语 # 判断MYSQL是否启动,mysql没有启动则备份退出 mysql_ps=`ps -ef |grep mysql |wc -l` mysql_listen=`netstat -an |grep...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$mysql_user...." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !
/mysql -u$username -p$password -h$hostip -e"SHOW DATABASES;"` denylists=(Database mysql test information_schema...performance_schema) #循环备份数据库 for dbname in ${dblists[*]} do #排除不用备份的数据库 flag=0 for i in ${denylists...[*]} do if [ "$i" = "$dbname" ] then flag=1 fi done if [ $flag -ne 1 ] then #指定时间日期和备份目录.../bin/mysql -u$username -p$password -h$hostip $dbname -e"SHOW MASTER STATUS;" >>$LogFile #开始备份数据库...--net_buffer_length=163840 | gzip>$backupdir echo " " >> $LogFile /usr/local/mysql/bin/mysql -u$
MySQL 备份之 mysqldump mysqldump mysqldump工具备份: 本质:导出的是SQL语句文件 优点:不论是什么存储引擎,都可以用mysqldump备成SQL语句 缺点:速度较慢...,那么只需要锁定该库下的表就可以了 --lock-all-tables 如果备份的数据库里的表与其他库有关系的话,那么需要锁定整个mysql数据库的所有库下的所有表 --flush-logs,...-F 开始备份前刷新日志 --flush-privileges 备份包含mysql数据库时刷新授权表 --lock-all-tables, -x MyISAM 一致性 服务可用性.../table01_02.sql # 备份多个表 表级恢复: [root@Admin ~]# mysql -p123 db01 < /tmp/mysqlback/table01.sql 或者在mysql...数据库内使用source命令来执行外部的sql文件 mysql> source /tmp/mysqlback/table01.sql 库级备份 / 恢复 库级备份: [root@Admin ~]# mysqldump
MySQL 备份之 into outfile 逻辑数据导出(备份) 用法: select xxx into outfile '/path/file' from table_name; mysql...>select * into outfile '/back/emp3.sql' from emp; 无论是什么存储引擎,本身是一种数据导出的方法,同时可以用来辅助备份,它可以对一个表的其中一列或者某几列做备份...,如果是多列的话用逗号隔开 逻辑数据导入(恢复) 方法一: load data local infile '/path/file' into table table_name; mysql>...--+ | 1 | haha | | 2 | wowo | | 3 | lili | | 4 | yoyo | +------+------+ # 备份 mysql> select...id, name into outfile '/tmp/back_mysql' from t1; Query OK, 4 rows affected (0.01 sec) 查看备份 [root@Admin
mysqldump工具备份: 本质:导出的是SQL语句文件 优点:不论是什么存储引擎,都可以用mysqldump备成SQL语句 缺点:速度较慢,导入时可能会出现格式不兼容的突发情况,无法做增量备份和累计增量备份...提供三种级别的备份,表级,库级和全库级 备份数据库 备份单个数据库 mysqldump --databases we -uroot -pAa123456 > /we/sjk.sql 备份多个数据库 mysqldump...-pAa123456 -d > /we/sjk.sql 数据库恢复 mysql -uroot -pAa123456 we < /we/sjk.sql 全库备份/恢复 备份 mysqldump -uroot...-pAa123456 --all-databases > /we/sjk.sql 恢复 mysql -uroot -pAa123456 < /we/sjk.sql 备份数据库表 备份we库的userc...--compact -t we userc > /we/sjkb.sql 恢复数据库表 mysql mysqldump -uroot -pAa123456 we < /we/sjkb.s`ql
上一篇针对使用xtrabackup工具进行物理备份和数据恢复做了一个详细讲解,本篇主要谈谈如何使用mysql自带的备份工具mysqldump进行逻辑备份和数据恢复。...如果还围观看过上一篇文章的可以先行查询上一篇文章关于使用xtrabackup进行数据备份与恢复:Mysql备份与恢复(1)---物理备份。...物理备份和逻辑备份的区别 逻辑备份 优点: 备份成sql文件,恢复数据很简单。 逻辑备份与存储引擎无关,所以可以通用备份。 有助于避免数据损坏。 缺点: 数据恢复速度较慢。...mysqldump逻辑备份 mysqldump是mysql自带的一个简单的备份工具,由于操作简单而且对不同的存储引擎通用,所以比较受欢迎。...逻辑备份实际上是将数据库的数据被分成一个sql文件,然后恢复数据时只需要用图形化工具导入这个sql文件或者dos下使用source命令引入就可恢复数据。
创建一个脚本dbbackup.sh然后内容如下: #!.../bin/bash # 执行此文件将会备份数据库到/opt/backup/data目录中 cd /opt/backup/data date=`date -I`; #取出当前的日期 /opt/lampp.../bin/mysqldump -u用户名 -p密码 数据库> 备份文件名前缀_$date.sql; #导出数据库为sql脚本 /bin/tar zcvhf 备份文件名前缀_$date.tar.gz 备份文件名前缀..._$date.sql; #压缩sql脚本 rm 备份文件名前缀_$date.sql #删除sql文件 现在我们将这个脚本添加到定时任务中去,让每天都执行一次 使用crontab -l命令查看当前定时任务
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"` tar_time...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir...-d "$tardir" ];then mkdir -p $tardir fi #判断备份目录是否存在 if [ !...-d "$backdir" ]; then mkdir -p $backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2..." ];then tar zcf ${tardir}/mysql_bckup_$tar_time.tar.gz -C $backdir .
1、分库备份 !/bin/bash image.png 2、分库分表备份 !/bin/sh image.png [ !
/bin/bash #by azura #About database backup #URL https://www.mxsina.com DBCMD=/usr/local/mysql/bin/mysqldump...123456789 #数字段请修改为root用户数据库连接密码 DATABASE=emlogdb #emlogdb请修改为备份的数据库...---------------------------------------------------------" echo echo "Start the database backup" #示例备份命令...mysqlbak/bak_emlogdb.sql $DBCMD -u$DBUSER -p$DBPWD $DATABASE > $BAK_DIR/db_emlog.sql #db_emlog.sql可修改为备份文件的文件名
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir...-d "$tardir" ];then mkdir -p $tardir fi #判断备份目录是否存在 if [ !...-d "$backdir" ]; then mkdir -p $backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2..." ];then tar zcf ${tardir}/mysql_bckup_$tar_time.tar.gz -C $backdir .
今天简单的写了个python的mysql备份脚本,其实也不是很难呀。比shell简洁了很多! 开整: 注释都用英文写了,有些英语基础的朋友应该都可以看得懂了! #!... 'root' #mysqlbackup password Password = 'root' #mysqlbackup command Mysqlcommand = '/usr/local/mysql.../bin/mysqldump' #gzip command Gzipcommand = '/bin/gzip' #backup mysql database Mysqldata = ['gtshop...'sucessful gzip gtshop' else: print 'gzip failed' 执行结果: [root@localhost script]# python mysql_backup.py
/bin/bash mysql_host="localhost" mysql_user="xxxx" mysql_pwd="xxxxx" #保存备份sql的文件路径 db_dir="/data/backup...-d $db_dir];then # mkdir $db_dir #fi db_arr=$(echo 'show databases' | mysql -u$mysql_user -p$...mysql_pwd -h$mysql_host) #获得当前日期 date=$(date +%Y%m%d) ziname=$date".zip" #指定的数据库文件 thisdb="zzaly"...date".sql" for dbname in ${db_arr} do if [ $thisdb == $dbname ];then mysqldump -u$mysql_user...-p$mysql_pwd -h$mysql_host $dbname > $db_dir"/"$sqlfile fi done find $db_dir -mtime +5 -type f |
案例需求 将/lv1目录动态扩容到3G 案例思路 查看/lv1目录所对应的逻辑卷是哪一个 /dev/mapper/vg1-lv1 查看当前逻辑卷所在的卷组vg1剩余空间是否足够 如果vg1空间不够,得先扩容卷组...,再扩容逻辑卷 如果vg1空间足够,直接扩容逻辑卷 案例实现 步骤: 1....扩容逻辑卷所在的卷组 1)首先得有物理设备 /dev/sdb3 2) 将物理设备做成物理卷 [root@zutuanxue /]# pvcreate /dev/sdb3 Physical volume...;如果直接加入卷组,系统会自动帮你将其做成物理卷。...扩容逻辑卷 [root@zutuanxue /]# lvextend -L 3G /dev/vg1/lv1 -L 3G最终的大小 或者 [root@zutuanxue /]# lvextend -
案例需求: 创建一个2.5G大小的逻辑卷 案例思路: 物理的设备 将物理设备做成物理卷 创建卷组并将物理卷加入其中 创建逻辑卷 格式化逻辑卷 挂载使用 案例实现 步骤: 1....创建逻辑卷 [root@zutuanxue ~]# lvcreate -n lv1 -L 2.5G vg1 Logical volume "lv1" created....-L:指定逻辑卷的大小 -l:指定逻辑卷的大小 举例: -l 100 100个PE,每个PE大小默认4M,故逻辑卷大小为400M -l 50%free 卷组剩余空间的50% [root@zutuanxue...vg01空间的50%的逻辑卷lv03 [root@zutuanxue ~]# lvcreate -n lv3 -l 50%free vg1 Logical volume "lv3" created....格式化逻辑卷 [root@zutuanxue ~]# mkfs.ext4 /dev/vg1/lv1 6.
案例需求 将lv1逻辑卷由原来的3G缩小为2G 案例思路 1、卸载逻辑卷 2、扫描逻辑卷 3、裁剪率lv1文件系统 4、裁剪逻辑卷lv1 5、挂载使用 案例实现 ext分区逻辑卷裁剪 [root...zutuanxue /]# resize2fs /dev/vg1/lv1 2G 裁剪文件系统到2G [root@zutuanxue /]# lvreduce /dev/vg1/lv1 -L 2G 裁剪逻辑卷.../]# df -h 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/vg1-lv1 2.0G 9.0M 1.8G 1% /lv1 xfs分区逻辑卷裁剪...案例思路: 1、将lv2的文件系统格式化为xfs 2、将/dev/vg1/lv2挂载到/lv2 3、在/lv2中建立一个文件,写入内容 4、备份数据 5、卸载分区并裁剪逻辑卷 6、格式化裁剪后的逻辑卷...7、导入数据 1)备份数据命令 xfsdump 2)备份数据 [root@zutuanxue /]# xfsdump -f /root/lv2.img /lv2 #挂载点目录后面不要加"/" xfsdump
一、MySQL数据库备份之逻辑备份 1.命令简介: # mysqldump -h 服务器 -u用户名 -p密码 数据库名 > 备份文件.sql 1)关于数据库名: -A, --all-databases...in set (0.00 sec) mysql> 2)逻辑备份: [root@localhost ~]# mysqldump -uroot -p'Yanglt123.'...[root@localhost ~]# 可以看到它恢复到了备份点,刚才创建的表t2是在备份点之后生成的,可以看到表中没有t2: mysql> show databases; +------------...> 6) 刷新授权 改完密码后与备份点的密码可能不一致,所有我们要执行此步骤,来实现与备份点密码一致。...[root@localhost ~]# 7)建议在逻辑备份恢复时,暂停BINLOG mysql> SET SQL_LOG_BIN=0; Query OK, 0 rows affected (0.02 sec
案例需求 写一个mysql binlog备份脚本,要求每天0点0分,计算机自动备份前一天的binlog日志,打包后发送给备份服务器。...脚本应用场景: 文件备份 解决问题 日常文件备份 日常数据备份 脚本思路 1、确定binlog的位置及备份时间间隔 每天 当前要备份的binlog是谁 .../bin/bash #Description: #Author: www.zutuanxue.com #Created Time: #将mysql的binlog日志备份到备份服务器 ######...='/var/lib/mysql' current_binlog=`mysql -u $db_user -e "show master status"|egrep "binlog....[[:digit:]]*"|awk '{print $1}'` date >> $log #准备备份 #1 刷新binlog mysql -u $db_user -e "flush logs"
定时执行脚本: 1、执行 crontab -e 00 00 * * * /bin/bash yourpath/mysqlbak.sh 2、打开自动执行文件 vi /etc/crontab...00 00 * * * root /mysqlbak.sh 以上两个 00 00 * * * 为每天的凌晨自动执行脚本 分 时 日 月 周 命令 M: 分钟(0-59...usr/local/sbin:/usr/local/mysql/bin export PATH #数据库用户名 dbuser='root' #数据库密码 dbpasswd='123456...'"备份时间为${backtime},备份数据库表 ${dbname} 开始" 》 ${logpath}/mysqllog.log #正式备份数据库 for table in $dbname;...》 ${logpath}/mysqllog.log else #备份失败则进行以下操作 echo "数据库表 ${dbname} 备份失败!!"
每天固定时间用mysqldump 备份mysql数据。 #!.../bin/bash 每天早上4点, mysql备份数据 orangleliu chmod 700 backup.sh crontab -e 0 4 * /home/erya/run/moniter/...mysql_backup.sh user="radius" password="" host="localhost" db_name="radius" backup directory base_dir...="/home/backup" backup_log="${base_dir}/mysql_backup.log" backup_path=${base_dir} file info date=$(date
领取专属 10元无门槛券
手把手带您无忧上云