mysql数据库相互备份_MySQL的本地备份和双机相互备份脚本

先修改脚本进行必要的配置,然后以root用户执行.

1. 第一执行远程备份时先用 first参数.

2. 本地备份用local参数

3. 远程备份不用参数

注意:需要在另一主机上的Mysql用户用添加用户..

需要配置的地方:

# define host and mysql password

REMOTE_HOST="" #远程主机名或IP

REMOTE_PASSWORD="" #远程主机的mysql中的root@本地主机 密码.

# define database path

DB_PATH="/var/lib/mysql" #本地mysql数据库路径

LOCAL_PASSWORD="" #本地mysql root用户密码

DB_BACKUP_PATH="/root/db_bk" #本地备份时数据保存的路径

NO_BACKUP_DB="" 设置本地数据库中不想备份的数据库名,用空格隔开

直接下载

#!/bin/sh

# mysqldump_all.sh

# this scripts is used to backup MySQL database bettwen tow MySQL SERVER!

# define host and mysql password

REMOTE_HOST=""

REMOTE_PASSWORD=""

# define database path

DB_PATH="/var/lib/mysql"

LOCAL_PASSWORD=""

DB_BACKUP_PATH="/root/db_bk"

# define which database no back up, write db anme escap whit space!

# example;

# NO_BACKUP_DB="yns test ps_note"

# this said that if db name is "yns" or "test" or "ps_note", then not backup them!

NO_BACKUP_DB=""

# get the database name and process one by one

echo "Start to Backup...";

#ls /var/lib/mysql > /tmp/mydb.all

if [ "$1" != "help" ]; then

for db in `ls $DB_PATH`; do

if_backup="1"

if [ -d $DB_PATH/$db ] ; then

for noBackDB in $NO_BACKUP_DB ; do

if ( test "$db" = "$noBackDB" ); then

#echo -n "...";

if_backup="";

fi

done

if [ $if_backup ]; then

case "$1" in

first)

echo -n "Crate db [ $db ] on $REMOTE_HOST first!"

result=`mysqladmin -h $REMOTE_HOST --password=$REMOTE_PASSWORD create $db`

if [ ! $result ]; then

echo "...Done!";

else

echo "...Fialed! check your configure plz!";

echo "Remote host said: $result";

exit

fi

;;

local)

# back up to localhost dir.

if [ ! -d $DB_BACKUP_PATH ]; then

mkdir $DB_BACKUP_PATH

fi

echo -n "[ $db ]....Backup to local$DB_BACKUP_PATH with gzip";

if [ -e "$DB_BACKUP_PATH/$db.gz" ]; then

mv $DB_BACKUP_PATH/$db.gz $DB_BACKUP_PATH/$db.1.gz;

fi

mysqldump --password=Walte#Ming $db | gzip > $DB_BACKUP_PATH/$db.gz

echo "...[OK]"

;;

*)

# Do common Backup!

echo -n "[ $db ]...Do Backup! ====>> $REMOTE_HOST/$db";

mysqldump --add-drop-table $db --password=$LOCAL_PASSWORD | mysql -h $REMOTE_HOST --password=$REMOTE_PASSWORD $db

echo "....[OK]";

esac

else

echo "[ $db ]";

echo "***This database set to Not backup!...Operation CANCELED!";

fi

else

echo "[ $db ]";

echo "***Warning! Not a DataBbase. Backup Canceled***";

fi

done

else

echo "Usage: mysqldupm_all.sh [firs|local|help]";

echo "Some question ask for href="mailto:walteyh@sohu.com";">walteyh@sohu.com";

fi

# Ended all backup opretion!

echo "";

echo "Note: if there is come wrong message white MySQL, you should check yourconfigure first!";

exit

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360235.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot和Swagger UI

我已经一年没有从头开始开发Spring Web应用程序了,如果我不参加QA自动化工程师的培训,那么这段时间甚至会更长。 由于这个原因,我开发了一个示例REST应用程序。 除了Swagger,一切对我来说都很熟悉。 因此,我将描述我在…

mysql5.7.22打不开_windows下mysql-5.7.22-winx64突然启动不了,报错Could not open log file

本文摘自classinstance.cn。windows下mysql-5.7.22-winx64突然启动不了,感觉启动几秒钟后就自己关闭了,看了下启动日志:2019-08-25T10:57:08.389404Z 0 [Warning] option wait_timeout: unsigned value 31536000 adjusted to 21474832019-08-…

HDU1530 最大流问题

第一次写Dinic 然后贴一下 最基础的网络流问题 嘎嘎: #include <iostream> #include<cstdio> #include<string.h> #include<queue> using namespace std; const int M205; __int64 map[M][M]; int n,m,dist[M]; queue<int>q; void readdate() {_…

把python37添加到环境变量配置_关于在win 10上成功创建一个Django项目时遇到django-admin的手动配置环境变量问题。...

前言初学Python Web 在创建第一个Djang项目的时候出现了很多的问题&#xff0c;今天和大家分享并记录一下这次艰难的历程&#xff01;一、官网下载Python以及安装Django1、Python的下载安装链接&#xff1a;大家最好使用谷歌浏览器&#xff0c;因为翻译的很到位(大家下载最新版…

在Ant中显示路径

在博客文章Java and Ant Properties Refresher和Ant <echoproperties /> Task中 &#xff0c;我写了一篇关于如何了解Ant构建如何看到属性的文章&#xff0c;这有助于更好地理解构建。 通常情况下&#xff0c;在构建过程中看到构建中使用的各种路径也很有价值&#xff0c…

如何删除数据库中的所有用户表(表与表之间有外键关系)

1、由表名求字段名 create proc up_008(table varchar(20)) as begin declare sql varchar(99) select sql\select name from syscolumns where idobject_id(\ select sqlsql\\\\table\\\\\)\ --select sql exec(SQL) end exec up_008 a_idx2 2、编程删…

Azure开发者任务之一:解决Azure Storage Emulator初始化失败

初学Windows Azure&#xff1a; 我打算开始学习Windows Azure。我安装了Azure SDK&#xff0c;然后在“Cloud”标签下选择Windows Azure模板&#xff0c;创建了一个项目&#xff0c;然后又创建了一个Web角色。 在aspx文件上&#xff0c;我只添加了一个标签&#xff0c;但是当我…

关于Java里如何跳出一个多重循环

一般我们要跳出一个循环&#xff0c;用break就OK了&#xff0c;比如&#xff1a; 1 for(int i1;i<5;i){ 2   if&#xff08;条件&#xff09; 3     break&#xff1b; 4   //一些代码 5 } 但是如果这时候&#xff0c;在这一层循环外面还有一层循环的话&#…

CCRC认证对企业的作用?

CCRC认证&#xff08;中国网络安全审查认证&#xff09;是针对网络产品和服务的安全审查制度&#xff0c;它对企业的作用主要体现在以下几个方面&#xff1a; 1. 提升产品安全性 CCRC认证要求企业对其网络产品和服务进行全面的安全审查&#xff0c;确保符合国家网络安全标准和…

java运行python3_python写脚本并用java调用python(三)

1)编写mytest.py完成一个简单加法计算# coding:utf8#def 表示一个方法 adderdef adder(a, b):return ab#这里执行adder方法并打印出结果print adder(1,2)2)运行以上脚本方式如图12 3 打印成功&#xff01;3)java调用python脚本的两种方式Process process Runtime.getRuntime(…

Hibernate教程– ULTIMATE指南(PDF下载)

编者注&#xff1a;在本文中&#xff0c;我们提供了全面的Hibernate教程。 Hibernate ORM&#xff08;简称Hibernate&#xff09;是一个对象关系映射框架&#xff0c;它有助于将面向对象的域模型转换为传统的关系数据库。 Hibernate通过用高级对象处理功能代替直接与持久性相关…

mysql单源多表同步单库单表_MySQL主从复制单表或者多表

MySQL数据库安装不过多的介绍了&#xff1a;必须保证2个数据库的版本一致。 主数据库&#xff1a;192.168.0.43 从数据库&#xff1a;192.168.0.53 修改43主数据MySQL数据库安装不过多的介绍了&#xff1a;必须保证2个数据库的版本一致。主数据库&#xff1a;192.168.0.43从数据…

悲观锁定时如何避免可怕的死锁-以及Java 8的一些用法!

有时您根本无法避免&#xff1a;通过SQL进行悲观锁定。 实际上&#xff0c;当您要在共享的全局锁上同步多个应用程序时&#xff0c;它是一个很棒的工具。 有些人可能认为这是在滥用数据库。 如果可以解决您遇到的问题&#xff0c;我们认为可以使用您拥有的工具。 例如&#xf…

object - c 函数的值

函数名说明int rand()随机数生成。&#xff08;例&#xff09;srand(time(nil)); //随机数初期化int val rand()%50; //0&#xff5e;49之间的随机数int abs(int a)整数的绝对值&#xff08;例&#xff09;int val abs(-8); →8※浮点数的时候用fabs。double fabs(double …

xshell 秘钥连接_如何使用PuTTY和xshell 分别远程连接linux,并配置秘钥认证

使用PuTTY 连接并配置密钥认证第一步&#xff1a;下载PuTTY下载 .zip 64位的电脑 32位的putty也能用第二步&#xff1a;配置基本信息打开 PuTTY端口默认是22 (端口是可以改的)ip 地址如果忘记&#xff0c;ifconfig 查看一下Load >Open输入登录名 密码即可完成登录若出现上…

滨河新区(黄河楼)夜景

转载于:https://www.cnblogs.com/ysx4221/p/3454517.html

使用Junit测试名称

命名测试 在创建Junit测试时&#xff0c;通常没有实际使用该方法的名称。 Junit运行程序使用反射来发现测试方法&#xff0c;并且从版本4开始&#xff0c;您不再被限制以test开始方法的名称。 测试方法的名称用于文档目的。 人们遵循不同的风格。 您可以使用给定的given_Somet…

java 门面模式_Java门面模式

一、简介隐藏系统的复杂性&#xff0c;对外提供统一的访问入口&#xff0c;外部系统访问只通过此暴露出的统一接口访问。是一种结构型模式。封装子系统接口的复杂性&#xff0c;提供统一的对外接口&#xff0c;能够使子系统更加简单的被使用。二、结构及使用场景如上所示&#…

摘成功道路上容易被忽视的5项技能

本文摘自《电子工程师专辑》&#xff0c;来源&#xff1a;http://forum.eet-cn.com/FORUM_POST_10008_1200257568_0.HTM。 人人都渴望成功&#xff0c;在通往成功的道路上&#xff0c;少不了技能和运气&#xff0c;运气往往难以受人控制&#xff0c;技能却能好好把握&#xff0…

selenium java测试_java+selenium 自动化测试

在项目上使用自动化测试&#xff0c;是为了跑主流程的回归测试&#xff0c;提高测试效率&#xff0c;在每个测试版本中把主要的精力放在发版内容新增的需求中&#xff1b;根据项目的功能模块&#xff0c;把业务主流程和使用频率高的功能抽取出来进行自动化测试&#xff0c;作为…