python批量连接mysql

注释:脚本(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]:

脚本内容如下:

#encoding:utf-8
import sys
import os
import MySQLdb

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 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 row
#          print "Data: %s " % row
   db.close()

时间: 2024-11-03 22:39:14

python批量连接mysql的相关文章

python MySQLdb连接mysql失败

Traceback (most recent call last):   File "./test_db.py", line 12, in < module>     db='mysite')   File "build/bdist.linux-x86_64/egg/MySQLdb/__init__.py", line 81, in Connect   File "build/bdist.linux-x86_64/egg/MySQLdb/con

python MySQLdb连接mysql失败(转载)

最近了解了一下django,数据库选用了mysql, 在连接数据库的过程中,遇到一点小问题,在这里记录一下,希望能够对遇到同样的问题的朋友有所帮助,少走一些弯路.关于django,想在这里也额外说一句.django是很优秀的基于python的web开发框架,对于有python基础的后台程序员,如果有要做一些前台的需求,强烈推荐django.下面言归正传. 1. 问题的现象 下面是连接数据库的代码,用的是python的MySQLdb模块: 1 2 3 4 5 db = MySQLdb.connec

python 简单连接mysql数据库

1. 安装pymysql 库 pip install pymysql 2.实例本地连接mysql库 #!/usr/bin/python # encoding: utf-8 """ @version: v1.0 @author: dabao @license: Apache Licence @contact: [email protected] @site: http://www.cnblogs.com/EWWE/ @software: PyCharm Community Ed

在python中连接mysql和查询数据

1 连接mysql import pymysql.cursors# 导入pymysql包# 连接数据库 connection = pymysql.connect(host = "localhost", #host是要连接的数据库的IP地址 user = "eric", #user是登陆的账号名,root是最高权限账号 password = "123456", #user账号的密码 db = "45", #需要连接的数据库 ch

python MySQLdb连接mysql时报错

故障现象: >>> import MySQLdb >>> conn = MySQLdb.connect(host="localhost",user="root",passwd="tiange1003",db="tian",port=3306,charset="utf8") Traceback (most recent call last): File "<

Python批量删除mysql中千万级大量数据

场景描述 线上mysql数据库里面有张表保存有每天的统计结果,每天有1千多万条,这是我们意想不到的,统计结果咋有这么多.运维找过来,磁盘占了200G,最后问了运营,可以只保留最近3天的,前面的数据,只能删了.删,怎么删? 因为这是线上数据库,里面存放有很多其它数据表,如果直接删除这张表的数据,肯定不行,可能会对其它表有影响.尝试每次只删除一天的数据,还是卡顿的厉害,没办法,写个Python脚本批量删除吧. 具体思路是: 每次只删除一天的数据: 删除一天的数据,每次删除50000条: 一天的数据删

Python写入连接mysql失败

执行如下连接数据库的语句: engine = create_engine('mysql://root:[email protected]/stock?charset=utf8') 报错如下: ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/_mysql.cpython-35m-darwin.so, 2): Library not loaded: li

python下连接mysql的错误 错误码 【10061】

<span style="font-size:18px;"># encoding: utf-8 #!/usr/bin/python import MySQLdb # 打开数据库连接 db = MySQLdb.connect("localhost","root","123456","test" )</span> 显示错误: OperationalError: (2003, "

python第一次连接mysql数据库

文件结构图 源码 jing_dong.py 1 # coding:utf-8 2 from mysql_connect import MySql 3 4 5 class JD(object): 6 def __init__(self): 7 self.mysql = MySql('localhost', 3306, 'root', '', 'ksoa_tdyy_test', 'utf8') 8 9 def show_items_info(self): 10 """查询商品信息