当前位置:首页 » 数据仓库 » linux备份数据库到另外一个服务器
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

linux备份数据库到另外一个服务器

发布时间: 2022-06-01 20:48:57

A. Linux服务器双机热备详细过程

双机热备份(Hot
Standby)是一种软硬件相结合的高可靠性应用方案。双机热备系统由两台独立的服务器以及相应的控制软件构成,两台服务器在网络中表现为单一的系统,对外表现为一个独立的网络IP,并以单一系统的模式进行控制和管理。该系统将两台服务器的数据和运行状态(包括硬盘数据和内存数据)进行镜像,可以实现两台服务器之间的热备份,并能够做到无缝切换,从而对外提供稳定可靠的服务,实现双机系统的高可用性解决方案。
1.1.2 功能概述
双机热备份系统由相应的应用软件进行控制,操作系统和应用程序安装在两台服务器的系统盘上。每一台服务器分配一个固定的IP地址,此外还指定了一个独立IP地址作为集群IP(cluster
IP),该IP是双机系统对外提供服务的接口。两台服务器一台成为主节点(Primary
Server),另一台成为从节点(Standby
Server),主节点与从节点之间保持固定时间间隔的心跳信号,通过心跳信号实现两个对等系统之间的周期性的握手,从而能够监视对方的运行状态,进行主机及网络的故障检测。
在系统正常情况下,主节点占用系统资源并运行所有的服务,为信息系统提供支持,从节点通过心跳信号监视主节点的运行情况。一旦主节点发生故障(如主机故障,网络故障,软件故障等),从节点就会自动接管(Take
Over)主节点的资源和服务,继续支持信息的运营,从而保证整个双机系统能够不间断的运行(Non-Stop)。主节点在恢复运行后,又可以自动获取资源并取代从节点。

在集群系统的实现方案中双机热备份系统是硬件配置最简单和价格最低廉的解决方案,通常镜像服务的硬件配置需要两台独立的服务器,每台服务器有独立的操作系统硬盘和数据存贮硬盘,每台服务器有提供网络连接功能的网卡,此外还可以有一对完成内部连接和数据镜像功能的网卡。
双机系统的两台服务器拥有共享的数据存储空间(可以是一个数据存储硬盘或一台专门的数据存储服务器)。任何一台服务器在运行服务时,从共享的数据存储空间内读取和存储数据。每台服务器的操作系统和应用程序文件存储在各自的本地存储空间上。
双机热备份系统采用内存镜像的技术,即把两台服务器的数据和运行状态(包括硬盘数据和内存数据)进行镜像。这个技术的优点是所有的应用程序和操作数据在两台服务器上镜像同步,当主节点出现故障时,从节点可以在几乎没有延迟的情况下接管主节点运行的服务,从而实现无缝切换和热备份。该技术的缺点是,由于两台服务器的内存完全一致,当由于系统应用程序带有缺陷而导致系统宕机时,两台服务器会同步宕机。也可以在双机系统中使用第三方生产的磁盘阵列柜,在磁盘阵列柜中安装有磁盘阵列控制卡,阵列柜可以直接将柜中的硬盘配置成为逻辑盘阵。该结构不采用内存镜像技术,因此需要有一定的切换时间,同时由于所有的数据全部存贮在磁盘阵列柜中,当主节点出现故障时,从节点接替主节点,从磁盘阵列柜中读取数据,所以不会产生数据不同步的问题。由于这种方案不需要网络镜像同步,因此这种集群方案服务器的性能要比镜像服务器结构高出很多。双机热备份系统的两台服务器通过内部局域网进行连接,通过周期性的心跳信号保持通信和进行相互监视。两台服务器之间可以采用多种连接方式,可以使用串口线,也可以通过以太网ethernet进行连接,还可以采用并存的多种连接方式实现两台主机的多重互连。如果双机系统有冗余连接,在第一条通信路径失效的情况下,控制软件可以尝试使用第二条通信路径进行连接。因此,为了避免不必要的失效切换,最好建立两种以上独立的物理路径,使用至少两种心跳。双机热备份系统具有配置简单,使用方便,价格低廉等诸多优点,但由于镜像服务器需要采用网络
方式镜像数据,通过镜像软件实现数据的同步,因此需要占用网络服务器的CPU及内存资源,造成服务器的性能有所降低。

本方案仅讨论Redhat
Linux系统下的双机热备份系统的实现,使用的双机控制软件是Linux-HAheartbeat。因此,除了安装操作系统及相关的应用服务程序之外,还需要安装heartbeat控制软件。通过对heartbeat软件的配置,可以把两台服务器分别指定为主节点和从节点,指定心跳信号的时间间隔,指定cluster
IP、子网掩码、广播地址、鉴权方式,还可以设置heartbeat启动的服务,该服务最终由双机系统通过cluster
IP对外提供。
Heartbeat可以最大限度地保护用户端的应用连续性。用户的硬件资源(如网卡),软件资源(如操作系统、数据库管理系统、数据库应用系统、电子邮件系统等)均能处于heartbeat容错软件的保护之下,当这些被保护的资源出现技术故障时, heartbeat容错软件可以随时实施系统资源的切换。因此,heartbeat真正实现了用户硬件或是软件资源发生故障时系统及应用层上的在线热切换。
Heartbeat软件的特点有:
不需增加额外硬件资源,纯软件方式实现双机容错,并且对双机无硬件配置要求。
可支持DB2,Notes、Exchange、sql
Server、Sybase、Informix、Oracle
、SAP等多种系统的应用层热切换。支持共享磁盘阵列柜和内存镜像等多种方式,给用户提供了选择上的灵活性,同时也能适应各种机型、网络结构、软件平台及应用系统。
占用系统资源较少,不增加网络负荷,并且不会干扰具体应用程序的运行和操作。
真正实现无人值守,全自动地实现系统资源和应用服务的切换。

方案说明
服务器Server
A和Server
B构成双机热备份系统的两台主机,并且分别作为主节点(Primary
Server)和从节点(Standby
Server)。两台主机均运行Linux-HA
heartbeat,该软件成为双机热备系统的控制程序。
两台主机通过串口线、以太网等多种方式进行连接,传送数据和心跳信号,并互相进行状态监视。可以只使用一种连接方式(如以太网连接),但是多种连接方式下的冗余路径可以保证双机连接的可靠性和服务质量。
数据库服务器或磁盘阵列柜是专门的数据存储和共享设备,两台服务器在运行时,均从该设备中读取和存储数据。这种方式可以有效地提高数据传输效率,提高双机热备服务器的系统性能,并且能够保证两台服务器之间的数据同步。

双机备份系统有两种配置方式,分别是“基于系统切换的双机系统”和“基于系统镜像的双机系统”,二者的区别是:
基于系统切换的双机系统仅仅把两台服务器的硬盘数据进行镜像,在主节点失效的情况下,从节点将进行系统一级的切换。该方式不能实现无缝切换,实现的是冷备份。
基于系统镜像的双机系统把两台服务器的硬盘数据和内存数据都进行镜像。为保证完全的内存镜像,两台服务器之间需通过专用连接网段实时地保持一个连续的、双向的镜像进程,该进程确保两台服务器之间的数据同步。一旦故障发生,无论任何一台服务器失效,失效服务器上的数据和应用,将立即切换到另一台服务器上,从而使用户在没有中断的情况下可以继续使用双机系统提供的服务。该方式能够做到无缝切换,实现的是热备份。
本方案描述的heartbeat双机热备份系统是一种基于系统镜像的双机系统,实现方法是,主节点在出现故障的情况下,集群IP地址无缝地切换到从节点,从而客户机对服务器的访问可以由从节点来支持。但是两台服务器之间并没有镜像进程完成彻底的内存镜像,因而主节点在故障时所运行的数据信息不能切换到从节
点,造成数据丢失以及服务中断。所以该方案不是严格意义上的系统镜像,实现的是服务一级的切换,并不能实现实时数据的切换。

B. linux 异地备份(ftp)

50 15 * * * ftp -i 10.11.68.157
ftp可能有问题,一般写ftp的绝对目录

还有你怎么不把,ftp和.netrc合并,做一个文件/home/oracle/ftpback,如:
#!/bin/sh
/usr/bin/ftp machine 10.11.68.157 -u oracle -p oracle
macdef init
bin
lcd /tmp
cd /tmp
mput file.tar
bye


crontab -e
增加内容如下:
50 15 * * * ./home/oracle/ftpbak

C. 怎样将远程的linux服务器上的mysql数据库备份到本地的linux服务器上,我是新手!

如果允许外网IP直接连接数据库的话,可以使用SQLyog这样的工具来进行备份,如果不支持远程连接的话,可以装个phpmyadmin来进行备份。

D. linux怎么备份数据库

一、 使用mysql相关命令进行简单的本地备份

1 mysqllmp命令

mysqlmp 是采用SQL级别的备份机制,它将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。

使用 mysqlmp进行备份非常简单,如果要备份数据库” db_backup ”,使用命令:
#mysqlmp –u -p phpbb_db_backup > /usr/backups/mysql/db_backup2008-1-6.sql
还可以使用gzip命令对备份文件进行压缩:
#mysqlmp db_backup | gzip > /usr/backups/mysql/ db_backup2008-1-6.sql.gz (备份后生成的sql不含建库语句!)
只备份一些频繁更新的数据库表:
## mysqlmp sample_db articles comments links > /usr/backups/mysql/sample_db.art_comm_lin.2008-1-6.sql
上面的命令会备份articles, comments, 和links 三个表。

恢复数据使用命令:
#mysql –u -p db_backup </usr/backups/mysql/ db_backup2008-1-6.sql
注意使用这个命令时必须保证数据库正在运行。

2 使用 SOURCE 语法

其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:
# SOURCE /tmp/db_name.sql;
这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件。

3 mysqlhot备份

mysqlhot 只能用于备份 MyISAM,并且只能运行在 linux 和Unix 和 NetWare 系统上。mysqlhot 支持一次性拷贝多个数据库,同时还支持正则表达。以下是几个例子:
#mysqlhot -h=localhost -u=goodcjh -p=goodcjh db_name /tmp
(把数据库目录 db_name 拷贝到 /tmp 下)
注意,想要使用 mysqlhot,必须要有 SELECT、RELOAD(要执行 FLUSH TABLES) 权限,并且还必须要能够有读取 datadir/db_name 目录的权限。

还原数据库方法:

mysqlhot 备份出来的是整个数据库目录,使用时可以直接拷贝到 mysqld 指定的 目录 (在这里是 /usr/local/mysql/data/)目录下即可,同时要注意权限的问题,另外首先应当删除数据库旧副本如下例:

# /bin/rm -rf /mysql-backup/**//*old
关闭mysql 服务器、复制文件、查询启动mysql服务器的三个步骤:
# /etc/init.d/mysqld stop
Stopping MySQL: [ OK ]
# cp -af /mysql-backup/**//* /var/lib/mysql /
# /etc/init.d/mysqld start
Starting MySQL: [ OK ]
#chown -R nobody:nobody /usr/local/mysql/data/ (将 db_name 目录的属主改成 mysqld 运行用户)
二、使用网络备份

将MYSQL数据放在一台计算机上是不安全的,所以应当把数据备份到局域网中其他Linux计算机中。假设Mysql服务器IP地址是:192.168.1.3。局域网使用Linux的远程计算机IP地址是192.168.1.4;类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。linux系统NFS服务端配置方法如下:

(1)修改 /etc/exports,增加共享目录
/export/home/sunky 192.168.1.4(rw)
/export/home/sunky1 *(rw)
/export/home/sunky2 linux-client(rw)

E. linux自动备份网站和数据库,到另外服务器上,为当前用户创建定时任务

linux自动备份网站和数据库,到另外服务器上,为当前用户创建定时任务两台服务器111,和117服务器,每天完成111服务器上网站和数据库自动备份到117服务器上1:我的111服务器上是当前用户:sxA:
查看当前用户的计划任务:crontab
-l是查看当前用户的任务用
vi
crontab
-e
是为sxw用户创建一个计划任务第一行:每天3点运行/home/sxw/rsync201.sh
shell脚本,第二行:和第三行是每天下午7点运行tar包,gaokaotong和phpcms文件第三行:每天7点22分运行/homesxw/back_up.sh
shell脚本,注意:这里是当前用户sxw,所以要shell脚本路径要有用户sxw权限,在这里/home/sxw/back_up
shell脚本,是当前用户sxw用户的家目录。B:
111服务器上/home/sxw/back_up.sh脚本code:-bash-3.2$
vim
/home/sxw/back_up.sh#!/bin/shecho
开始备份数据库mysqlmp
-u
jeecms
-pjeecms1234
gktcms
>
gktcms.sqlmysqlmp
-u
jeecms
-pjeecms1234
phpcms
>
phpcms.sqlecho
备份数据库完成,复制到117服务器端scp
-P
10022
gktcms.sql
[email protected]:/home/zkscp
-P
10022
phpcms.sql
[email protected]:/home/zkscp
-r
-P
10022
/opt/www/www2/phpcms.tar.gz
[email protected]:/home/zk/scp
-r
-P
10022
/opt/www/www2/gaokaotong.tar.gz
[email protected]:/home/zk/echo
发送完成C:
还要在111上做ssh信任,这个可参照ssh资料。很简单,只需要建立两个密钥。2:
117服务器上/homezk/自动就会多出两个tar包文件,phpcms.tar.gz
和gaokaotong.tar.gz这里每天自动保存两个文件,phpcms.tar.gz

gaokaotong.tar.gz文件
这里做了一个shell脚本,保存前两天的文件,跟上述111服务器上的建立计划任务一样:A:
查看117的计划任务:
crontabl
-lB:
在查看/home/zk/back.sh
的shell编写code:[zk@DB2~]$
vi
/home/zk/back.sh#!/bin/shTARFILE=/home/zk/phpcms.tar.gzif
[
-f
$TARFILE
];then
mv
/home/zk/phpcms.tar.gz
/home/zk/phpcms_$(date
+%Y%m%d).tar.gz
#remove
date
file
DATE_B=$(date
-d2
day
ago
+%Y%m%d)
FILENAME=/home/zk/phpcms_$DATE_B.tar.gz
if
[
-f
$FILENAME
];then
rm
-rf
/home/zk/phpcms_$DATE_B.tar.gz
else
echo
没有可删除文件
fielse
echo
没有源文件fi~
结束。

F. linux下mysql怎么定时备份到另一台服务器

定时备份,就要选择一个空间充足的磁盘空间,避免出现因空间不足导致备份失败,数据丢失的恶果!
存储到当前磁盘这是最简单,却是最不推荐的;服务器有多块硬盘,最好是把备份存放到另一块硬盘上;有条件就选择更好更安全的存储介质;
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root 50G 46G 1.6G 97% /
tmpfs 1.9G 92K 1.9G 1% /dev/shm
/dev/sda1 485M 39M 421M 9% /boot
/dev/mapper/VolGroup-lv_home 534G 3.6G 503G 1% /home123456123456

2、创建备份目录:
上面我们使用命令看出/home下空间比较充足,所以可以考虑在/home保存备份文件

G. 如何快速将一台linux服务器上的数据转移到另一台linux服务器

最好考虑下负载和带宽别在上班高峰期搞这个会出现这样那样的问题scp文件.tar.gzroot@ip地址:/root/传到对端的根目录不过根目录没那么大就换个目录

H. linux服务器中如何登陆另一台Linux服务器中的Oracle数据库进行全库备份

dataguard,stream replication,goldengate.....
方法很多,看你具体需求了