Shell编程—【09】shell脚本与mysql数据库交互

mysql命令参数详解

参数名说明
-u用户名
-p用户密码
-h服务器ip地址
-D连接的数据库
-N不输出列信息
-B使用tab键代替默认交互分隔符
-e执行sql语句
-E垂直输出
-H以HTML格式输出
-X以XML格式输出
#1.写一个脚本,该脚本可以接收一个参数,参数为需要执行的sql语句

mysql -uroot -p123456 -Dschool -N -B -e "select * from student"

=======operate_mysql.sh===============
# !/bin/bash

user="root"
password="123456"
host="192.168.38.21"
db_name="$1"

SQL="$2"

mysql -u"$user" -p"$password" -h"$host" -D"$db_name" -B -e "$SQL"
=====================================

sh operate_mysql.sh school "select * from student"

备份mysql中的库或表

mysqldump参数详解

参数名说明
-u用户名
-p用户密码
-h服务器ip地址
-d等价于–no-data 只是导出表结构
-t等价于–no-create-info 只是导出数据,不到出建表语句
-A等价于–all-databases
-B等价于–databases 导出一个或多个数据库
#1.将school中的score表备份,并且将备份数据通过ftp传输到192.168.184.3的/data/backup 目录下

FTP常用命令:
  open  与ftp服务器建立连接,例子 : open 192.168.184.3
  user 有权限登陆FTP服务器的用户名和密码。例子:user ftp_user redhat

====================
#!/bin/bash

db_user=""
db_password=""
db_host=""

ftp_user=""
ftp_password=""
ftp_host=""

dst_dir="/data/backup"
time_date="`date +%Y%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 $1
      bye
EOF
}

mysqldump -u"$db_user" -p"$db_password" -h"$db_host" school score > ./$file_name && auto_ftp ./$file_name

======================
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值