shell脚本导出mysql数据表(单表导出)

  平常报表时中经常需要自动备份mysql数据库中的各种数据表,来简单的说一下如何在shell脚本下连接mysql数据库并备份mysql数据表。

#!/bin/bash
HOST=127.0.0.1    #ip (127.0.0.1表示本机地址)
USER=LGL          #数据库用户名
PASSWORD=123      #数据库密码
DATABASE=backup   #数据库名
BACKUP_PATH=/home/lgl/bkdata       #备份目录
logfile=/home/lgl/bkdata/data.log  #记录日志
 
#连接mysql数据库
mysql -h $HOST -u $USER -p$PASSWORD -s $DATABASE <<EOF
drop table if exists test;
    create table test (
    id int(10) not null,
    name varchar(10) not null
);
insert into test values(2016,'LiuBei');  //测试数据
insert into test values(2017,'GuanYu');
insert into test values(2018,'ZhangFei');
EOF
if [ $? -ne 0 ]
then
    echo "Init data fail!">>$logfile
exit 4
fi
echo "Init data Successful!">>$logfile
 
#如果不存在备份目录就创建
if [ ! -d $BACKUP_PATH ]
then
    mkdir $BACKUP_PATH
fi
 
#进入备份目录
cd $BACKUP_PATH
 
#导出数据表test到test.sql中 
mysqldump -h $HOST -u $USER -p$PASSWORD $DATABASE test > test.sql
if [ $? = 0 ] 
then
    echo "test backup Successful!">>$logfile
else
    echo "test backup fail!">>$logfile
exit 4
fi

注意:EOF中只能使用mysql语句。

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要使用Shell脚本导出MySQL数据,可以按照以下步骤进行操作: 1. 在Shell脚本中使用`mysqldump`命令导出MySQL数据。例如,可以使用以下命令导出名为`example_db`的数据库: ``` mysqldump -u username -p password example_db > example_db.sql ``` 其中,`username`是MySQL数据库的用户名,`password`是该用户的密码,`example_db`是要导出的数据库名称,`example_db.sql`是导出的数据保存的文件名。 2. 可以将上述命令添加到Shell脚本中,并保存为`.sh`文件。 3. 在终端中运行该Shell脚本,即可导出MySQL数据。 需要注意的是,为了确保安全性,应该将Shell脚本中的用户名和密码等敏感信息保存在安全的位置,并且在使用时仅授予必要的权限。可以使用shell脚本来导入MySQL数据。 下面是一个简单的例子: ``` #!/bin/bash DB_USER="your_db_username" DB_PASS="your_db_password" DB_NAME="your_db_name" SQL_FILE="path/to/your/sql/file.sql" mysql -u$DB_USER -p$DB_PASS $DB_NAME < $SQL_FILE ``` 在这个脚本中,我们定义了数据库的用户名、密码和数据库名称。我们还定义了SQL文件的路径,该文件包含要导入的数据。 接下来,我们使用`mysql`命令来将SQL文件中的数据导入到MySQL数据库中。`-u`选项指定数据库用户名,`-p`选项提示输入数据库密码,`$DB_NAME`是我们要连接的数据库名称,`<`符号将SQL文件中的数据导入到数据库中。 要运行这个脚本,只需将其保存为.sh文件,然后在终端中运行以下命令: ``` bash your_script_name.sh ``` 请注意,您需要在终端中导航到包含脚本的目录,然后运行上述命令。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值