Python查询SQLserver数据库备份(抛砖引玉)

 

通过python pymssql直接访问SQLserver数据库,查找其数据库mode,这个脚本具有很强的抛砖引玉特性:

1.可以巡检多台多数据库服务器

2.query内容可以多样化,譬如查询死锁、连接数等

当然还有更多需要优化的地方:

1.输出内容未优化

2.未捕获异常

3.未多线程化

 

 

#!/usr/bin/python3
#coding=utf-8

import pymssql

odbj=[("10.1.10.67","sa","r2hat","master"),("10.1.10.9","s3y3zh","r232hat","master")]#相关信息有做处理
for (h,u,p,d) in odbj:
    conn = pymssql.connect(host=h,user=u,password=p, database=d)
    cur = conn.cursor()
	query="select name, database_id, recovery_model_desc from sys.databases"
	query1="SELECT database_name,type,MAX(backup_finish_date) AS backup_finish_date  FROM msdb.dbo.backupset GROUP BY database_name,type ORDER BY database_name,type"
	cur.execute(query1)
    conn.commit
	rows = cur.fetchall()
	for (s,s1,s2) in rows:
	   print ("IP:%s,DBname:%s,DBmode:%s,DBbackuptime:%s"%(h,s,s1,s2))
cur.close()
conn.close()

  

  输出结果:IP 有去掉

<built-in method commit of pymssql.Connection object at 0x7f35e7c17388>
DBname:MC,DBmode:D,DBbackuptime:2017-03-09 21:00:44
DBname:test1,DBmode:D,DBbackuptime:2017-04-15 17:05:54
DBname:test1,DBmode:L,DBbackuptime:2017-04-15 17:06:42
DBname:tnfc270,DBmode:D,DBbackuptime:2017-04-22 13:32:37
DBname:ufmobile,DBmode:D,DBbackuptime:2016-10-16 20:00:19
<built-in method commit of pymssql.Connection object at 0x7f35e7c17788> DBname:CB_ZJ,DBmode:D,DBbackuptime:2013-03-26 18:17:14 DBname:ImageDB_ZJ,DBmode:D,DBbackuptime:2016-12-09 23:02:48 DBname:Npmzj20130603,DBmode:D,DBbackuptime:2013-06-04 17:23:33 DBname:NPMZJ20130705,DBmode:D,DBbackuptime:2013-07-06 14:39:54 DBname:PMHS,DBmode:D,DBbackuptime:2016-12-11 18:26:54 DBname:PMTG,DBmode:D,DBbackuptime:2016-12-09 23:03:32 DBname:pmtg_new,DBmode:D,DBbackuptime:2013-08-09 17:51:04 DBname:PMZJ,DBmode:D,DBbackuptime:2016-12-09 23:17:59 DBname:PMZJ,DBmode:L,DBbackuptime:2014-08-18 10:24:13 DBname:UserDB,DBmode:D,DBbackuptime:2017-03-20 22:38:03

  

 

转载于:https://www.cnblogs.com/joewan/p/6805781.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值