python分割sql文件,,之前用joomla帮


之前用joomla帮一学校做了个网站,然后要部署到他们到服务器上,他们只提供了sftp和phpmyadmin的账号,上传网站文件倒是挺顺利的,但后来用phpmyadmin导入mysql数据就遇到问题了:由于他们设置的phpmyadmin最大只能导入2M的sql文件,如果太大会导致无法导入成功,但是我的sql文件有17M呀~~~~~~~~~

没得办法,只能分割sql文件了,初学python,于是就当练习,用python写了个分割sql文件的脚本:#由于导出的sql文件总共95张表,每张表前都有这段字符 -- -------------------------------------,于是就以这段字符作为判断标准,将每10张表写入一个文件中,这样单个文件导入就可以啦!!bubuko.com,布布扣#以下是python代码#!/usr/bin/python3.3import redef main(): #先得到要分割的文件的起始和结束位置所在行数并放入列表x中 count,total,j,l = 0, 0, 0, 0 x = [0,] fin = open(‘cdu.sql‘,‘r‘) for line in fin: total += 1 if re.search(‘-- -----*‘,line): #以此判断表的数量 count += 1 if count % 10 == 0: #每到10张表时将分割的行数写入x列表中 #print(count,total) x.append(total) x.append(len(open(‘cdu.sql‘).readlines())+1) #将最后一行也放入x中 for i in x: print(i,end = ‘ ‘) print() cnt=1 #读取x中的行数,起始和结束位置将文件内容复制到新文件中 for i,j in enumerate(open(‘cdu.sql‘,‘r‘)): if i<=x[cnt]: with open(‘%dcdu.sql‘%cnt,‘a+‘) as f: f.write(j) else: cnt+=1 print("wirte file"+str(cnt)) print("ok")if __name__==‘__main__‘:main()

python分割sql文件,布布扣,bubuko.com

python分割sql文件

评论关闭