怎样在Linux系统的服务器上完成对数据库信息的备份求大神帮助

怎样在Linux系统的服务器上完成对数据库信息的备份求大神帮助,第1张

这个严格的说和系统无关 大部分数据库备份都是由数据库本身提供的 哪怕是你已经掌握的mysql 比如oracle 最简单的备份 exp scott/tiger file=empdmp log=emplog tables=emp rows=yes indexes=no exp scott/tiger file=empdmp tables=(emp,dept) 最简单的恢复 imp scott/tiger file=empdmp full=yes imp scott/tiger file=empdmp fromuser=scott touser=scott tables=dept 实际应用中 数据库备份复杂的多 分为运行中备份 就是热备份 或者离线备份 大型生产环境 数据库往往和集群相关联 备份的过程也往往由集群软件套用 比如oracle db2经常和veritas的集群一起用 备份也就必须在veritas在操作

如果文件的量不大,其实可以使用光储存来进行备份,一般只需要备份/root、/home目录和/var目录的文件,直接刻在光盘上保存就行,如果出现了什么系统问题,只要重装系统时选择安装的软件和上次一样,再把这些目录在root用户下覆盖即可回复原装。可以使用可擦写盘,保管妥善时,两张盘可以使用一年。

如果是大量大文件,推荐使用RAID的硬盘组合,使用Ext2/3文件系统加上RAID能防止数据丢失,如果发现丢失,80%以上可以恢复(如果不是坏超过一半硬盘,则基本可以全部恢复。)当然也可以根据实际情况选择硬盘备份或者磁带备份。

同时还有一种增量备份方式,就是第一次把所有的文件全备份了,然后每次只备份更改的文件,这样需要的劳动小,但是要求每一环都不能出问题。

详情可以在http://wwwcnfavorcn进行查找和咨询

其实跟windows是一样的

简单的软备份方法就是使用mysql命令: mysqldump -u 用户名 -p 密码 -all-databases > /home/mysql/baksql

不过你可以做成shell脚本,然后在crontab 中定时执行,这个方法在数据量少时比较好使

如果你的数据比较重要,又多建议使用集群+硬件RAID1,0来保障服务

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

1mysqllmp命令

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

使用mysqlmp进行备份非常简单,如果要备份数据库”db_backup”,使用命令:

#mysqlmp_u-pphpbb_db_backup/backups/mysql/db_backup2008-1-6sql

还可以使用gzip命令对备份文件进行压缩:

#mysqlmpdb_backup|gzip/backups/mysql/db_backup2008-1-6sqlgz(备份后生成的sql不含建库语句!)

只备份一些频繁更新的数据库表:

##mysqlmpsample_dbarticlescommentslinks/backups/mysql/sample_dbart_comm_lin2008-1-6sql

上面的命令会备份articles,comments,和links三个表。

恢复数据使用命令:

#mysql_u-pdb_backup/backups/mysql/db_backup2008-1-6sql

注意使用这个命令时必须保证数据库正在运行。

2使用SOURCE语法

其实这不是标准的SQL语法,而是mysql客户端提供的功能,例如:

#SOURCE/tmp/db_namesql;

这里需要指定文件的绝对路径,并且必须是mysqld运行用户(例如nobody)有权限读取的文件。

3备份

只能用于备份MyISAM,并且只能运行在linux和Unix和NetWare系统上。支持一次性拷贝多个数据库,同时还支持正则表达。以下是几个例子:

#-h=localhost-u=goodcjh-p=goodcjhdb_name/tmp

(把数据库目录db_name拷贝到/tmp下)

注意,想要使用,必须要有SELECT、RELOAD(要执行FLUSHTABLES)权限,并且还必须要能够有读取datadir/db_name目录的权限。

还原数据库方法:

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

#/bin/rm-rf/mysql-backup///old

关闭mysql服务器、复制文件、查询启动mysql服务器的三个步骤:

#/etc/initd/mysqldstop

StoppingMySQL:[OK]

#cp-af/mysql-backup////var/lib/mysql/

#/etc/initd/mysqldstart

StartingMySQL:[OK]

#chown-Rnobody:nobody/usr/local/mysql/data/(将db_name目录的属主改成mysqld运行用户)

二、使用网络备份

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

(1)修改/etc/exports,增加共享目录

/export/home/sunky19216814(rw)

/export/home/sunky1(rw)

/export/home/sunky2linux-client(rw)

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样在Linux系统的服务器上完成对数据库信息的备份求大神帮助

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情