`

Python进行MySQL数据备份:数据查询和添加

 
阅读更多

 

运行前,需要安装MySQLdb模块!!!

sudo yum install MySQL-python

 

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import MySQLdb
import datetime



def backYestoday():
    today = datetime.date.today()
    yesterday = today - datetime.timedelta(days=1)

    # 打开数据库连接

    db_mat = MySQLdb.connect("hostname", "root", "password", "db", charset='utf8')

    # 使用cursor()方法获取操作游标
    cursor = db_mat.cursor()

    # 使用execute方法执行SQL语句
    sql_select = "select id, created, agency_name, app_name, match_type, campaign_id, campaign_name, country_name, currency_code, is_view_through, site_name, site_id, publisher_name, publisher_id, existing_user, region_name, session_datetime, session_ip, impression_created, stat_click_id, stat_impression_id, payout, referral_source, referral_url, ip, revenue, revenue_usd, status, status_code, tracking_id, os_id, wurfl_brand_name, debug_mode, device_brand, device_carrier, device_id, device_ip, device_model, device_type, os_version, google_aid, ios_ifa, ios_ifv, language, mac_address, odin, sdk, sdk_version, test_profile, unid, user_agent, windows_aid, publisher_sub_ad_name, publisher_sub_adgroup_name, publisher_sub_campaign_name, publisher_sub_campaign_id, publisher_sub_campaign_ref, publisher_sub_keyword_name, publisher_sub_placement_name, publisher_sub_placement_id, publisher_sub_publisher_id, publisher_sub_publisher_name, publisher_sub_site_name, publisher_ref_id, publisher_sub1, advertiser_ref_id, advertiser_sub_ad_name, advertiser_sub_adgroup_name, advertiser_sub_adgroup_id, advertiser_sub_ad_id, advertiser_sub_campaign_name, advertiser_sub_campaign_id, advertiser_sub_campaign_ref, advertiser_sub_keyword_name, advertiser_sub_publisher_name, advertiser_sub_publisher_id, advertiser_sub_placement_name, advertiser_sub_placement_id, advertiser_sub_site_name, user_id, currency_rate, ip_from, ip_to, os_jailbroke FROM install where created >= '"+str(yesterday)+" 00:00:00' and created <='"+str(yesterday)+" 23:59:59'"
    cursor.execute(sql_select)
    result = cursor.fetchall()
    db_mat.close()

    # 插入数据
    db_advertisement = MySQLdb.connect("127.0.0.1", "root", "password", "db",charset='utf8')

    # 使用cursor()方法获取操作游标
    cursor = db_advertisement.cursor()

    # SQL 插入语句
    sql_insert = "insert into install(id, created, agency_name, app_name, match_type, campaign_id, campaign_name, country_name, currency_code, is_view_through, site_name, site_id, publisher_name, publisher_id, existing_user, region_name, session_datetime, session_ip, impression_created, stat_click_id, stat_impression_id, payout, referral_source, referral_url, ip, revenue, revenue_usd, status, status_code, tracking_id, os_id, wurfl_brand_name, debug_mode, device_brand, device_carrier, device_id, device_ip, device_model, device_type, os_version, google_aid, ios_ifa, ios_ifv, language, mac_address, odin, sdk, sdk_version, test_profile, unid, user_agent, windows_aid, publisher_sub_ad_name, publisher_sub_adgroup_name, publisher_sub_campaign_name, publisher_sub_campaign_id, publisher_sub_campaign_ref, publisher_sub_keyword_name, publisher_sub_placement_name, publisher_sub_placement_id, publisher_sub_publisher_id, publisher_sub_publisher_name, publisher_sub_site_name, publisher_ref_id, publisher_sub1, advertiser_ref_id, advertiser_sub_ad_name, advertiser_sub_adgroup_name, advertiser_sub_adgroup_id, advertiser_sub_ad_id, advertiser_sub_campaign_name, advertiser_sub_campaign_id, advertiser_sub_campaign_ref, advertiser_sub_keyword_name, advertiser_sub_publisher_name, advertiser_sub_publisher_id, advertiser_sub_placement_name, advertiser_sub_placement_id, advertiser_sub_site_name, user_id, currency_rate, ip_from, ip_to, os_jailbroke) values(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
    try:
        # 执行sql语句
        cursor.executemany(sql_insert, result)
        # 提交到数据库执行
        db_advertisement.commit()
    except:
        db_advertisement.rollback()

    # 关闭数据库连接
    db_advertisement.close()

backYestoday()

 

 

分享到:
评论

相关推荐

    MySQL 5.1官方简体中文参考手册

    目录 前言 1. 一般信息 1.1. 关于本手册 ...1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 ...

    python毕业设计基于flask+mysql+bootstrap+echarts的鱼村小馆订餐后台管理系统项目源码+数据库

    员工管理:管理鱼村小馆的员工信息,包括员工的添加、删除、修改和查询等操作。可以设置员工的工作岗位和权限等。 数据备份与恢复:进行数据库的备份和恢复操作,确保数据安全。用户管理:管理后台用户的登录和权限...

    MySQL 5.1中文手冊

    添加和删除InnoDB数据和日志文件 15.2.8. InnoDB数据库的备份和恢复 15.2.9. 将InnoDB数据库移到另一台机器上 15.2.10. InnoDB事务模型和锁定 15.2.11. InnoDB性能调节提示 15.2.12. 多版本的实施 15.2.13. 表和...

    MySQL 5.1参考手册

    添加和删除InnoDB数据和日志文件 15.2.8. InnoDB数据库的备份和恢复 15.2.9. 将InnoDB数据库移到另一台机器上 15.2.10. InnoDB事务模型和锁定 15.2.11. InnoDB性能调节提示 15.2.12. 多版本的实施 15.2.13. 表和...

    MySQL 5.1参考手册中文版

    1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 1.7.1. MySQL邮件列表 1.7.2. IRC(在线聊天...

    MySQL 5.1参考手册 (中文版)

    添加和删除InnoDB数据和日志文件 15.2.8. InnoDB数据库的备份和恢复 15.2.9. 将InnoDB数据库移到另一台机器上 15.2.10. InnoDB事务模型和锁定 15.2.11. InnoDB性能调节提示 15.2.12. 多版本的实施 15.2.13. 表和...

    MYSQL中文手册

    1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 1.7.1. MySQL邮件列表 1.7.2. IRC(在线...

    mysql5.1中文手册

    MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 1.7.1. MySQL邮件列表 1.7.2. IRC...

    老男孩python 四期

    2、项目实战四、通过Python脚本连接MYSQL数据库实现数据自动入库、更新 3、项目实战五、开发C/S架构备份服务器,实现远程备份 ※使用PYTHON SOCKET模块实现文件的远程压缩传输 二、Python中高级课程列表 ...

    mysql官方中文参考手册

    添加和删除InnoDB数据和日志文件 15.2.8. InnoDB数据库的备份和恢复 15.2.9. 将InnoDB数据库移到另一台机器上 15.2.10. InnoDB事务模型和锁定 15.2.11. InnoDB性能调节提示 15.2.12. 多版本的实施 15.2.13. 表和...

    拼多多分类数据大全,商品类目明细,适合中小型商城数据库导入行业分类sql数据

    全行业分类数据包本文件为...行业分类sql数据利用Python爬虫完美采集拼多多商品数据。 使用前先备份网站数据,万一出错可以还原。根据自己网站安装的版本,转换成utf8或者gbk数据,导入MySQL。数据seo信息请自行添加。

    MySQL5.1参考手册官方简体中文版

    1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 1.7.1. MySQL邮件列表 1.7.2. IRC(在线聊天系统...

    Python Cookbook

    8.10 在Python 2.4中使用doctest和unittest 331 8.11 在单元测试中检查区间 334 第9章 进程、线程和同步 336 引言 336 9.1 同步对象中的所有方法 339 9.2 终止线程 342 9.3 将Queue.Queue用作优先级队列 344 ...

    recovery.py

    一键还原 xtrabackup mysql备份数据python脚本,可定制修改添加更多功能!!!需要和备份脚本配套使用

    教务系统设计数据库设计.doc

    管理员可以使用此系统添加相关 用户信息、备份数据等。因此本系统主要实现学生功能、教师功能、管理员功能。 学生功能:个人信息查询、修改;在线选课;密码修改;留言、查看留言等。 教师功能:教学实施计划查询;...

    教务系统设计数据库设计(1).doc

    管理员可以使用此系统添加相关 用户信息、备份数据等。因此本系统主要实现学生功能、教师功能、管理员功能。 学生功能:个人信息查询、修改;在线选课;密码修改;留言、查看留言等。 教师功能:教学实施计划查询;...

    virtualhosts

    #Managing account information 使用你喜欢的 MySQL 客户端在 DB 中进行更改,然后使用 python update.py应用更改。 具体来说, update.py执行(对于每个帐户, update.py顺序): 生成 FTP 和 SQL 密码,如

Global site tag (gtag.js) - Google Analytics