利用python生成一个导出数据库的bat脚本文件的方法

 更新时间:2016年12月30日 09:27:55   投稿:jingxian  
下面小编就为大家带来一篇利用python生成一个导出数据库的bat脚本文件的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

实例如下:

# 环境: python3.x

def getExportDbSql(db, index):	

# 获取导出一个数据库实例的sql语句
	sql = 'mysqldump -u%s -p%s -h%s -P%d --default-character-set=utf8 --databases mu_ins_s%s > %s.s%d.mu_ins_%d.sql' %(db['user'], db['pwd'], db['host'], db['port'], index, db['server'], index, index)
	return sql


def createDbBackupFile(fname, dbList):	

# 生成数据库导出的语句保存到文件
	if not fname or not dbList:
		return False

	f = open(fname, 'w')
	if f:
		f.write('echo @off\n\n')
		for db in dbList:
			for index in db['indexList']:
				f.write('REM %s.s%d\n' %(db['server'], index))
				f.write('%s\n\n' %getExportDbSql(db, index))
			f.write('\n')

		f.close()
		return True

	return False


def initDb(user, pwd, host, port, server_name, indexList):	

# 生成db字典对象并返回
	db = {}
	db['user'] = user
	db['pwd'] = pwd
	db['host'] = host
	db['port'] = port
	db['server'] = server_name
	db['indexList'] = indexList

	return db


def displayDb(db):
	print('user =', db['user'])
	print('pwd =', db['pwd'])
	print('host =', db['host'])
	print('port =', db['port'])
	print('server =', db['server'])
	print('indexList =', db['indexList'])
	print('\n')

def displayList(list):
	for item in list:
		displayDb(item)

if __name__ == '__main__':
	db1 = initDb('root', '123456', '127.0.0.1', 3306, 'th1', [10000, 1, 3])
	db2 = initDb('root', '123456', '127.0.0.1', 3306, 'th2', [10000, 1])
	
	dbList = []
	dbList.append(db1)
	dbList.append(db2)

	#displayList(dbList)
	
	createDbBackupFile('export00.bat', dbList)

以上这篇利用python生成一个导出数据库的bat脚本文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用Python创建快捷方式管理应用

    使用Python创建快捷方式管理应用

    在Windows系统中,快速访问常用程序通常通过“开始菜单”中的“应用热门”功能实现,在这篇博客中,我将向你展示如何使用Python和wxPython创建一个GUI应用,帮助用户轻松将桌面上的快捷方式添加到Windows“开始菜单”的“应用热门”中,需要的朋友可以参考下
    2024-08-08
  • 基于python实现rpc远程过程调用

    基于python实现rpc远程过程调用

    本文主要介绍了基于python实现rpc远程过程调用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • ChatGLM-6B+LangChain环境部署与使用实战

    ChatGLM-6B+LangChain环境部署与使用实战

    这篇文章主要介绍了ChatGLM-6B+LangChain环境部署与使用方法,结合实例形式详细分析了ChatGLM-6B+LangChain环境部署相关步骤、实现方法与相关注意事项,需要的朋友可以参考下
    2023-07-07
  • scrapy处理python爬虫调度详解

    scrapy处理python爬虫调度详解

    在本篇文章里小编给大家整理的是一篇关于scrapy处理python爬虫调度的相关内容,有兴趣的朋友们学习下。
    2020-11-11
  • Python 调用GPT-3 API实现过程详解

    Python 调用GPT-3 API实现过程详解

    这篇文章主要为大家介绍了Python 调用GPT-3 API实现过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • OpenCV中Canny边缘检测的实现

    OpenCV中Canny边缘检测的实现

    本文主要介绍了OpenCV中Canny边缘检测的实现,边缘检测一般是识别目标图像中亮度变化明显的像素点,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 基于Python实现随机点名系统的示例代码

    基于Python实现随机点名系统的示例代码

    在某些难以抉择得时候,我们经常要用外力来帮助我们做出选择,比如,梁山出征方腊前沙场点兵,挑选先锋的场景。所以本文就来用Python做个随机点名系统吧,需要的可以参考一下
    2023-04-04
  • python函数存储在模块的优点及用法总结

    python函数存储在模块的优点及用法总结

    在本篇文章里小编给大家整理了一篇关于python函数存储在模块的优点及用法相关内容,有兴趣的朋友们可以跟着学习下。
    2021-10-10
  • 使用python实现knn算法

    使用python实现knn算法

    这篇文章主要为大家详细介绍了使用python实现knn算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • Python pandas之求和运算和非空值个数统计

    Python pandas之求和运算和非空值个数统计

    数据处理的过程中经常会遇到判断空值和求和运算的需求,所以下面这篇文章主要给大家介绍了关于Python pandas之求和运算和非空值个数统计的相关资料,需要的朋友可以参考下
    2021-08-08

最新评论