今天简单的写了个python的mysql备份脚本,其实也不是很难呀。比shell简洁了很多! 开整: 注释都用英文写了,有些英语基础的朋友应该都可以看得懂了! #!.../usr/bin/env python #backup the gtshop #author:ley #encoding=utf8 #date:2015-06 import os,sys,datetime... 'root' #mysqlbackup password Password = 'root' #mysqlbackup command Mysqlcommand = '/usr/local/mysql... print 'sucessful gzip gtshop' else: print 'gzip failed' 执行结果: [root@localhost script]# python... mysql_backup.py Sucessful backup gtshop sucessful gzip gtshop 最后还可以根据需求,添加到任务计划中!
/usr/bin/env python #-*- coding: UTF-8 -*- from __future__ import print_function from mysql import connector...__class__,attrs) def __del__(self): """在python 进行垃圾回收时关闭连接""" if self.cnx !...__str__()+'\n') return -1 #以下类用于检测MySQL数据库的正常与否 class IsAlive(MonitorItem): """监控MySQL数据库是否正常运行...,{正常:数据目录位置,异常:-1}""" variable_name="datadir" class MysqlVersion(MysqlVariable): """监控MySQL版本号,{正常...:版本号,异常:-1}""" variable_name="version" class MysqlServerId(MysqlVariable): """监控MySQL的server_id"""
/usr/bin/env python # -*- coding: utf-8 -*- import os import time from datetime import datetime # 数据库连接信息
今天给大家介绍一种使用python脚本在mysql中实现类似oracle中flushback table的闪回功能,相比于传统的全备+增备,本方法更为快速、简单。...2.闪回原理 原理:调用mysql_rollback.py(脚本在我的另一篇blog 闪回脚本:mysql_rollback.py)对rows格式的binlog进行逆向操作,delete反向生成insert...3.说明 0、需安装python及MySQLdb模块 1、binlog的格式必须为row 2、要恢复的表操作前后表结构没有发生变更,否则脚本无法解析 3、只生成DML(insert/update/delete...mysql-bin.000007 -rw-rw---- 1 mysql mysql 1973 May 3 13:28 mysql-bin.000008 -rw-rw---- 1 mysql mysql...选取2426和2604作为分析binlog的起始位置 SZD-L0087668:gzz3306:Master > python2.7 mysql_rollback.py -f mysql-bin.000009
Python脚本自动备份Mysql数据库,此脚本会备份所有数据库,并按库名创建文件夹保存,只保留最近7天的备份数据。可自定义修改。支持Python2,、Python3。...-y # 或者 yum install python3-setuptools -y easy_install pip # 或者 easy_install3 pip # 安装PyMySQL pip install...PyMySQL 放入脚本文件,并给权限 执行脚本 /data/shell/mysql_back.py 添加Linux定时任务命令 crontab -e #进去添加下边代码 */15 * * * *.../data/shell/mysql_back.py > /data/shell/logs.log 2>&1 & #定时时间格式 脚本路径/脚本 #:wq保存退出即可 mysql_back.py脚本文件.../usr/bin/python # -*- coding: UTF-8 -*- # 先安装PyMySQL模块 pip install PyMySQL # 忽略产生的警告是信息 import warnings
查询脚本db_test.py,邮件脚本sendEmail.py . . ---- 格式如下: mysqldb_message.txt host:192.168.0.32 user:test passwd...查询脚本db_test.py: 需要注意的是: . 1、由于Python3.6,pymongo模块中的MongoClient函数连接mongo数据库时,超时参数connecttimeOutMS并不会生效...此脚本在windows环境下运行会报错。 #!.../usr/bin/env python #encoding: utf-8 #author: 847907826@qq.com #注意,需要在Linux环境下Python3以上版本执行,且需要安装pymysql...], auth_db[index]) index = index + 1 if __name__ == '__main__': main() 发送邮件脚本
# 1.安装脚本 #!...$user/mysql/ /usr/local/mysql mv /usr/bin/mysql /usr/bin/mysql.bk$(date '+%Y%m%d%H%M%S') &> /dev/...-u${mysql_user} -p"${mysql_passwd}" -e "${create_db_sql0}" 2>/dev/null mysql -u${mysql_user} -p"...${mysql_passwd}" -e "${create_db_sql1}" 2>/dev/null mysql -u${mysql_user} -p"${mysql_passwd}" -e...-u${mysql_user} -p"${mysql_passwd}" /dev/null echo "--------------------
/mysql/bin/mysql -h${hostip} -P${port} -u${user} -p${passwd} -e "$cmd1"| grep ':' | grep -v 'Variable_name.../mysql/bin/mysql -h${hostip} -P${port} -u${user} -p${passwd} -e "$cmd5"| grep ':' | grep -A1 'log_error..._$(date +%Y_%m_%d).log /home/mysql/mysql/bin/mysql -h${hostip} -P${port} -u${user} -p${passwd} -e "$.../mysql/mysql/bin/mysql -h${hostip} -P${port} -u${user} -p${passwd} -e "$cmd4" | grep -Po '(?...:.*)') Slave_SQL_Running_S=$(/home/mysql/mysql/bin/mysql -h${hostip} -P${port} -u${user} -p${passwd}
/bin/bash # 以下配置信息请自己修改 mysql_user="root" #MySQL备份用户 mysql_password="summer123" #MySQL备份用户的密码 mysql_host...#欢迎语 # 判断MYSQL是否启动,mysql没有启动则备份退出 mysql_ps=`ps -ef |grep mysql |wc -l` mysql_listen=`netstat -an |grep...LISTEN |grep $mysql_port|wc -l` if [ [$mysql_ps == 0] -o [$mysql_listen == 0] ]; then echo "ERROR:MySQL...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$mysql_user...`mkdir -p $backup_dir` `/home/summer/mysql/bin/mysqldump -h$mysql_host -P$mysql_port -u$mysql_user -p
常用功能脚本 1.导出整个数据库 mysqldump -u 用户名 -p –default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqldump...数据库控制台,如mysql -u root -p mysql>use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source wcnc_db.sql...p -D dbname < filename.sql 启动与退出 1、进入MySQL: 启动MySQL Command Line Client(MySQL的DOS界面),直接输入安装时的密码即可。...此时的提示符是:mysql> 2、退出MySQL: quit或exit 库操作 1、创建数据库 命令:create database 例如:建立一个名为sqlroad的数据库 mysql>...; 9、导入.sql文件命令 (例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql.sql; 10、删除表 mysql>
/bin/sh #设置用户、密码和主机IP username=用户名 password=密码 hostip=localhost dblists=`/usr/local/mysql/bin.../mysql -u$username -p$password -h$hostip -e"SHOW DATABASES;"` denylists=(Database mysql test information_schema.../bin/mysql -u$username -p$password -h$hostip $dbname -e"SHOW MASTER STATUS;" >>$LogFile #开始备份数据库.../usr/local/mysql/bin/mysqldump -u$username -p$password -h$hostip $dbname -e --max_allowed_packet=10485760...--net_buffer_length=163840 | gzip>$backupdir echo " " >> $LogFile /usr/local/mysql/bin/mysql -u$
一、脚本 环境:Centos 6.3 Python 2.6.6 脚本如下: #!.../usr/bin/env python # author: kuangl # -*- coding: utf-8 -*- # filename: mysql_back_zhubao.py import...ip="192.168.1.16" jv_test01_user="kuangl" jv_test01_port='61239' jv_test01_dir="/home/kuangl/zhubao_mysql.../mysql_back_zhubao.py kaixin is backup successfully!
案例需求 写一个mysql binlog备份脚本,要求每天0点0分,计算机自动备份前一天的binlog日志,打包后发送给备份服务器。...脚本应用场景: 文件备份 解决问题 日常文件备份 日常数据备份 脚本思路 1、确定binlog的位置及备份时间间隔 每天 当前要备份的binlog是谁 .../bin/bash #Description: #Author: www.zutuanxue.com #Created Time: #将mysql的binlog日志备份到备份服务器 ######...##variables db_user='root' db_password='' log='/var/log/mysql_backup.log' ###main #获得信息 binlog_dir...='/var/lib/mysql' current_binlog=`mysql -u $db_user -e "show master status"|egrep "binlog.
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"` tar_time...=`date +%F --date="-1 day"` currentHour=$(date +%H) port=3306 backdir=/data/backup tardir='/data/mysql_backup...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir...backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2" ];then tar zcf ${tardir}/mysql_bckup
数据同步脚本 1 mysqldump -h[remoteHost] -u[username] -p[password] -P[port] --databases [databasename1] [databasename2...] > DB_MKT_2020-06-29.sql 2 echo "备份完成"; 3 mysql -u[root] -p[123456] -h[localhost] < DB_MKT_2020-06-29...'QRTZ_FIRED_TRIGGERS', Error_code: 1032; handler error HA_ERR_KEY_NOT_FOUND; the event's master log mysql_bin
创建一个脚本dbbackup.sh然后内容如下: #!...data date=`date -I`; #取出当前的日期 /opt/lampp/bin/mysqldump -u用户名 -p密码 数据库> 备份文件名前缀_$date.sql; #导出数据库为sql脚本.../bin/tar zcvhf 备份文件名前缀_$date.tar.gz 备份文件名前缀_$date.sql; #压缩sql脚本 rm 备份文件名前缀_$date.sql #删除sql文件 现在我们将这个脚本添加到定时任务中去
环境描述 系统版本: CentOS 7.2 amd64 mysql版本: MySql-5.6.25 脚本依赖: 需要联网 yum 安装 cmake、gcc 等工具。 1....sync_binlog = 1 expire_logs_days = 15 [mysqldump] quick max_allowed_packet = 32M 操作步骤 ---- 1. shell脚本...# 使用脚本完成,mysql 编译、配置、安装步骤。...执行脚本 bash mysql-server.sh # 耐心等待, 笔者2cpu/4GB虚拟机编译时间大约20分钟左右。 3. 启动服务 /etc/init.d/mysqld start 4....验证 mysql mysql -u root -p Enter password: Welcome to the MySQL monitor.
1、分库备份 !/bin/bash image.png 2、分库分表备份 !/bin/sh image.png [ ! -d $MYDIR ] && mkd...
/bin/sh #mysql_backup begintime=`date +"%Y-%m-%d_%H-%M-%S"` format_time=`date +"%Y-%m-%d_%H-%M-%S"...`date +%F --date="-1 day"` currentHour=$(date +%H) port=3306 backdir=/data/backup tardir='/data/mysql_backup...' file_cnf=/etc/my.cnf user_name=root passwd='123456' sock=/data/mysqldata/mysql.sock out_log=$backdir...backdir else #判断昨日是否备份,有则打包压缩后删除之前备份的目录 if [ -d "$backdir/rec2" ];then tar zcf ${tardir}/mysql_bckup
1、 !/bin/bash image.png 2、 !/bin/bash image.png 3、 📷 image.png 4、 📷 image.png
领取专属 10元无门槛券
手把手带您无忧上云