检查数据不一致脚本
import MySQLdb
max_id=250000
sql_prefix="select crc32(group_concat(concat(id,k,c,pad))) from sbtest1 where id>= %s and id < %s"
xhdb1 = MySQLdb.connect(host="*", # your host, usually localhost
user="sbtest", # your username
passwd="*", # your password
db="sbtest",
port=5002) # name of the data base
ypdb1 = MySQLdb.connect(host="*", # your host, usually localhost
user="sbtest", # your username
passwd="*", # your password
db="sbtest",
port=5002) # name of the data base
i = 1
increment = 1000
xhdb1cur = xhdb1.cursor()
xhdb1cur.execute("set session group_concat_max_len =18446744073709551615")
ypdb1cur = ypdb1.cursor()
ypdb1cur.execute("set session group_concat_max_len =18446744073709551615")
while True:
sql = sql_prefix % (str(i) , str(i + increment))
xhdb1cur.execute(sql)
ypdb1cur.execute(sql)
for xhdb1row in xhdb1cur.fetchall():
break
for ypdb1row in ypdb1cur.fetchall():
break
if xhdb1row[0] != ypdb1row[0]:
print "find different between %s and %s " % (str(i) , str(i+increment))
increment = increment/10
continue
i += increment
if i > max_id:
break
if increment < 1:
break
MySQL限时解答,24小时内友哥专业解答
http://www.yougemysqldba.com
如有进一步需要请联系微信onesoft007
微博账号@友哥一指
http://www.yougemysqldba.com
如有进一步需要请联系微信onesoft007
微博账号@友哥一指
浙公网安备 33010602011771号