精华内容
下载资源
问答
  • 我就遇到这种情况,如果将远程服务器的数据库备份到本地然后又从本地上传到另一台服务器,这样显然是不行的,因为一个项目的数据库是很大的,这样要弄到猴年马月。有一个简单的方法就是使用scp命令直接将data目录...

    我们在做项目的时候可能会遇到这种需求要将之前的服务器上的数据备份到一个新的数据库。我就遇到这种情况,如果将远程服务器的数据库备份到本地然后又从本地上传到另一台服务器,这样显然是不行的,因为一个项目的数据库是很大的,这样要弄到猴年马月。有一个简单的方法就是使用scp命令直接将data目录复制到另一台。

    scp命令的实际应用概述:
    (1) 复制文件:

    命令格式:

    scp local_file remote_username@remote_ip:remote_folder

    或者

    scp local_file remote_username@remote_ip:remote_file

    或者

    scp local_file remote_ip:remote_folder

    或者

    scp local_file remote_ip:remote_file

    第1,2个指定了用户名,命令执行后需要输入用户密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了文件名

    第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个指定了文件名

    (2) 复制目录:

    命令格式:

    scp -r local_folder remote_username@remote_ip:remote_folder

    或者

    scp -r local_folder remote_ip:remote_folder

    第1个指定了用户名,命令执行后需要输入用户密码;

    第2个没有指定用户名,命令执行后需要输入用户名和密码;

    从远程服务器复制到本地服务器:

    从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。

    实例1:从远处复制文件到本地目录

    命令:

    scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/

    实例1:从远处复制文件到本地目录

    命令:

    scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/

    说明:

    从192.168.120.204机器上的/opt/soft/的目录中下载nginx-0.5.38.tar.gz 文件到本地/opt/soft/目录中

    实例2:从远处复制到本地

    命令:

    scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/

    说明:

    从192.168.120.204机器上的/opt/soft/中下载mongodb 目录到本地的/opt/soft/目录来。

    实例3:上传本地文件到远程机器指定目录

    命令:

    scp /opt/soft/nginx-0.5.38.tar.gz root@192.168.120.204:/opt/soft/scptest

    说明:

    复制本地opt/soft/目录下的文件nginx-0.5.38.tar.gz 到远程机器192.168.120.204的opt/soft/scptest目录

    实例4:上传本地目录到远程机器指定目录

    命令:

    scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest

    如果只将data目录下的数据库复制到另一台,一定要将下面这个文件复制过去,因为这个文件种保存的是数据库表的数据。
    在这里插入图片描述
    需要注意的是,我们将data目录复制过去,需要修改文件的所在的组,它的拥有者和权限。因为我们复制过去的,默认是属于root用户的。这样我们不能以mysql的用户去操作它。
    在这里插入图片描述
    如上图所示,表结构也要全部修改!!!

    展开全文
  • 、概述: 备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制其它的...那么Linux如何实现将Mysql数据库自动从服务器A备份到服务器B呢? ...

    一、概述:
    备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。而对于一些网站、系统来说,数据库就是一切,所以做好数据库的备份是至关重要的!
    那么Linux如何实现将Mysql数据库自动从服务器A备份到服务器B呢?
    二、通过Linux的scp命令:用于Linux之间复制文件和目录。
    1、scp在建立连接中是需要密码认证的,所以我们第一步就是在服务器A上添加ssh公匙

    ssh-keygen -t rsa
    

    2、 结果: 会在用户目录~/.ssh/产生两个文件,id_rsa,id_rsa.pub
    3、 将id_rsa.pub文件拷贝到服务器B的/root/.ssh目录下,并命名authorized_keys,即

    scp /root/.ssh/id_rsa.pub root@10.1.1.2:/root/.ssh/authorized_keys
    

    这样从服务器A复制到服务器B就不需要密码了。
    三、编写备份数据库脚本,使得每天固定时间,自动对数据库进行备份
    bakmysql.sh

    #!/bin/bash
    #备份路径
    BACKUP=/www/backup/mysql
    #当前时间
    DATETIME=$(date +%Y-%m-%d)
    echo "===备份开始==="
    echo "备份文件存放于${BACKUP}/$DATABASE-$DATETIME.sql"
    #数据库地址
    HOST=localhost
    #数据库用户名
    DB_USER=root
    #数据库密码
    DB_PW=26324636
    #创建备份目录
    #[ ! -d "${BACKUP}/$DATETIME" ] && mkdir -p "${BACKUP}/$DATETIME"
    
    #后台系统数据库
    DATABASE=db_test
    echo $DATABASE-$DATETIME
    #mysqldump -u${DB_USER} -p${DB_PW} --single-transaction --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql
    mysqldump -h localhost  -u${DB_USER} -p${DB_PW}  ${DATABASE} >${BACKUP}/$DATABASE-$DATETIME.sql
    
    echo "===导出成功,开始传输==="
    #压缩成tar.gz包
    cd $BACKUP
    #tar -zcvf $DATETIME.tar.gz $DATETIME
    #备份到服务器B
    scp $DATABASE-$DATETIME.sql root@10.1.1.2:/www/backup/mysql
    #删除备份目录
    #rm -rf ${BACKUP}/$DATETIME
    
    #删除10天前备份的数据,这边可以自行更改
    #find $BACKUP -mtime +10 -name "*.sql" -exec rm -rf {} \;
    echo "===数据库备份到服务器成功==="
    

    将sh脚本文件放到服务器A任一位置,我这边放在了/www/backup下
    四、脚本编写完,利用Linux系统的crontab定时任务,去实现固定时间自动执行脚本

    crontab -e #编辑
    #输入以下代码
    59 23 * * * /www/backup/bakmysql.sh #通过vi命令编辑insert,表示每天23:59自动执行代码
    :wq! #保存退出
    service crond restart #重启服务,如果是ubuntu系统,则是cron
    

    Linux相关命令:

    crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建
    crontab –l : 显示 crontab 文件
    crontab -r : 删除 crontab 文件
    crontab -ir : 删除 crontab 文件前提醒用户
    
    #在 12:01 a.m 运行,即每天凌晨过一分钟。这是一个恰当的进行备份的时间,因为此时系统负载不大。
    1 0 * * * /root/bin/backup.sh
    
    #每个工作日(Mon – Fri) 11:59 p.m 都进行备份作业。
    59 11 * * 1,2,3,4,5 /root/bin/backup.sh
    
    # 每5分钟运行一次命令
    */5 * * * * /root/bin/check-status.sh 
    
    #每个月的第一天 1:10 p.m 运行
    10 13 1 * * /root/bin/full-backup.sh 
    
    #每个工作日 11 p.m 运行。
    0 23 * * 1-5 /root/bin/incremental-backup.sh
    

    PS:务必要养成备份的好习惯啊,不然自己留下的坑,哭着也要填完。。。

    展开全文
  • -d 指备份的路径,即备份到服务器的哪里 备份完成后打卡备份目录即可看到文件 3. 恢复 最关键的恢复命令: 参数和上面的意义差不多,用大白话解释一下 假设我们要备份数据库服务器叫001,要把备

    1. 安装Mydumper

    在这里插入图片描述
    https://www.cnblogs.com/keme/p/11679446.html 安装及使用教程

    2. 备份

    最关键的备份命令:
    在这里插入图片描述-u 指用户名
    -p 指用户密码
    -P 指目标服务器端口(即要备份的数据库端口)
    -h 指要备份的数据库的ip地址
    -B 指要备份的数据库名
    -d 指备份的路径,即备份到本服务器的哪里
    备份完成后打卡备份目录即可看到文件
    在这里插入图片描述

    3. 恢复

    最关键的恢复命令:
    在这里插入图片描述
    参数和上面的意义差不多,用大白话解释一下
    假设我们要备份的数据库服务器叫001,要把备份放到002服务器的数据库上
    -u 002库的用户名
    -p 002库的密码
    -P 002库服务器端口(即要备份的数据库端口)
    -h 002库的ip地址
    -B 002数据库名
    -d 指备份文件的路径

    展开全文
  • mysql数据库自动备份到另一台服务器

    千次阅读 2017-08-08 17:03:23
    服务器:192.168.1.112192.168.1.111 先配置免密登陆 ssh-keygen ssh-copy-id 192.168.1.111 shell脚本如下 #!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # # Last ...

    CentOS 6.7

    服务器:192.168.1.112到192.168.1.111

    主要分以下三步:

    1.先配置免密登陆

    ssh-keygen
    ssh-copy-id 192.168.1.111


    2.shell脚本如下

    #!/bin/sh
    # mysql_backup.sh: backup mysql databases and keep newest 5 days backup.
    #
    # Last updated: 2017年8月8日
    # ----------------------------------------------------------------------
    # This is a free shell script under GNU GPL version 2.0 or above
    # Copyright (C) 伟岸
    # mysq数据备份
    # ----------------------------------------------------------------------
    # mysql地址:/usr/local/mysql/
    # mysql启动命令:service mysqld start
    # -----------------------------


    #declare
    MKDIR="/bin/mkdir"
    RM="/bin/rm"
    MV="/bin/mv"
    GZIP="/bin/gzip"


    #file path
    db_user="root"
    db_passwd="root"
    db_host="localhost"
    # 备份目录
    backup_dir="/home/mysql/mybackup"
    # 获取当前时间
    time="$(date +"%Y-%m-%d")"
    # mysql, mysqldump and some other bin's path
    MYSQLDUMP="/usr/local/mysql/bin/mysqldump"
    # check the directory for store backup is writeable
    test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0


    # 要备份数据库名称
    db="test"
    $MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | $GZIP -9 > "$backup_dir/$time.$db.gz"


    #发送备份文件到另一台服务器上
    scp -r $backup_dir/$time.$db.gz 192.168.1.111:/home/mysql/mysqlbackup/
    exit 0;

    3.写crontab脚本(不懂安装百度一下)



    展开全文
  • 从AB服务器 1、下面这是我的 automysq_beifen.sh文件 变量的声明和等号之间不能有空格 str=$(date +%Y%m%d_%H%M) mysqldump -uroot -p密码 >>/usr/mysql_data/my_data/test${str}.sql sleep 3...
  • Linux-定时脚本将一台服务器上的mysql数据库自动备份到另一台服务器数据库中 有两台服务器,一台正式服务器A,一台测试服务器B,现需要将正式服务器A中的数据库每天备份到测试服务器B,提高数据库的容灾性以及...
  • 台服务器一台正式服务器A,一台测试服务器B,现需要将正式服务器A中的数据库每天备份到测试服务器B。 1.从正式服务器A中导出需要备份数据库 使用mysqldump指令导出数据库文件 /usr/sbin/mysqldump -u root ...
  • 主要考虑数据库安全,可以通过此方式将数据备份到其他服务器
  • @echo off echo ========================...echo Windows环境下Oracle数据库备份脚本 echo 1. 使用当前日期命名备份文件。 echo 2. 自动删除3天前的备份。 echo ===========================================...
  • 1:异地备份了把原有服务器数据放在另外个位置,避免些物理损害。 比把数据刻录光盘和原始数据放同房间了房间失火了备份数据也没有了要放另外地方避免了 就是备份的意义。 2:异地备份可以集中管理备份文件。 二:...
  • 定时备份SQL SERVER的数据库并且把备份文件复制另外一台服务器保存
  • 1:异地备份了把原有服务器数据放在另外个位置,避免些物理损害。 比把数据刻录光盘和原始数据放同房间了房间失火了备份数据也没有了要放另外地方避免了 就是备份的意义。 2:异地备份可以集中管理备份文件。...
  • 拷贝数据库到另外一台服务器

    千次阅读 2015-09-14 13:46:42
    1、备份要拷贝的数据库(步骤省略) 2、在另外一台服务器上设置共享文件夹(步骤省略) ...(2)出现另外一台服务器的共享磁盘或文件夹,把备份的.bak文件拷贝该共享文件夹下 4、使用拷贝过来的.bak文件还原数据库
  • 回头看看自己就这么个人埋头开发了4个月,以及手上拿的与自己付出完全不成正比的微薄工资,觉得自己真tmd的悲剧!或许这就是应届毕业生的命吧...恩,现在我已经不是应届毕业生了...现在项目做完了,我也尽了...
  • 3. 启动二台服务器的命名管道服务如下图 4. 登录数据库服务器时都必须选择命名管道如下图 选项 选择命名管道,确定 新建发布(在发布服务器上操作) 1, 新建发布,如下图: ...
  • 次写博客,请多多指教 1、把原数据库的数据导出成dmp数据格式的文件; exp ZGY/ZGY@orcl file=I:/20180422.dmp owner=ZGY ; ZGY:用户名 ZGY:密码 orcl:SID file:导出文件的位置 owner:导出的...
  • 下载MySQL Tools for 5.0这个工具,连接服务器上的mysql生产数据库,然后进入界面,选择backup,设置基本的配置,选择个保存路径,就可以实现备份,创建过程如图过程:
  • 其实跟从mysql数据库迁移Oracle数据库个套路.O(∩_∩)O~ 听起来,是不是很简单,其实就是很简单!下边我就讲一下具体实现的细节流程:2.实现步骤:第步:在目标数据库中创建表空间和用户这点我再次向对Orac
  • 主要包括自定义数据库主机和备份路径,支持备份多个数据库,无论多少个数据库,可以次完成备份。可以控制是否开启过期备份删除,可以自定义过期时间等。并且增加了更加友好的提示。 备份工具用法: 1.将...
  • 写一个copy的程序,每小时执行一次copy任务,把bak文件copy到另一台机器 利用任务计划自动删除指定日期的SQLServer备份文件 我试过直接在共享文件夹生成备份文件,但是提示找不到路径,用程序copy就可以,所以才...
  • 数据库复制到另一台电脑上

    千次阅读 2020-07-24 10:16:19
    1)先将原数据库导出,在当前目录生成sql文件。 mysqldump -u root -p test_db >...3)在新服务器上创建个新数据库 4)进入新创建的数据库,导入sql文件 source /root/Desktop/test_db.sql ...
  • 3.与数据库所在服务器建立连接 1)登陆系统用户root 2)切换系统用户:输入su - oracle,切换系统用户为oracle(注意,“-”和“oracle”中间有个空格) 3)连接数据库: 输入sqlplus /nolo...
  • 将电脑上的sqlserver数据库迁移到另一台电脑

    万次阅读 多人点赞 2018-10-26 21:02:23
    最近在做一个课程设计,我一个同学负责数据库创建。他在他电脑上建完我要拿...这里把你需要的数据库(如jjj)的两个相关文件拷贝到另一台电脑上,这里注意,你最好还是要放到sqlserver的这个文件夹,放别的地方可能...
  • mysqldump2 “ mysqldump”备份工具的接口。 它可用于转储CMSMS数据库以进行备份或将数据传输到另一台服务器。 使用cmsms 2.2.15测试
  • 成功实现SQL Server 2000 数据库同步[一台服务器,一台动态IP的备份机],详细步骤说明。
  • 1、在一台服务器上安装Oracle 10g,安装的时候会设置一个密码,请记住,安装快好的时候,会有相关账号锁住的提示,请注意system账号不要被锁住。2、安装好后,用system和设置的密码登陆(PLSQL)3、将原来的数据库...
  • MySQLdump数据库复制到另一台机器

    千次阅读 2017-06-20 21:49:47
    2.11.4将MySQL数据库复制到另一台机器 在需要在不同架构之间传输数据库的情况下,您可以使用mysqldump创建一个包含SQL语句的文件。然后,您可以将文件传输到另一台机器,并将其作为输入提供给 mysql客户机。 ...
  • 现在很多公司都有ERP和OA,这些系统数据的安全尤为总要,数据备份是保障数据安全的重要手段,数据异地备份更是必不可少。那么,如何通过简单有效的方式,实现数据异地备份呢? 工具/原料 服务器:windows sever ...
  • 教你怎么把服务器上的数据库备份到本地计算机 declare @sql varchar(500) select @sql=’\192.168.2.73\TestFolder\’+’db‘+convert(varchar(10),getdate(),112) + substring(convert(varchar(10),getdate(),108)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 150,725
精华内容 60,290
关键字:

数据库备份到另一台服务器