shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机
shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机 备份mysql中的库或者表 mysqldump
常用参数详解:
-u 用户名
-p 密码
-h 服务器ip地址
-d 等价于--no-data 只导出表结构
-t 等价于--no-create-info 只导出数据,不导出建表语句
-A 等价于--all-databases
-B 等价于--databases 导出一个或多个数据库 需求:将school中的score表备份,并且将备份数据通过ftp传输到 10.11.0.148(windows) 的ftp的 bak 目录下 FTP常用指令:
open 与FTP服务器建立连接,例子:open 10.11.0.148
user 有权限登录FTP服务器的用户名和密码,例子:user ftpuser ftpuser # 备份school库
[root@localhost shell]# mysqldump -udbuser -p123456 -h 10.11.0.215 school >school.sql
# 备份school库下的score表
[root@localhost shell]# mysqldump -udbuser -p123456 -h 10.11.0.215 school score >score.sql
# -A备份所有数据库,所有有权限的数据库
# mysqldump -udbuser -p123456 -h 10.11.0.215 -A >score.sql [root@localhost shell]# sh auto_backup.sh aaa
Connected to 10.11.0.148 (10.11.0.148).
-FileZilla Server 0.9. beta
-written by Tim Kosse (tim.kosse@filezilla-project.org)
Please visit https://filezilla-project.org/
Remote system type is UNIX.
Password required for ftpuser
Logged on
CWD successful. "/bak" is current directory.
local: aaa remote: aaa
Entering Passive Mode (,,,,,)
Opening data channel for file upload to server of "/bak/aaa"
Successfully transferred "/bak/aaa"
bytes sent in 9.4e-05 secs (53.19 Kbytes/sec)
Goodbye
[root@localhost shell]# cat auto_backup.sh
#!/bin/bash
# db_user="dbuser"
db_password=""
db_host="10.11.0.215" ftp_user="ftpuser"
ftp_password="ftpuser"
ftp_host="10.11.0.148" src_dir="/data01/bak"
dst_dir="/bak" function auto_ftp
{
ftp -niv << EOF
open $ftp_host
user $ftp_user $ftp_password cd $dst_dir
put $
bye
EOF
} auto_ftp aaa # 自动备份数据库并传输备份文件到ftp的脚本 [root@localhost shell]# cat auto_backup.sh
#!/bin/bash
# # 需要备份的数据库的账号信息
db_user="dbuser"
db_password=""
db_host="10.11.0.215" # 远端ftp服务器的信息
ftp_user="ftpuser"
ftp_password="ftpuser"
ftp_host="10.11.0.148" # 源目录,目标目录
src_dir="/data01/bak"
dst_dir="/bak/"
time_date="`date +%Y%m%d%H%M%S`"
# 备份文件名,根据当前的年月日时分秒 作为文件名
file_name="school_score_${time_date}.sql" function auto_ftp
{
ftp -niv << EOF
open $ftp_host
user $ftp_user $ftp_password cd $dst_dir
put $
bye
EOF
}
#chown -R ftpuser.ftpuser /data01
#auto_ftp "/data01/bak/school_score_20190612181401.sql"
# 备份数据
mysqldump -u"$db_user" -p"$db_password" -h"$db_host" school score > $file_name && auto_ftp $file_name # 执行脚本
[root@localhost shell]# sh auto_backup.sh
Connected to 10.11.0.148 (10.11.0.148).
-FileZilla Server 0.9. beta
-written by Tim Kosse (tim.kosse@filezilla-project.org)
Please visit https://filezilla-project.org/
Remote system type is UNIX.
Password required for ftpuser
Logged on
CWD successful. "/bak" is current directory.
local: school_score_20190612182616.sql remote: school_score_20190612182616.sql
Entering Passive Mode (,,,,,)
Opening data channel for file upload to server of "/bak/school_score_20190612182616.sql"
Successfully transferred "/bak/school_score_20190612182616.sql"
bytes sent in 7.9e-05 secs (29734.18 Kbytes/sec)
Goodbye 搭建windows的ftp服务


shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机的更多相关文章
- shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中
shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...
- shell编程系列23--shell操作数据库实战之mysql命令参数详解
shell编程系列23--shell操作数据库实战之mysql命令参数详解 mysql命令参数详解 -u 用户名 -p 用户密码 -h 服务器ip地址 -D 连接的数据库 -N 不输出列信息 -B 使 ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- shell编程系列26--大型脚本工具开发实战
shell编程系列26--大型脚本工具开发实战 大型脚本工具开发实战 拆分脚本功能,抽象函数 .function get_all_group 返回进程组列表字符串 .function get_all_ ...
- shell编程系列7--shell中常用的工具find、locate、which、whereis
shell编程系列7--shell中常用的工具find.locate.which.whereis .文件查找之find命令 语法格式:find [路径] [选项] [操作] 选项 -name 根据文件 ...
- shell编程系列21--文本处理三剑客之awk中数组的用法及模拟生产环境数据统计
shell编程系列21--文本处理三剑客之awk中数组的用法及模拟生产环境数据统计 shell中的数组的用法: shell数组中的下标是从0开始的 array=("Allen" & ...
- shell编程系列18--文本处理三剑客之awk动作中的条件及if/while/do while/for循环语句
shell编程系列18--文本处理三剑客之awk动作中的条件及if/while/do while/for循环语句条件语句 if(条件表达式) 动作1 else if(条件表达式) 动作2 else 动 ...
- shell编程系列17--文本处理三剑客之awk动作中的表达式用法
shell编程系列17--文本处理三剑客之awk动作中的表达式用法 awk动作表达式中的算数运算符 awk动作中的表达式用法总结: 运算符 含义 + 加 - 减 * 乘 / 除 % 模 ^或** 乘方 ...
- shell编程系列14--文本处理三剑客之awk的概述及常用方法总结
shell编程系列14--文本处理三剑客之awk的概述及常用方法总结 awk是一个文本处理工具,通常用于处理数据并生成结果报告 awk的命名是它的创始人 Alfred Aho.Peter Weinbe ...
随机推荐
- MQ的面试题
MQ的优点和缺点? 优点:解耦 异步,削峰 解耦: 所以需要用来解耦: 异步: 解决方法: 削峰: 解决方法是: 缺点:降低高可用性.增加系统的复杂程度.一致性问题 降低高可用的原因:系统引入的外部依 ...
- go语言-二进制与位运算
一.进制介绍 1.二进制:0,1 -->不能直接用二进制来表示一个整数,用%b输出二进制 package mainimport "fmt"func main() { var ...
- netty: 编解码之jboss marshalling, 用marshalling进行对象传输
jboss marshalling是jboss内部的一个序列化框架,速度也十分快,这里netty也提供了支持,使用十分方便. TCP在网络通讯的时候,通常在解决TCP粘包.拆包问题的时候,一般会用以下 ...
- IList<> IEnumerable<> ReadOnlyCollection<> 使用方向
无论你把它声明为IList<string>,IEnumerable<string>,ReadOnlyCollection<string>或别的东西,是你...... ...
- Kafka为什么速度那么快?该怎么回答
Kafka的消息是保存或缓存在磁盘上的,一般认为在磁盘上读写数据是会降低性能的,因为寻址会比较消耗时间,但是实际上,Kafka的特性之一就是高吞吐率.即使是普通的服务器,Kafka也可以轻松支持每秒百 ...
- 谈MongoDB的应用场景
转载自:http://blog.csdn.net/adparking/article/details/38727911 MongoDB的应用场景在网上搜索了下,很少介绍关于传统的信息化应用中如何使用M ...
- Matlab与数学建模
一.学习目标. (1)了解Matlab与数学建模竞赛的关系. (2)掌握Matlab数学建模的第一个小实例—评估股票价值与风险. (3)掌握Matlab数学建模的回归算法. 二.实例演练. 1.谈谈你 ...
- 过拟合和欠拟合(Over fitting & Under fitting)
欠拟合(Under Fitting) 欠拟合指的是模型没有很好地学习到训练集上的规律. 欠拟合的表现形式: 当模型处于欠拟合状态时,其在训练集和验证集上的误差都很大: 当模型处于欠拟合状态时,根本的办 ...
- fgets()函数
声明: char *fgets(char *str,int n,FILE* stream) 参数: str—这是指向一个字符数组的指针,该数组存储了要读取的字符串 n – 这是要读取的最大字符数(包括 ...
- JSP简单标签的开发
1. 新建RepeatSampleTag类,代码如下: package bid.zhazhapan.fims.tag; import java.io.IOException; import java. ...