注释:脚本(gomysql.py)需要进一步优化,初学者,努力中

首先配置需要执行的dbip.ini列表,格式如下

S1  192.168.0.5   3306  dbusername dbpasswd dbname
S2  192.168.0.6   3306 dbusername dbpasswd  dbname
S3  192.168.0.7   3306 dbusername dbpasswd  dbname

执行方法:./gomysql.py dbip.ini(参数一,数据库账号IP配置列表,实例如下) db.sql(参数二,执行的sql语句文本)

效果:

# ./readlnedb.py logdbip.ini 20150827/select_22.sql

logdbip.ini
20150827/select_22.sql
确认以上信息[y/n]:

脚本内容如下:

#!/usr/bin/python
#encoding:utf-8
import sys
import os
import MySQLdb
import datetime
if len(sys.argv) < 2:
 print "error: " + sys.argv[0] + "file1 file2"
 sys.exit()
file1=sys.argv[1]
file2=sys.argv[2]
print file1
print file2

#sql = open(file2,"r").read()
#print sql

str = raw_input("确认以上信息[y/n]:")
if str != "y":
   exit()

for line in open(file1,"r"):
   servername=line.strip().split()[0]
   ip=line.strip().split()[1]
   port=line.strip().split()[2]
   user=line.strip().split()[3]
   pswd=line.strip().split()[4]
   dbname=line.strip().split()[5]
   print "\n=======",servername,"==========="
   db = MySQLdb.connect(ip,user,pswd,dbname)
   cursor = db.cursor()
   for sql in open(file2,"r"):
    cursor.execute(sql)
    data = cursor.fetchall()
    for row in data:
           print "\n"
           num = 0
           while (num < len(row)):
             print row[num],
             num += 1
   db.close()

python批量连接mysql的更多相关文章

  1. 使用Python编程语言连接MySQL数据库代码

    使用Python编程语言连接MySQL数据库代码,跟大家分享一下: 前几天我用python操作了mysql的数据库,发现非常的有趣,而且python操作mysql的方法非常的简单和快速,所以我把代码分 ...

  2. 通过python代码连接MySQL以及插入和显示数据

    通过python代码连接MySQL以及插入和显示数据: 数据库huahui创建一个shibie的表,里面有两个varcahr(100)的字段,num和result. import pymysql im ...

  3. python如何连接mysql数据库

    先花点时间来说说一个程序怎么和数据库进行交互1.和数据库建立连接2.执行sql语句,接收返回值3.关闭数据库连接使用MySQLdb也要遵循上面的几步.让我们一步步的进行. 1.MySQL数据库要用My ...

  4. python MySQLdb连接mysql失败(转载)

    最近了解了一下django,数据库选用了mysql, 在连接数据库的过程中,遇到一点小问题,在这里记录一下,希望能够对遇到同样的问题的朋友有所帮助,少走一些弯路.关于django,想在这里也额外说一句 ...

  5. python 简单连接mysql数据库

    1. 安装pymysql 库 pip install pymysql 2.实例本地连接mysql库 #!/usr/bin/python # encoding: utf-8 ""&q ...

  6. 在python中连接mysql数据库,并进行增删改查

    数据库在开发过程中是最常见的,基本上在服务端的编程过程中都会使用到,mysql是较常见的一种数据库,这里介绍python如果连接到数据库中,并对数据库进行增删改查. 安装mysql的python扩展 ...

  7. python无法连接mysql,有个小坑,需要注意一下!

    尝试用python链接mysql数据库,按照教程里链接了小半夜,就是没有链接上,找了各种文章,最后发现是版本的问题,我想使用的模块是MySQLdb,刚刚去他们的官网看了一下,最近一次更新是2014年, ...

  8. Python如何连接Mysql及基本操作

    什么要做python连接mysql,一般是解决什么问题的 做自动化测试时候,注册了一个新用户,产生了多余的数据,下次同一个账号就无法注册了,这种情况怎么办呢?自动化测试都有数据准备和数据清理的操作,如 ...

  9. python MySQLdb连接mysql时报错

    故障现象: >>> import MySQLdb >>> conn = MySQLdb.connect(host=,charset="utf8" ...

随机推荐

  1. 4.3.6 对象的界定通过编写接口来访问带这类命名结构的表会出问题。如前所述,SQL Server的灵活性不应用作编写错误代码或创建问题对象的借口。 注意在使用Management Studio的脚本工具时,SQL Server会界定所有的对象。这不是因为这么做是必须的,也不是编写代码的最佳方式,而是因为在界定符中封装所有的对象,比编写脚本引擎来查找需要界定的对象更容易。

    如前所述,在创建对象时,最好避免使用内嵌的空格或保留字作为对象名,但设计人员可能并没有遵守这个最佳实践原则.例如,我当前使用的数据库中有一个审核表名为Transaction,但是Transaction ...

  2. sqlserver清除缓存(转载)

    sqlserver清除缓存,记录查询时间   1 2 3 4 5 6 7 8 9 10 11 12 --1. 将当前数据库的全部脏页写入磁盘.“脏页”是已输入缓存区高速缓存且已修改但尚未写入磁盘的数据 ...

  3. Jquery/js引入的button的onclik事件只触发一次

    目标描述 我要实现的是:通过监听button的click事件,从而通过ajax向servlet发送请求获取数据库中的数据,然后返回的页面,并要求局部刷新 一次页面的加载是html直接页面初始化本身的 ...

  4. mysql5.7.13.zip安装(windows)

    按照我之前安装5.6的安装方法(MySQL免安装版下载与配置)安装5.7的时候出现问题: mysql服务无法启动,服务没有报任何错误

  5. 根据python上下文管理,写一个在读文件内容前后自动打开关闭文件的程序

    利用上下文管理实现读f文件前后自动打开关闭文件#在本目录创建f文件,内容写monkey代码如下 import contextlib #导入模块1 @contextlib.contextmanager# ...

  6. SQLServer 学习笔记之超详细基础SQL语句 Part 10

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 9------------------- 删除约束的语法 ALTER T ...

  7. Flutter:修改TextField的高度,以及无边框圆角

    修改TextField的高度可以通过decoration: InputDecoration的contentPadding进行修改,代码如下 new TextField( decoration: Inp ...

  8. 大数据【四】MapReduce(单词计数;二次排序;计数器;join;分布式缓存)

       前言: 根据前面的几篇博客学习,现在可以进行MapReduce学习了.本篇博客首先阐述了MapReduce的概念及使用原理,其次直接从五个实验中实践学习(单词计数,二次排序,计数器,join,分 ...

  9. 字节顺序标记BOM

    最近,从numbers导出的csv文件,导入excel后,出现中文乱码问题.网上查询后,发现是numbers导出的csv默认是utf-8无BOM的,使用sublimText3打开,另存为utf-8wi ...

  10. 从零自学Java-2.初步理解Java程序使如何工作的

    1.学习Java应用程序是如何工作的 2.构成一个应用程序 3.向应用程序传递参数 4.学习Java程序是如何组织的 5.在应用程序中创建一个对象 程序Root:输出225的正平方根 package ...