一种基于shell脚本批量创建MYSQL表的方法

您所在的位置:网站首页 创建表的方法有 一种基于shell脚本批量创建MYSQL表的方法

一种基于shell脚本批量创建MYSQL表的方法

2023-08-09 13:08| 来源: 网络整理| 查看: 265

目录

0 引 言

1 基本知识

2 脚本编写

3 实验测试

4 小 结

0 引 言

工作中经常需要在数据库中进行建表操作,无论是使用数据库一些工具或手动建表都比较麻烦,需要用户一个个输入字段进行建立或一个个执行sql脚本,无论是哪种方式都比较费力,影响工作效率,那么有没有一种快速批量执行sql文件的形式进行批量建表的方法呢?这里就需要用shell脚本调用sql文件的形式进行批量建表。本文针对上述问题,探讨了一种批量建立MYSQL数据库表的方法,给出了批量执行sql文件的脚本,并对脚本主要的语法进行分析,该脚本在实验中得到了测试认证,效果良好。

1 基本知识

(1)awk用法

  参考链接如下

  https://blog.csdn.net/godlovedaniel/article/details/104755897

 下面对本脚本使用的语句进行解释

   echo $file | awk -F'.' '{print  "."$NF}'

  输入为:   echo $file,为遍历目录后每个文件的名字

  awk -F'.' '{print  "."$NF}':表示以.号分隔,输入的每一条记录,并且打印最后一个字段,输出以.号输出。NF:表示字段的个数。$NF:就表示最后一个字段。由于每个文件的命名结尾都是sql,所以最终得到的为.sql。

  该语句在此的作用就是,获取后缀,进行下一步的条件匹配,对sql文件进行过滤。

(2)read -p

  Linux read命令用于从标准输入读取数值。

  read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用重定向的时候,可以读取文件中的一行数据。

 -p 后面跟提示信息,即在输入前打印提示信息。如:

#!/bin/bash read -p "输入网站名:" website echo "你输入的网站名是 $website" exit 0 测试结果为: 输入网站名:https://blog.csdn.net/godlovedaniel/article/details 你输入的网站名是 https://blog.csdn.net/godlovedaniel/article/details

  如果 -p后指定的变量在脚本中定义且赋值,则取变量赋值后的值,如果没有赋值,则从控制台中进行输入

(3)连接MYSQL执行sql脚本

   mysql -h${host} -u${user} -p${db_pass} -P${port} --default-character-set=utf8 ${db_name} < ${file}

   -h:指定连接的主机地址

  -u:登录的用户

  -p:数据库连接密码

  -P:端口

  输入为${file}:表示sql脚本,将输入的sql脚本在MYSQL中进行执行。

  shell脚本中执行sql脚本的几种种方式:(shell脚本调用sql文件)

  注意:sql文件和脚本文件在同一路径下,或不在同一路径下,将sql文件写成绝对路径如:/home/centos/test/test.sql

mysql -H主机地址 -P 端口号  -u用户名 -p密码  < test.sql (管道符调用sql文件)mysql -H主机地址 -P 端口号  -u用户名 -p密码  -e "source test.sql" (命令行调用sql文件)mysql -H主机地址 -P 端口号  -u用户名 -p密码  -e "\. test.sql"mysql -H主机地址 -P 端口号  -u用户名 -p密码  >${LOG_FILE} #输出执行日志 error=`grep ERROR error.log` #读取错误日志信息 if [ -n "$error" ] ; then #如果有错误就退出程序 echo $error exit fi else echo "您已经取消操作!" exit fi fi fi done 3 实验测试

  进入脚本的目录,执行该脚本

[root@bigdata3 TOOLS]# ./create_mysql_table_batch.sh '/home/centos/phm/MYSQL/appv_power'

执行结果如下:

到MYSQL数据库中查看表已经创建 ,如下图所示:

4 小 结

本文研究了一中MYSQL批量建表的方法,给出了具体脚本程序,并对程序中关键点进行了分析,读者可根据自己环境需求对脚本进行稍加改造便可使用,该脚本已在环境中进行测试,结果可靠。

本文主要要点:

(1)shell脚本中调用sql文件的方法(4种)(2)read -p的用法(3)echo关闭显示的用法。stty -echo(4)echo -e 的用法


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3