shell脚本mysql_mysql下通过shell脚本插入数据

一、创建数据库及表

建立数据库create database dic character set utf8;

建表CREATE TABLE `dic` (

`id` int(22) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',

`principal` varchar(213) CHARACTER SET utf8 NOT NULL COMMENT '负责人',

`use` varchar(222) CHARACTER SET utf8 NOT NULL COMMENT '用途',

`type` varchar(222) CHARACTER SET utf8 NOT NULL COMMENT '机器类型',

`model` varchar(222) CHARACTER SET utf8 NOT NULL COMMENT '机器型号',

`place` varchar(222) CHARACTER SET utf8 NOT NULL COMMENT '位置',

`IP` varchar(222) CHARACTER SET utf8 NOT NULL COMMENT 'IP',

`addtime` datetime NOT NULL COMMENT '时间',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8;

二、编写相关脚本

注意事项

mysql -u用户名 -p密码 -e "命令;"  多命令都写在双引号里面,通过分号分割。

INSERT INTO `表名` (`字段`,`字段`) VALUES (值,值);

以下两个脚本都可以实现#!/bin/bash

read -p "please enter you mysql password:" passwd

TABLE="dic"

query="NULL,'张伟易','新dns服务器1','实体机','DELL R410','14层A5','10.240.210.61','2015-06-06 13:04:09'"

echo $query

/usr/bin/mysql dic -u root -p$passwd <

INSERT INTO $TABLE VALUE($query);

#EOF#!/bin/bash

read -p "please enter you mysql password:" passwd

TABLE="dic"

query="NULL,'张伟易','新dns服务器1','实体机','DELL R410','14层A5','10.240.210.61','2015-06-06 13:04:09'"

echo $query

/usr/bin/mysql dic -u root -p$passwd -e "INSERT INTO $TABLE VALUE($query);"

11510758d5dfe7b3fff3ccb272d7c907.png

此外,还可以通过将普通文本格式化输出后导入到数据库中

这里以test1作为示例[root@daohang lxh]# cat test1

小明    新服务器1    实体机    DELL R410    14层A5    10.240.210.61

脚本如下#!/bin/bash

>test_new

read -p "please enter you mysql password:" passwd

MYSQL=/usr/bin/mysql

TABLE="dic"

TIME=`date +%F\ %T`

P="\e[01;35m"

#sed "s/\(^.*$\)/\1,$TIME/" test >> test_new##在每行行尾添加时间

cat test1 | sed 's/^/NULL\t/g' |sed 's/\t/,/g' |sed "s/\(^.*$\)/\1,$TIME/" >>test_new

cat test_new |while read line

#echo "$TIME" >>mysql_err_log

do

echo $line

query=`echo "$line" |awk -F ","  '{ printf("%s,\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\",\"%s\"", $1, $2, $3, $4, $5, $6, $7 , $8)}'`

echo $query 1>>mysql_err_log 2>&1

echo $query

$MYSQL dic -u root -p$passwd  <

INSERT INTO $TABLE VALUES($query);

EOF

done

#echo -e " $P***********************$TIME**********************************" >>mysql_err_log

执行脚本[root@daohang lxh]# sh mysqltest.sh

NULL,小明,新服务器1,实体机,DELL R410,14层A5,10.240.210.61,2015-06-06 14:26:07

NULL,"小明","新服务器1","实体机","DELL R410","14层A5","10.240.210.61","2015-06-06 14:26:07"

插入成功

7b1c000d0eacb6408fdba60001719121.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值